[ARM] Split large truncating MVE stores
[llvm-complete.git] / test / CodeGen / AVR / calling-conv / c / return.ll
blob1d240b85a19d61d0e0ec1c3d346bfc934fabc488
1 ; RUN: llc < %s -march=avr | FileCheck %s
3 ; CHECK-LABEL: ret_i8
4 define i8 @ret_i8() {
5   ; CHECK: ldi r24, 64
6   ret i8 64
9 ; CHECK-LABEL: ret_i16
10 define i16 @ret_i16() {
11   ; CHECK:      ldi     r24, 0
12   ; CHECK-NEXT: ldi     r25, 4
13   ret i16 1024
16 ; CHECK-LABEL: ret_i32
17 define i32 @ret_i32() {
18   ; CHECK:      ldi     r22, 78
19   ; CHECK-NEXT: ldi     r23, 97
20   ; CHECK-NEXT: ldi     r24, 188
21   ; CHECK-NEXT: ldi     r25, 0
22   ret i32 12345678
25 ; CHECK-LABEL: ret_i64
26 define i64 @ret_i64() {
27   ; CHECK:      ldi     r18, 0
28   ; CHECK-NEXT: ldi     r19, 255
29   ; CHECK-NEXT: mov     r20, r18
30   ; CHECK-NEXT: mov     r21, r19
31   ; CHECK-NEXT: mov     r22, r18
32   ; CHECK-NEXT: mov     r23, r19
33   ; CHECK-NEXT: mov     r24, r18
34   ; CHECK-NEXT: mov     r25, r19
35   ret i64 18374966859414961920