xref: /aosp_15_r20/external/llvm/test/MC/Mips/nabi-regs.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# OABI (o32, o64) have a different symbolic register
2*9880d681SAndroid Build Coastguard Worker# set for the A and T registers because the NABI allows
3*9880d681SAndroid Build Coastguard Worker# for 4 more register parameters (A registers) offsetting
4*9880d681SAndroid Build Coastguard Worker# the T registers.
5*9880d681SAndroid Build Coastguard Worker#
6*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding \
7*9880d681SAndroid Build Coastguard Worker# RUN:   -mcpu=mips64r2 -arch=mips64 | FileCheck %s
8*9880d681SAndroid Build Coastguard Worker#
9*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding \
10*9880d681SAndroid Build Coastguard Worker# RUN:   -mcpu=mips64r2 -arch=mips64 -target-abi n32 | FileCheck %s
11*9880d681SAndroid Build Coastguard Worker#
12*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding \
13*9880d681SAndroid Build Coastguard Worker# RUN:   -mcpu=mips64r2 -arch=mips64 -target-abi n64 | FileCheck %s
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker    .text
16*9880d681SAndroid Build Coastguard Workerfoo:
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $4            # encoding: [0x02,0x04,0x80,0x20]
19*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a0
20*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $6            # encoding: [0x02,0x06,0x80,0x20]
21*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a2
22*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $7            # encoding: [0x02,0x07,0x80,0x20]
23*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a3
24*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $8            # encoding: [0x02,0x08,0x80,0x20]
25*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a4
26*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $9            # encoding: [0x02,0x09,0x80,0x20]
27*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a5
28*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $10           # encoding: [0x02,0x0a,0x80,0x20]
29*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a6
30*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $11           # encoding: [0x02,0x0b,0x80,0x20]
31*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$a7
32*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $12           # encoding: [0x02,0x0c,0x80,0x20]
33*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$t0
34*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $13           # encoding: [0x02,0x0d,0x80,0x20]
35*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$t1
36*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $14           # encoding: [0x02,0x0e,0x80,0x20]
37*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$t2
38*9880d681SAndroid Build Coastguard Worker# CHECK: add    $16, $16, $15           # encoding: [0x02,0x0f,0x80,0x20]
39*9880d681SAndroid Build Coastguard Worker    add $s0,$s0,$t3
40