[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / X86 / tailcc-calleesave.ll
blob09685fb17cbaff58563b7b85cf5f78118802fb2c
1 ; RUN: llc -mcpu=core < %s | FileCheck %s
3 target triple = "i686-apple-darwin"
5 declare tailcc void @foo(i32, i32, i32, i32, i32, i32)
6 declare i32* @bar(i32*)
8 define tailcc void @hoge(i32 %b) nounwind {
9 ; Do not overwrite pushed callee-save registers
10 ; CHECK: pushl
11 ; CHECK: subl $[[SIZE:[0-9]+]], %esp
12 ; CHECK-NOT: [[SIZE]](%esp)
13   %a = alloca i32
14   store i32 0, i32* %a
15   %d = tail call i32* @bar(i32* %a) nounwind
16   store i32 %b, i32* %d
17   tail call tailcc void @foo(i32 1, i32 2, i32 3, i32 4, i32 5, i32 6) nounwind
18   ret void