Use Align for TFL::TransientStackAlignment
[llvm-core.git] / test / CodeGen / BPF / cc_ret.ll
blob73e3556c63ed12dc8f675f0aa62979602ce3ab20
1 ; RUN: llc < %s -march=bpfel | FileCheck %s
3 define void @test() #0 {
4 entry:
5 ; CHECK: test:
7 ; CHECK: call f_i16
8 ; CHECK: *(u16 *)(r1 + 0) = r0
9   %0 = call i16 @f_i16()
10   store volatile i16 %0, i16* @g_i16
12 ; CHECK: call f_i32
13 ; CHECK: *(u32 *)(r1 + 0) = r0
14   %1 = call i32 @f_i32()
15   store volatile i32 %1, i32* @g_i32
17 ; CHECK: call f_i64
18 ; CHECK: *(u64 *)(r1 + 0) = r0
19   %2 = call i64 @f_i64()
20   store volatile i64 %2, i64* @g_i64
22   ret void
25 @g_i16 = common global i16 0, align 2
26 @g_i32 = common global i32 0, align 2
27 @g_i64 = common global i64 0, align 2
29 define i16 @f_i16() #0 {
30 ; CHECK: f_i16:
31 ; CHECK: r0 = 1
32 ; CHECK: exit
33   ret i16 1
36 define i32 @f_i32() #0 {
37 ; CHECK: f_i32:
38 ; CHECK: r0 = 16909060
39 ; CHECK: exit
40   ret i32 16909060
43 define i64 @f_i64() #0 {
44 ; CHECK: f_i64:
45 ; CHECK: r0 = 72623859790382856 ll
46 ; CHECK: exit
47   ret i64 72623859790382856