Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / Mips / micromips-jal.ll
blob27a75a7cb531cbe12f1134e8f041555df59cb1ce
1 ; RUN: llc %s -mtriple=mipsel -mcpu=mips32r2 -mattr=micromips -filetype=asm \
2 ; RUN:   -relocation-model=static -o - | FileCheck %s
4 define i32 @sum(i32 %a, i32 %b) nounwind uwtable {
5 entry:
6   %a.addr = alloca i32, align 4
7   %b.addr = alloca i32, align 4
8   store i32 %a, ptr %a.addr, align 4
9   store i32 %b, ptr %b.addr, align 4
10   %0 = load i32, ptr %a.addr, align 4
11   %1 = load i32, ptr %b.addr, align 4
12   %add = add nsw i32 %0, %1
13   ret i32 %add
16 define i32 @main() nounwind uwtable {
17 entry:
18   %retval = alloca i32, align 4
19   %x = alloca i32, align 4
20   %y = alloca i32, align 4
21   %z = alloca i32, align 4
22   store i32 0, ptr %retval
23   %0 = load i32, ptr %y, align 4
24   %1 = load i32, ptr %z, align 4
25   %call = call i32 @sum(i32 %0, i32 %1)
26   store i32 %call, ptr %x, align 4
27   %2 = load i32, ptr %x, align 4
28   ret i32 %2
31 ; CHECK:    .text
33 ; CHECK:    .globl  sum
34 ; CHECK:    .type sum,@function
35 ; CHECK:    .set  micromips
36 ; CHECK:    .ent  sum
37 ; CHECK-LABEL: sum:
38 ; CHECK:    .end  sum
40 ; CHECK:    .globl  main
41 ; CHECK:    .type main,@function
42 ; CHECK:    .set  micromips
43 ; CHECK:    .ent  main
44 ; CHECK-LABEL: main:
46 ; CHECK:    jal sum
48 ; CHECK:    .end main