1; RUN: llc -mtriple arm-unknown -global-isel %s -o - | FileCheck %s 2 3define void @test_void_return() { 4; CHECK-LABEL: test_void_return: 5; CHECK: bx lr 6entry: 7 ret void 8} 9 10define i8 @test_add_i8(i8 %x, i8 %y) { 11; CHECK-LABEL: test_add_i8: 12; CHECK: add r0, r0, r1 13; CHECK: bx lr 14entry: 15 %sum = add i8 %x, %y 16 ret i8 %sum 17} 18 19define i16 @test_add_i16(i16 %x, i16 %y) { 20; CHECK-LABEL: test_add_i16: 21; CHECK: add r0, r0, r1 22; CHECK: bx lr 23entry: 24 %sum = add i16 %x, %y 25 ret i16 %sum 26} 27 28define i32 @test_add_i32(i32 %x, i32 %y) { 29; CHECK-LABEL: test_add_i32: 30; CHECK: add r0, r0, r1 31; CHECK: bx lr 32entry: 33 %sum = add i32 %x, %y 34 ret i32 %sum 35} 36 37define i32 @test_many_args(i32 %p0, i32 %p1, i32 %p2, i32 %p3, i32 %p4, i32 %p5) { 38; CHECK-LABEL: test_many_args: 39; CHECK: add [[P5ADDR:r[0-9]+]], sp, #4 40; CHECK: ldr [[P5:r[0-9]+]], {{.*}}[[P5ADDR]] 41; CHECK: add r0, r2, [[P5]] 42; CHECK: bx lr 43entry: 44 %sum = add i32 %p2, %p5 45 ret i32 %sum 46} 47