Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / ARM / alloca-align.ll
blob6f5eb9d012da32f9384bde4055b029b1a3759a0f
1 ; RUN: llc -o - %s | FileCheck %s
2 target triple="arm--"
4 @glob = external global ptr
6 declare void @bar(ptr, ptr byval([20000 x i8]))
8 ; CHECK-LABEL: foo:
9 ; We should see the stack getting additional alignment
10 ; CHECK: sub sp, sp, #16
11 ; CHECK: bic sp, sp, #31
12 ; And a base pointer getting used.
13 ; CHECK: mov r6, sp
14 ; Which is passed to the call
15 ; CHECK: mov r0, r6
16 ; CHECK: bl bar
17 define void @foo(ptr %addr) {
18   %tmp = alloca [4 x i32], align 32
19   call void @bar(ptr %tmp, ptr byval([20000 x i8]) %addr)
20   ret void