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