xref: /aosp_15_r20/external/llvm/test/MC/Mips/instr-analysis.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o - \
2*9880d681SAndroid Build Coastguard Worker# RUN:   | llvm-objdump -d - | FileCheck %s
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Worker# CHECK:      foo:
5*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:        0:       0c 00 00 02     jal     8 <loc1>
6*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:        4:       00 00 00 00     nop
7*9880d681SAndroid Build Coastguard Worker#
8*9880d681SAndroid Build Coastguard Worker# CHECK:      loc1:
9*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:        8:       0c 00 00 06     jal     24 <loc3>
10*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:        c:       00 00 00 00     nop
11*9880d681SAndroid Build Coastguard Worker#
12*9880d681SAndroid Build Coastguard Worker# CHECK:      loc2:
13*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       10:       10 00 ff fd     b       -8 <loc1>
14*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       14:       00 00 00 00     nop
15*9880d681SAndroid Build Coastguard Worker#
16*9880d681SAndroid Build Coastguard Worker# CHECK:      loc3:
17*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       18:       10 43 ff fd     beq     $2, $3, -8 <loc2>
18*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       1c:       00 00 00 00     nop
19*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       20:       04 11 ff f9     bal     -24 <loc1>
20*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       24:       00 00 00 00     nop
21*9880d681SAndroid Build Coastguard Worker# CHECK-NEXT:       28:       08 00 00 04     j       16 <loc2>
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Worker  .text
24*9880d681SAndroid Build Coastguard Worker  .globl foo
25*9880d681SAndroid Build Coastguard Worker  .ent foo
26*9880d681SAndroid Build Coastguard Workerfoo:
27*9880d681SAndroid Build Coastguard Worker  jal loc1
28*9880d681SAndroid Build Coastguard Workerloc1:
29*9880d681SAndroid Build Coastguard Worker  jal loc3
30*9880d681SAndroid Build Coastguard Workerloc2:
31*9880d681SAndroid Build Coastguard Worker  b   loc1
32*9880d681SAndroid Build Coastguard Workerloc3:
33*9880d681SAndroid Build Coastguard Worker  beq $2, $3, loc2
34*9880d681SAndroid Build Coastguard Worker  bal loc1
35*9880d681SAndroid Build Coastguard Worker  j   loc2
36*9880d681SAndroid Build Coastguard Worker  .end foo
37