xref: /aosp_15_r20/external/llvm/test/CodeGen/AArch64/preferred-alignment.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=aarch64 -O0 < %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker; Function Attrs: nounwind
4*9880d681SAndroid Build Coastguard Workerdefine i32 @foo() #0 {
5*9880d681SAndroid Build Coastguard Workerentry:
6*9880d681SAndroid Build Coastguard Worker  %c = alloca i8, align 1
7*9880d681SAndroid Build Coastguard Worker; CHECK:	add	x0, sp, #12
8*9880d681SAndroid Build Coastguard Worker  %s = alloca i16, align 2
9*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT:	add	x1, sp, #8
10*9880d681SAndroid Build Coastguard Worker  %i = alloca i32, align 4
11*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT:	add	x2, sp, #4
12*9880d681SAndroid Build Coastguard Worker  %call = call i32 @bar(i8* %c, i16* %s, i32* %i)
13*9880d681SAndroid Build Coastguard Worker  %0 = load i8, i8* %c, align 1
14*9880d681SAndroid Build Coastguard Worker  %conv = zext i8 %0 to i32
15*9880d681SAndroid Build Coastguard Worker  %add = add nsw i32 %call, %conv
16*9880d681SAndroid Build Coastguard Worker  %1 = load i16, i16* %s, align 2
17*9880d681SAndroid Build Coastguard Worker  %conv1 = sext i16 %1 to i32
18*9880d681SAndroid Build Coastguard Worker  %add2 = add nsw i32 %add, %conv1
19*9880d681SAndroid Build Coastguard Worker  %2 = load i32, i32* %i, align 4
20*9880d681SAndroid Build Coastguard Worker  %add3 = add nsw i32 %add2, %2
21*9880d681SAndroid Build Coastguard Worker  ret i32 %add3
22*9880d681SAndroid Build Coastguard Worker}
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Workerdeclare i32 @bar(i8*, i16*, i32*) #1
25*9880d681SAndroid Build Coastguard Worker
26*9880d681SAndroid Build Coastguard Workerattributes #0 = { nounwind "no-frame-pointer-elim"="false" }
27*9880d681SAndroid Build Coastguard Workerattributes #1 = { "no-frame-pointer-elim"="false" }
28*9880d681SAndroid Build Coastguard Worker
29