[AArch64,ELF] Restrict MOVZ/MOVK to non-PIC large code model (#70178)
[llvm-project.git] / llvm / test / CodeGen / X86 / tailcall-calleesave.ll
blobed65f7963396cf2e26266014e2a3cec10524a6e0
1 ; RUN: llc -tailcallopt -mcpu=core < %s | FileCheck %s
3 target triple = "i686-apple-darwin"
5 declare fastcc void @foo(i32, i32, i32, i32, i32, i32)
6 declare ptr @bar(ptr)
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, ptr %a
15   %d = tail call ptr @bar(ptr %a) nounwind
16   store i32 %b, ptr %d
17   tail call fastcc void @foo(i32 1, i32 2, i32 3, i32 4, i32 5, i32 6) nounwind
18   ret void