llvm-6502/test/CodeGen/X86/stack-update-frame-opcode.ll
Eli Bendersky 61b057a6fd Test for r174446
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174464 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-05 23:31:48 +00:00

23 lines
551 B
LLVM

; RUN: llc -mtriple=x86_64-pc-linux < %s | FileCheck %s
; RUN: llc -mtriple=x86_64-pc-linux-gnux32 < %s | FileCheck -check-prefix=X32ABI %s
define i32 @bar(i32 %a) nounwind {
entry:
%arr = alloca [400 x i32], align 16
; In the x32 ABI, the stack pointer is treated as a 32-bit value.
; CHECK: subq $1608
; X32ABI: subl $1608
%arraydecay = getelementptr inbounds [400 x i32]* %arr, i64 0, i64 0
%call = call i32 @foo(i32 %a, i32* %arraydecay) nounwind
ret i32 %call
; CHECK: addq $1608
; X32ABI: addl $1608
}
declare i32 @foo(i32, i32*)