Home | History | Annotate | Download | only in X86
      1 ; RUN: llc -march=x86 -tailcallopt -mcpu=core < %s | FileCheck %s
      2 
      3 target triple = "i686-apple-darwin"
      4 
      5 declare fastcc void @foo(i32, i32, i32, i32, i32, i32)
      6 declare i32* @bar(i32*)
      7 
      8 define fastcc 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 fastcc void @foo(i32 1, i32 2, i32 3, i32 4, i32 5, i32 6) nounwind
     18   ret void
     19 }
     20