[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Transforms / ArgumentPromotion / tail.ll
blob93de60afe91553763661df18d601cd697d094561
1 ; RUN: opt %s -argpromotion -S -o - | FileCheck %s
2 ; RUN: opt %s -passes=argpromotion -S -o - | FileCheck %s
3 ; PR14710
5 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
7 %pair = type { i32, i32 }
9 declare i8* @foo(%pair*)
11 define internal void @bar(%pair* byval %Data) {
12 ; CHECK: define internal void @bar(i32 %Data.0, i32 %Data.1)
13 ; CHECK: %Data = alloca %pair
14 ; CHECK-NOT: tail
15 ; CHECK: call i8* @foo(%pair* %Data)
16   tail call i8* @foo(%pair* %Data)
17   ret void
20 define void @zed(%pair* byval %Data) {
21   call void @bar(%pair* byval %Data)
22   ret void