xref: /aosp_15_r20/external/llvm/test/MC/Mips/set-at-directive.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips32r2 | \
2*9880d681SAndroid Build Coastguard Worker# RUN: FileCheck %s
3*9880d681SAndroid Build Coastguard Worker# Check that the assembler can handle the documented syntax
4*9880d681SAndroid Build Coastguard Worker# for ".set at" and set the correct value.
5*9880d681SAndroid Build Coastguard Worker    .text
6*9880d681SAndroid Build Coastguard Workerfoo:
7*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$1
8*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $1, 1
9*9880d681SAndroid Build Coastguard Worker# CHECK: addu $1, $1, $2
10*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $2, 0($1)
11*9880d681SAndroid Build Coastguard Worker    .set    at=$1
12*9880d681SAndroid Build Coastguard Worker        lw      $2, 65536($2)
13*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$2
14*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $2, 1
15*9880d681SAndroid Build Coastguard Worker# CHECK: addu $2, $2, $1
16*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($2)
17*9880d681SAndroid Build Coastguard Worker    .set    at=$2
18*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
19*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$3
20*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $3, 1
21*9880d681SAndroid Build Coastguard Worker# CHECK: addu $3, $3, $1
22*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($3)
23*9880d681SAndroid Build Coastguard Worker    .set    at=$3
24*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
25*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$4
26*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $4, 1
27*9880d681SAndroid Build Coastguard Worker# CHECK: addu $4, $4, $1
28*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($4)
29*9880d681SAndroid Build Coastguard Worker    .set    at=$a0
30*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
31*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$5
32*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $5, 1
33*9880d681SAndroid Build Coastguard Worker# CHECK: addu $5, $5, $1
34*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($5)
35*9880d681SAndroid Build Coastguard Worker    .set    at=$a1
36*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
37*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$6
38*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $6, 1
39*9880d681SAndroid Build Coastguard Worker# CHECK: addu $6, $6, $1
40*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($6)
41*9880d681SAndroid Build Coastguard Worker    .set    at=$a2
42*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
43*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$7
44*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $7, 1
45*9880d681SAndroid Build Coastguard Worker# CHECK: addu $7, $7, $1
46*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($7)
47*9880d681SAndroid Build Coastguard Worker    .set    at=$a3
48*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
49*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$8
50*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $8, 1
51*9880d681SAndroid Build Coastguard Worker# CHECK: addu $8, $8, $1
52*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($8)
53*9880d681SAndroid Build Coastguard Worker    .set    at=$8
54*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
55*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$9
56*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $9, 1
57*9880d681SAndroid Build Coastguard Worker# CHECK: addu $9, $9, $1
58*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($9)
59*9880d681SAndroid Build Coastguard Worker    .set    at=$9
60*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
61*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$10
62*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $10, 1
63*9880d681SAndroid Build Coastguard Worker# CHECK: addu $10, $10, $1
64*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($10)
65*9880d681SAndroid Build Coastguard Worker    .set    at=$10
66*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
67*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$11
68*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $11, 1
69*9880d681SAndroid Build Coastguard Worker# CHECK: addu $11, $11, $1
70*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($11)
71*9880d681SAndroid Build Coastguard Worker    .set    at=$11
72*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
73*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$12
74*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $12, 1
75*9880d681SAndroid Build Coastguard Worker# CHECK: addu $12, $12, $1
76*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($12)
77*9880d681SAndroid Build Coastguard Worker    .set    at=$12
78*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
79*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$13
80*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $13, 1
81*9880d681SAndroid Build Coastguard Worker# CHECK: addu $13, $13, $1
82*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($13)
83*9880d681SAndroid Build Coastguard Worker    .set    at=$13
84*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
85*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$14
86*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $14, 1
87*9880d681SAndroid Build Coastguard Worker# CHECK: addu $14, $14, $1
88*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($14)
89*9880d681SAndroid Build Coastguard Worker    .set    at=$14
90*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
91*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$15
92*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $15, 1
93*9880d681SAndroid Build Coastguard Worker# CHECK: addu $15, $15, $1
94*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($15)
95*9880d681SAndroid Build Coastguard Worker    .set    at=$15
96*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
97*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$16
98*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $16, 1
99*9880d681SAndroid Build Coastguard Worker# CHECK: addu $16, $16, $1
100*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($16)
101*9880d681SAndroid Build Coastguard Worker    .set    at=$s0
102*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
103*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$17
104*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $17, 1
105*9880d681SAndroid Build Coastguard Worker# CHECK: addu $17, $17, $1
106*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($17)
107*9880d681SAndroid Build Coastguard Worker    .set    at=$s1
108*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
109*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$18
110*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $18, 1
111*9880d681SAndroid Build Coastguard Worker# CHECK: addu $18, $18, $1
112*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($18)
113*9880d681SAndroid Build Coastguard Worker    .set    at=$s2
114*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
115*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$19
116*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $19, 1
117*9880d681SAndroid Build Coastguard Worker# CHECK: addu $19, $19, $1
118*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($19)
119*9880d681SAndroid Build Coastguard Worker    .set    at=$s3
120*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
121*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$20
122*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $20, 1
123*9880d681SAndroid Build Coastguard Worker# CHECK: addu $20, $20, $1
124*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($20)
125*9880d681SAndroid Build Coastguard Worker    .set    at=$s4
126*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
127*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$21
128*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $21, 1
129*9880d681SAndroid Build Coastguard Worker# CHECK: addu $21, $21, $1
130*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($21)
131*9880d681SAndroid Build Coastguard Worker    .set    at=$s5
132*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
133*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$22
134*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $22, 1
135*9880d681SAndroid Build Coastguard Worker# CHECK: addu $22, $22, $1
136*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($22)
137*9880d681SAndroid Build Coastguard Worker    .set    at=$s6
138*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
139*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$23
140*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $23, 1
141*9880d681SAndroid Build Coastguard Worker# CHECK: addu $23, $23, $1
142*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($23)
143*9880d681SAndroid Build Coastguard Worker    .set    at=$s7
144*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
145*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$24
146*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $24, 1
147*9880d681SAndroid Build Coastguard Worker# CHECK: addu $24, $24, $1
148*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($24)
149*9880d681SAndroid Build Coastguard Worker    .set    at=$24
150*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
151*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$25
152*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $25, 1
153*9880d681SAndroid Build Coastguard Worker# CHECK: addu $25, $25, $1
154*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($25)
155*9880d681SAndroid Build Coastguard Worker    .set    at=$25
156*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
157*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$26
158*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $26, 1
159*9880d681SAndroid Build Coastguard Worker# CHECK: addu $26, $26, $1
160*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($26)
161*9880d681SAndroid Build Coastguard Worker    .set    at=$26
162*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
163*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$27
164*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $27, 1
165*9880d681SAndroid Build Coastguard Worker# CHECK: addu $27, $27, $1
166*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($27)
167*9880d681SAndroid Build Coastguard Worker    .set    at=$27
168*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
169*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$28
170*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $gp, 1
171*9880d681SAndroid Build Coastguard Worker# CHECK: addu $gp, $gp, $1
172*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($gp)
173*9880d681SAndroid Build Coastguard Worker    .set    at=$gp
174*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
175*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$30
176*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $fp, 1
177*9880d681SAndroid Build Coastguard Worker# CHECK: addu $fp, $fp, $1
178*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($fp)
179*9880d681SAndroid Build Coastguard Worker    .set    at=$fp
180*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
181*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$29
182*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $sp, 1
183*9880d681SAndroid Build Coastguard Worker# CHECK: addu $sp, $sp, $1
184*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($sp)
185*9880d681SAndroid Build Coastguard Worker    .set    at=$sp
186*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
187*9880d681SAndroid Build Coastguard Worker# CHECK: .set at=$31
188*9880d681SAndroid Build Coastguard Worker# CHECK: lui  $ra, 1
189*9880d681SAndroid Build Coastguard Worker# CHECK: addu $ra, $ra, $1
190*9880d681SAndroid Build Coastguard Worker# CHECK: lw   $1, 0($ra)
191*9880d681SAndroid Build Coastguard Worker    .set    at=$ra
192*9880d681SAndroid Build Coastguard Worker        lw      $1, 65536($1)
193