1# RUN: llvm-mc %s -triple=mips64-unknown-linux -show-encoding -mcpu=mips64r2 \
2# RUN:   | FileCheck %s
3# RUN: llvm-mc %s -triple=mips64-unknown-linux -show-encoding -mcpu=mips64r6 \
4# RUN:   | FileCheck %s
5
6la $5, 0x00000001 # CHECK: daddiu $5, $zero, 1      # encoding: [0x64,0x05,0x00,0x01]
7la $5, 0x00000002 # CHECK: daddiu $5, $zero, 2      # encoding: [0x64,0x05,0x00,0x02]
8la $5, 0x00004000 # CHECK: daddiu $5, $zero, 16384  # encoding: [0x64,0x05,0x40,0x00]
9la $5, 0x00008000 # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
10la $5, 0xffffffff # CHECK: lui    $5, 65535         # encoding: [0x3c,0x05,0xff,0xff]
11                  # CHECK: dsrl32 $5, $5, 0         # encoding: [0x00,0x05,0x28,0x3e]
12la $5, 0xfffffffe # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
13                  # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
14                  # CHECK: ori    $5, $5, 65534     # encoding: [0x34,0xa5,0xff,0xfe]
15la $5, 0xffffc000 # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
16                  # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
17                  # CHECK: ori    $5, $5, 49152     # encoding: [0x34,0xa5,0xc0,0x00]
18la $5, 0xffff8000 # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
19                  # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
20                  # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
21
22la $5, 0x00010000 # CHECK: lui  $5, 1               # encoding: [0x3c,0x05,0x00,0x01]
23la $5, 0x00020000 # CHECK: lui  $5, 2               # encoding: [0x3c,0x05,0x00,0x02]
24la $5, 0x40000000 # CHECK: lui  $5, 16384           # encoding: [0x3c,0x05,0x40,0x00]
25la $5, 0x80000000 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
26                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
27la $5, 0xffff0000 # CHECK: ori  $5, $zero, 65535    # encoding: [0x34,0x05,0xff,0xff]
28                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
29la $5, 0xfffe0000 # CHECK: ori  $5, $zero, 65534    # encoding: [0x34,0x05,0xff,0xfe]
30                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
31la $5, 0xc0000000 # CHECK: ori  $5, $zero, 49152    # encoding: [0x34,0x05,0xc0,0x00]
32                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
33la $5, 0x80000000 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
34                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
35
36la $5, 0x00010001 # CHECK: lui  $5, 1               # encoding: [0x3c,0x05,0x00,0x01]
37                  # CHECK: ori  $5, $5, 1           # encoding: [0x34,0xa5,0x00,0x01]
38la $5, 0x00020001 # CHECK: lui  $5, 2               # encoding: [0x3c,0x05,0x00,0x02]
39                  # CHECK: ori  $5, $5, 1           # encoding: [0x34,0xa5,0x00,0x01]
40la $5, 0x40000001 # CHECK: lui  $5, 16384           # encoding: [0x3c,0x05,0x40,0x00]
41                  # CHECK: ori  $5, $5, 1           # encoding: [0x34,0xa5,0x00,0x01]
42la $5, 0x80000001 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
43                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
44                  # CHECK: ori  $5, $5, 1           # encoding: [0x34,0xa5,0x00,0x01]
45la $5, 0x00010002 # CHECK: lui  $5, 1               # encoding: [0x3c,0x05,0x00,0x01]
46                  # CHECK: ori  $5, $5, 2           # encoding: [0x34,0xa5,0x00,0x02]
47la $5, 0x00020002 # CHECK: lui  $5, 2               # encoding: [0x3c,0x05,0x00,0x02]
48                  # CHECK: ori  $5, $5, 2           # encoding: [0x34,0xa5,0x00,0x02]
49la $5, 0x40000002 # CHECK: lui  $5, 16384           # encoding: [0x3c,0x05,0x40,0x00]
50                  # CHECK: ori  $5, $5, 2           # encoding: [0x34,0xa5,0x00,0x02]
51la $5, 0x80000002 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
52                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
53                  # CHECK: ori  $5, $5, 2           # encoding: [0x34,0xa5,0x00,0x02]
54la $5, 0x00014000 # CHECK: lui  $5, 1               # encoding: [0x3c,0x05,0x00,0x01]
55                  # CHECK: ori  $5, $5, 16384       # encoding: [0x34,0xa5,0x40,0x00]
56la $5, 0x00024000 # CHECK: lui  $5, 2               # encoding: [0x3c,0x05,0x00,0x02]
57                  # CHECK: ori  $5, $5, 16384       # encoding: [0x34,0xa5,0x40,0x00]
58la $5, 0x40004000 # CHECK: lui  $5, 16384           # encoding: [0x3c,0x05,0x40,0x00]
59                  # CHECK: ori  $5, $5, 16384       # encoding: [0x34,0xa5,0x40,0x00]
60la $5, 0x80004000 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
61                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
62                  # CHECK: ori  $5, $5, 16384       # encoding: [0x34,0xa5,0x40,0x00]
63la $5, 0x00018000 # CHECK: lui  $5, 1               # encoding: [0x3c,0x05,0x00,0x01]
64                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
65la $5, 0x00028000 # CHECK: lui  $5, 2               # encoding: [0x3c,0x05,0x00,0x02]
66                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
67la $5, 0x40008000 # CHECK: lui  $5, 16384           # encoding: [0x3c,0x05,0x40,0x00]
68                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
69la $5, 0x80008000 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
70                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
71la $5, 0xffff4000 # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
72                  # CHECK: ori  $5, $5, 16384       # encoding: [0x34,0xa5,0x40,0x00]
73la $5, 0xfffe8000 # CHECK: ori  $5, $zero, 65534    # encoding: [0x34,0x05,0xff,0xfe]
74                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
75                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
76la $5, 0xc0008000 # CHECK: ori  $5, $zero, 49152    # encoding: [0x34,0x05,0xc0,0x00]
77                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
78                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
79la $5, 0x80008000 # CHECK: ori  $5, $zero, 32768    # encoding: [0x34,0x05,0x80,0x00]
80                  # CHECK: dsll $5, $5, 16          # encoding: [0x00,0x05,0x2c,0x38]
81                  # CHECK: ori  $5, $5, 32768       # encoding: [0x34,0xa5,0x80,0x00]
82
83la $5, 0x0000000100008000 # CHECK: addiu  $5, $zero, 1      # encoding: [0x24,0x05,0x00,0x01]
84                          # CHECK: dsll32 $5, $5, 0         # encoding: [0x00,0x05,0x28,0x3c]
85                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
86la $5, 0x0000000100014000 # CHECK: addiu  $5, $zero, 1      # encoding: [0x24,0x05,0x00,0x01]
87                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
88                          # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
89                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
90                          # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
91la $5, 0x0000000180008000 # CHECK: addiu  $5, $zero, 1      # encoding: [0x24,0x05,0x00,0x01]
92                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
93                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
94                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
95                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
96la $5, 0x0000000200008000 # CHECK: addiu  $5, $zero, 2      # encoding: [0x24,0x05,0x00,0x02]
97                          # CHECK: dsll32 $5, $5, 0         # encoding: [0x00,0x05,0x28,0x3c]
98                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
99la $5, 0x0000000200014000 # CHECK: addiu  $5, $zero, 2      # encoding: [0x24,0x05,0x00,0x02]
100                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
101                          # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
102                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
103                          # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
104la $5, 0x0000000280008000 # CHECK: addiu  $5, $zero, 2      # encoding: [0x24,0x05,0x00,0x02]
105                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
106                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
107                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
108                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
109la $5, 0x0000400000008000 # CHECK: addiu  $5, $zero, 16384  # encoding: [0x24,0x05,0x40,0x00]
110                          # CHECK: dsll32 $5, $5, 0         # encoding: [0x00,0x05,0x28,0x3c]
111                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
112la $5, 0x0000400000014000 # CHECK: addiu  $5, $zero, 16384  # encoding: [0x24,0x05,0x40,0x00]
113                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
114                          # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
115                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
116                          # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
117la $5, 0x0000400040008000 # CHECK: addiu  $5, $zero, 16384  # encoding: [0x24,0x05,0x40,0x00]
118                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
119                          # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
120                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
121                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
122la $5, 0x8000800080008000 # CHECK: lui    $5, 32768         # encoding: [0x3c,0x05,0x80,0x00]
123                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
124                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
125                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
126                          # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
127                          # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
128
129la $5, 0x00000001($6) # CHECK: daddiu $5, $6, 1         # encoding: [0x64,0xc5,0x00,0x01]
130la $5, 0x00000002($6) # CHECK: daddiu $5, $6, 2         # encoding: [0x64,0xc5,0x00,0x02]
131la $5, 0x00004000($6) # CHECK: daddiu $5, $6, 16384     # encoding: [0x64,0xc5,0x40,0x00]
132la $5, 0x00008000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
133                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
134la $5, 0xffffffff($6) # CHECK: lui    $5, 65535         # encoding: [0x3c,0x05,0xff,0xff]
135                      # CHECK: dsrl32 $5, $5, 0         # encoding: [0x00,0x05,0x28,0x3e]
136                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
137la $5, 0xfffffffe($6) # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
138                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
139                      # CHECK: ori    $5, $5, 65534     # encoding: [0x34,0xa5,0xff,0xfe]
140                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
141la $5, 0xffffc000($6) # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
142                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
143                      # CHECK: ori    $5, $5, 49152     # encoding: [0x34,0xa5,0xc0,0x00]
144                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
145la $5, 0xffff8000($6) # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
146                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
147                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
148                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
149
150la $5, 0x00010000($6) # CHECK: lui    $5, 1             # encoding: [0x3c,0x05,0x00,0x01]
151                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
152la $5, 0x00020000($6) # CHECK: lui    $5, 2             # encoding: [0x3c,0x05,0x00,0x02]
153                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
154la $5, 0x40000000($6) # CHECK: lui    $5, 16384         # encoding: [0x3c,0x05,0x40,0x00]
155                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
156la $5, 0x80000000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
157                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
158                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
159la $5, 0xffff0000($6) # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
160                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
161                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
162la $5, 0xfffe0000($6) # CHECK: ori    $5, $zero, 65534  # encoding: [0x34,0x05,0xff,0xfe]
163                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
164                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
165la $5, 0xc0000000($6) # CHECK: ori    $5, $zero, 49152  # encoding: [0x34,0x05,0xc0,0x00]
166                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
167                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
168la $5, 0x80000000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
169                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
170                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
171
172la $5, 0x00010001($6) # CHECK: lui    $5, 1             # encoding: [0x3c,0x05,0x00,0x01]
173                      # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
174                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
175la $5, 0x00020001($6) # CHECK: lui    $5, 2             # encoding: [0x3c,0x05,0x00,0x02]
176                      # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
177                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
178la $5, 0x40000001($6) # CHECK: lui    $5, 16384         # encoding: [0x3c,0x05,0x40,0x00]
179                      # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
180                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
181la $5, 0x80000001($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
182                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
183                      # CHECK: ori    $5, $5, 1         # encoding: [0x34,0xa5,0x00,0x01]
184                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
185la $5, 0x00010002($6) # CHECK: lui    $5, 1             # encoding: [0x3c,0x05,0x00,0x01]
186                      # CHECK: ori    $5, $5, 2         # encoding: [0x34,0xa5,0x00,0x02]
187                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
188la $5, 0x00020002($6) # CHECK: lui    $5, 2             # encoding: [0x3c,0x05,0x00,0x02]
189                      # CHECK: ori    $5, $5, 2         # encoding: [0x34,0xa5,0x00,0x02]
190                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
191la $5, 0x40000002($6) # CHECK: lui    $5, 16384         # encoding: [0x3c,0x05,0x40,0x00]
192                      # CHECK: ori    $5, $5, 2         # encoding: [0x34,0xa5,0x00,0x02]
193                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
194la $5, 0x80000002($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
195                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
196                      # CHECK: ori    $5, $5, 2         # encoding: [0x34,0xa5,0x00,0x02]
197                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
198la $5, 0x00014000($6) # CHECK: lui    $5, 1             # encoding: [0x3c,0x05,0x00,0x01]
199                      # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
200                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
201la $5, 0x00024000($6) # CHECK: lui    $5, 2             # encoding: [0x3c,0x05,0x00,0x02]
202                      # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
203                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
204la $5, 0x40004000($6) # CHECK: lui    $5, 16384         # encoding: [0x3c,0x05,0x40,0x00]
205                      # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
206                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
207la $5, 0x80004000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
208                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
209                      # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
210                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
211la $5, 0x00018000($6) # CHECK: lui    $5, 1             # encoding: [0x3c,0x05,0x00,0x01]
212                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
213                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
214la $5, 0x00028000($6) # CHECK: lui    $5, 2             # encoding: [0x3c,0x05,0x00,0x02]
215                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
216                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
217la $5, 0x40008000($6) # CHECK: lui    $5, 16384         # encoding: [0x3c,0x05,0x40,0x00]
218                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
219                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
220la $5, 0x80008000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
221                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
222                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
223                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
224la $5, 0xffff4000($6) # CHECK: ori    $5, $zero, 65535  # encoding: [0x34,0x05,0xff,0xff]
225                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
226                      # CHECK: ori    $5, $5, 16384     # encoding: [0x34,0xa5,0x40,0x00]
227                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
228la $5, 0xfffe8000($6) # CHECK: ori    $5, $zero, 65534  # encoding: [0x34,0x05,0xff,0xfe]
229                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
230                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
231                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
232la $5, 0xc0008000($6) # CHECK: ori    $5, $zero, 49152  # encoding: [0x34,0x05,0xc0,0x00]
233                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
234                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
235                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
236la $5, 0x80008000($6) # CHECK: ori    $5, $zero, 32768  # encoding: [0x34,0x05,0x80,0x00]
237                      # CHECK: dsll   $5, $5, 16        # encoding: [0x00,0x05,0x2c,0x38]
238                      # CHECK: ori    $5, $5, 32768     # encoding: [0x34,0xa5,0x80,0x00]
239                      # CHECK: daddu  $5, $5, $6        # encoding: [0x00,0xa6,0x28,0x2d]
240
241la $6, 0x00000001($6) # CHECK: daddiu  $6, $6, 1        # encoding: [0x64,0xc6,0x00,0x01]
242la $6, 0x00000002($6) # CHECK: daddiu  $6, $6, 2        # encoding: [0x64,0xc6,0x00,0x02]
243la $6, 0x00004000($6) # CHECK: daddiu  $6, $6, 16384    # encoding: [0x64,0xc6,0x40,0x00]
244la $6, 0x00008000($6) # CHECK: ori     $6, $zero, 32768 # encoding: [0x34,0x06,0x80,0x00]
245                      # CHECK: daddu   $6, $6, $6       # encoding: [0x00,0xc6,0x30,0x2d]
246la $6, 0xffffffff($6) # CHECK: lui     $1, 65535        # encoding: [0x3c,0x01,0xff,0xff]
247                      # CHECK: dsrl32  $1, $1, 0        # encoding: [0x00,0x01,0x08,0x3e]
248                      # CHECK: daddu   $6, $1, $6       # encoding: [0x00,0x26,0x30,0x2d]
249la $6, 0xfffffffe($6) # CHECK: ori     $1, $zero, 65535 # encoding: [0x34,0x01,0xff,0xff]
250                      # CHECK: dsll    $1, $1, 16       # encoding: [0x00,0x01,0x0c,0x38]
251                      # CHECK: ori     $1, $1, 65534    # encoding: [0x34,0x21,0xff,0xfe]
252                      # CHECK: daddu   $6, $1, $6       # encoding: [0x00,0x26,0x30,0x2d]
253la $6, 0xffffc000($6) # CHECK: ori     $1, $zero, 65535 # encoding: [0x34,0x01,0xff,0xff]
254                      # CHECK: dsll    $1, $1, 16       # encoding: [0x00,0x01,0x0c,0x38]
255                      # CHECK: ori     $1, $1, 49152    # encoding: [0x34,0x21,0xc0,0x00]
256                      # CHECK: daddu   $6, $1, $6       # encoding: [0x00,0x26,0x30,0x2d]
257la $6, 0xffff8000($6) # CHECK: ori     $1, $zero, 65535 # encoding: [0x34,0x01,0xff,0xff]
258                      # CHECK: dsll    $1, $1, 16       # encoding: [0x00,0x01,0x0c,0x38]
259                      # CHECK: ori     $1, $1, 32768    # encoding: [0x34,0x21,0x80,0x00]
260                      # CHECK: daddu   $6, $1, $6       # encoding: [0x00,0x26,0x30,0x2d]
261
262la $6, 0x00010000($6) # CHECK: lui    $1, 1             # encoding: [0x3c,0x01,0x00,0x01]
263                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
264la $6, 0x00020000($6) # CHECK: lui    $1, 2             # encoding: [0x3c,0x01,0x00,0x02]
265                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
266la $6, 0x40000000($6) # CHECK: lui    $1, 16384         # encoding: [0x3c,0x01,0x40,0x00]
267                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
268la $6, 0x80000000($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
269                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
270                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
271la $6, 0xffff0000($6) # CHECK: ori    $1, $zero, 65535  # encoding: [0x34,0x01,0xff,0xff]
272                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
273                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
274la $6, 0xfffe0000($6) # CHECK: ori    $1, $zero, 65534  # encoding: [0x34,0x01,0xff,0xfe]
275                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
276                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
277la $6, 0xc0000000($6) # CHECK: ori    $1, $zero, 49152  # encoding: [0x34,0x01,0xc0,0x00]
278                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
279                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
280la $6, 0x80000000($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
281                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
282                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
283
284la $6, 0x00010001($6) # CHECK: lui    $1, 1             # encoding: [0x3c,0x01,0x00,0x01]
285                      # CHECK: ori    $1, $1, 1         # encoding: [0x34,0x21,0x00,0x01]
286                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
287la $6, 0x00020001($6) # CHECK: lui    $1, 2             # encoding: [0x3c,0x01,0x00,0x02]
288                      # CHECK: ori    $1, $1, 1         # encoding: [0x34,0x21,0x00,0x01]
289                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
290la $6, 0x40000001($6) # CHECK: lui    $1, 16384         # encoding: [0x3c,0x01,0x40,0x00]
291                      # CHECK: ori    $1, $1, 1         # encoding: [0x34,0x21,0x00,0x01]
292                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
293la $6, 0x80000001($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
294                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
295                      # CHECK: ori    $1, $1, 1         # encoding: [0x34,0x21,0x00,0x01]
296                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
297la $6, 0x00010002($6) # CHECK: lui    $1, 1             # encoding: [0x3c,0x01,0x00,0x01]
298                      # CHECK: ori    $1, $1, 2         # encoding: [0x34,0x21,0x00,0x02]
299                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
300la $6, 0x00020002($6) # CHECK: lui    $1, 2             # encoding: [0x3c,0x01,0x00,0x02]
301                      # CHECK: ori    $1, $1, 2         # encoding: [0x34,0x21,0x00,0x02]
302                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
303la $6, 0x40000002($6) # CHECK: lui    $1, 16384         # encoding: [0x3c,0x01,0x40,0x00]
304                      # CHECK: ori    $1, $1, 2         # encoding: [0x34,0x21,0x00,0x02]
305                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
306la $6, 0x80000002($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
307                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
308                      # CHECK: ori    $1, $1, 2         # encoding: [0x34,0x21,0x00,0x02]
309                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
310la $6, 0x00014000($6) # CHECK: lui    $1, 1             # encoding: [0x3c,0x01,0x00,0x01]
311                      # CHECK: ori    $1, $1, 16384     # encoding: [0x34,0x21,0x40,0x00]
312                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
313la $6, 0x00024000($6) # CHECK: lui    $1, 2             # encoding: [0x3c,0x01,0x00,0x02]
314                      # CHECK: ori    $1, $1, 16384     # encoding: [0x34,0x21,0x40,0x00]
315                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
316la $6, 0x40004000($6) # CHECK: lui    $1, 16384         # encoding: [0x3c,0x01,0x40,0x00]
317                      # CHECK: ori    $1, $1, 16384     # encoding: [0x34,0x21,0x40,0x00]
318                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
319la $6, 0x80004000($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
320                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
321                      # CHECK: ori    $1, $1, 16384     # encoding: [0x34,0x21,0x40,0x00]
322                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
323la $6, 0x00018000($6) # CHECK: lui    $1, 1             # encoding: [0x3c,0x01,0x00,0x01]
324                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
325                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
326la $6, 0x00028000($6) # CHECK: lui    $1, 2             # encoding: [0x3c,0x01,0x00,0x02]
327                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
328                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
329la $6, 0x40008000($6) # CHECK: lui    $1, 16384         # encoding: [0x3c,0x01,0x40,0x00]
330                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
331                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
332la $6, 0x80008000($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
333                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
334                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
335                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
336la $6, 0xffff4000($6) # CHECK: ori    $1, $zero, 65535  # encoding: [0x34,0x01,0xff,0xff]
337                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
338                      # CHECK: ori    $1, $1, 16384     # encoding: [0x34,0x21,0x40,0x00]
339                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
340la $6, 0xfffe8000($6) # CHECK: ori    $1, $zero, 65534  # encoding: [0x34,0x01,0xff,0xfe]
341                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
342                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
343                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
344la $6, 0xc0008000($6) # CHECK: ori    $1, $zero, 49152  # encoding: [0x34,0x01,0xc0,0x00]
345                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
346                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
347                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
348la $6, 0x80008000($6) # CHECK: ori    $1, $zero, 32768  # encoding: [0x34,0x01,0x80,0x00]
349                      # CHECK: dsll   $1, $1, 16        # encoding: [0x00,0x01,0x0c,0x38]
350                      # CHECK: ori    $1, $1, 32768     # encoding: [0x34,0x21,0x80,0x00]
351                      # CHECK: daddu  $6, $1, $6        # encoding: [0x00,0x26,0x30,0x2d]
352
353symbol:               # CHECK-LABEL: symbol:
354.extern extern_sym
355.option pic0
356
357la $5, extern_sym
358
359# CHECK:  lui     $5, %highest(extern_sym)    # encoding: [0x3c,0x05,A,A]
360# CHECK:                                      #   fixup A - offset: 0, value: %highest(extern_sym), kind: fixup_Mips_HIGHEST
361# CHECK:  lui     $1, %hi(extern_sym)         # encoding: [0x3c,0x01,A,A]
362# CHECK:                                      #   fixup A - offset: 0, value: %hi(extern_sym), kind: fixup_Mips_HI16
363# CHECK:  daddiu  $5, $5, %higher(extern_sym) # encoding: [0x64,0xa5,A,A]
364# CHECK:                                      #   fixup A - offset: 0, value: %higher(extern_sym), kind: fixup_Mips_HIGHER
365# CHECK:  daddiu  $1, $1, %lo(extern_sym)     # encoding: [0x64,0x21,A,A]
366# CHECK:                                      #   fixup A - offset: 0, value: %lo(extern_sym), kind: fixup_Mips_LO16
367# CHECK:  dsll32  $5, $5, 0                   # encoding: [0x00,0x05,0x28,0x3c]
368# CHECK:  daddu   $5, $5, $1                  # encoding: [0x00,0xa1,0x28,0x2d]
369
370la $5, extern_sym($8)
371
372# CHECK:   lui     $5, %highest(extern_sym)     # encoding: [0x3c,0x05,A,A]
373# CHECK:                                        #   fixup A - offset: 0, value: %highest(extern_sym), kind: fixup_Mips_HIGHEST
374# CHECK:   lui     $1, %hi(extern_sym)          # encoding: [0x3c,0x01,A,A]
375# CHECK:                                        #   fixup A - offset: 0, value: %hi(extern_sym), kind: fixup_Mips_HI16
376# CHECK:   daddiu  $5, $5, %higher(extern_sym)  # encoding: [0x64,0xa5,A,A]
377# CHECK:                                        #   fixup A - offset: 0, value: %higher(extern_sym), kind: fixup_Mips_HIGHER
378# CHECK:   daddiu  $1, $1, %lo(extern_sym)      # encoding: [0x64,0x21,A,A]
379# CHECK:                                        #   fixup A - offset: 0, value: %lo(extern_sym), kind: fixup_Mips_LO16
380# CHECK:   dsll32  $5, $5, 0                    # encoding: [0x00,0x05,0x28,0x3c]
381# CHECK:   daddu   $5, $5, $1                   # encoding: [0x00,0xa1,0x28,0x2d]
382# CHECK:   daddu   $5, $5, $8                   # encoding: [0x00,0xa8,0x28,0x2d]
383
384la $5, extern_sym($5)
385
386# CHECK:   lui     $1, %highest(extern_sym)     # encoding: [0x3c,0x01,A,A]
387# CHECK:                                        #   fixup A - offset: 0, value: %highest(extern_sym), kind: fixup_Mips_HIGHEST
388# CHECK:   daddiu  $1, $1, %higher(extern_sym)  # encoding: [0x64,0x21,A,A]
389# CHECK:                                        #   fixup A - offset: 0, value: %higher(extern_sym), kind: fixup_Mips_HIGHER
390# CHECK:   dsll    $1, $1, 16                   # encoding: [0x00,0x01,0x0c,0x38]
391# CHECK:   daddiu  $1, $1, %hi(extern_sym)      # encoding: [0x64,0x21,A,A]
392# CHECK:                                        #   fixup A - offset: 0, value: %hi(extern_sym), kind: fixup_Mips_HI16
393# CHECK:   dsll    $1, $1, 16                   # encoding: [0x00,0x01,0x0c,0x38]
394# CHECK:   daddiu  $1, $1, %lo(extern_sym)      # encoding: [0x64,0x21,A,A]
395# CHECK:                                        #   fixup A - offset: 0, value: %lo(extern_sym), kind: fixup_Mips_LO16
396# CHECK:   daddu   $5, $1, $5                   # encoding: [0x00,0x25,0x28,0x2d]
397
398la $5, extern_sym+8
399
400# CHECK:   lui     $5, %highest(extern_sym+8)     # encoding: [0x3c,0x05,A,A]
401# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym+8), kind: fixup_Mips_HIGHEST
402# CHECK:   lui     $1, %hi(extern_sym+8)          # encoding: [0x3c,0x01,A,A]
403# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym+8), kind: fixup_Mips_HI16
404# CHECK:   daddiu  $5, $5, %higher(extern_sym+8)  # encoding: [0x64,0xa5,A,A]
405# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym+8), kind: fixup_Mips_HIGHER
406# CHECK:   daddiu  $1, $1, %lo(extern_sym+8)      # encoding: [0x64,0x21,A,A]
407# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym+8), kind: fixup_Mips_LO16
408# CHECK:   dsll32  $5, $5, 0                      # encoding: [0x00,0x05,0x28,0x3c]
409# CHECK:   daddu   $5, $5, $1                     # encoding: [0x00,0xa1,0x28,0x2d]
410
411
412la $5, extern_sym+8($8)
413
414# CHECK:   lui     $5, %highest(extern_sym+8)     # encoding: [0x3c,0x05,A,A]
415# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym+8), kind: fixup_Mips_HIGHEST
416# CHECK:   lui     $1, %hi(extern_sym+8)          # encoding: [0x3c,0x01,A,A]
417# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym+8), kind: fixup_Mips_HI16
418# CHECK:   daddiu  $5, $5, %higher(extern_sym+8)  # encoding: [0x64,0xa5,A,A]
419# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym+8), kind: fixup_Mips_HIGHER
420# CHECK:   daddiu  $1, $1, %lo(extern_sym+8)      # encoding: [0x64,0x21,A,A]
421# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym+8), kind: fixup_Mips_LO16
422# CHECK:   dsll32  $5, $5, 0                      # encoding: [0x00,0x05,0x28,0x3c]
423# CHECK:   daddu   $5, $5, $1                     # encoding: [0x00,0xa1,0x28,0x2d]
424# CHECK:   daddu   $5, $5, $8                     # encoding: [0x00,0xa8,0x28,0x2d]
425
426la $5, extern_sym-8($5)
427
428# CHECK:   lui     $1, %highest(extern_sym-8)     # encoding: [0x3c,0x01,A,A]
429# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym-8), kind: fixup_Mips_HIGHEST
430# CHECK:   daddiu  $1, $1, %higher(extern_sym-8)  # encoding: [0x64,0x21,A,A]
431# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym-8), kind: fixup_Mips_HIGHER
432# CHECK:   dsll    $1, $1, 16                     # encoding: [0x00,0x01,0x0c,0x38]
433# CHECK:   daddiu  $1, $1, %hi(extern_sym-8)      # encoding: [0x64,0x21,A,A]
434# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym-8), kind: fixup_Mips_HI16
435# CHECK:   dsll    $1, $1, 16                     # encoding: [0x00,0x01,0x0c,0x38]
436# CHECK:   daddiu  $1, $1, %lo(extern_sym-8)      # encoding: [0x64,0x21,A,A]
437# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym-8), kind: fixup_Mips_LO16
438# CHECK:   daddu   $5, $1, $5                     # encoding: [0x00,0x25,0x28,0x2d]
439
440la $5, extern_sym-8
441
442# CHECK:   lui     $5, %highest(extern_sym-8)     # encoding: [0x3c,0x05,A,A]
443# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym-8), kind: fixup_Mips_HIGHEST
444# CHECK:   lui     $1, %hi(extern_sym-8)          # encoding: [0x3c,0x01,A,A]
445# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym-8), kind: fixup_Mips_HI16
446# CHECK:   daddiu  $5, $5, %higher(extern_sym-8)  # encoding: [0x64,0xa5,A,A]
447# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym-8), kind: fixup_Mips_HIGHER
448# CHECK:   daddiu  $1, $1, %lo(extern_sym-8)      # encoding: [0x64,0x21,A,A]
449# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym-8), kind: fixup_Mips_LO16
450# CHECK:   dsll32  $5, $5, 0                      # encoding: [0x00,0x05,0x28,0x3c]
451# CHECK:   daddu   $5, $5, $1                     # encoding: [0x00,0xa1,0x28,0x2d]
452
453la $5, extern_sym-8($8)
454
455# CHECK:   lui     $5, %highest(extern_sym-8)     # encoding: [0x3c,0x05,A,A]
456# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym-8), kind: fixup_Mips_HIGHEST
457# CHECK:   lui     $1, %hi(extern_sym-8)          # encoding: [0x3c,0x01,A,A]
458# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym-8), kind: fixup_Mips_HI16
459# CHECK:   daddiu  $5, $5, %higher(extern_sym-8)  # encoding: [0x64,0xa5,A,A]
460# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym-8), kind: fixup_Mips_HIGHER
461# CHECK:   daddiu  $1, $1, %lo(extern_sym-8)      # encoding: [0x64,0x21,A,A]
462# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym-8), kind: fixup_Mips_LO16
463# CHECK:   dsll32  $5, $5, 0                      # encoding: [0x00,0x05,0x28,0x3c]
464# CHECK:   daddu   $5, $5, $1                     # encoding: [0x00,0xa1,0x28,0x2d]
465# CHECK:   daddu   $5, $5, $8                     # encoding: [0x00,0xa8,0x28,0x2d]
466
467la $5, extern_sym-8($5)
468
469# CHECK:   lui     $1, %highest(extern_sym-8)     # encoding: [0x3c,0x01,A,A]
470# CHECK:                                          #   fixup A - offset: 0, value: %highest(extern_sym-8), kind: fixup_Mips_HIGHEST
471# CHECK:   daddiu  $1, $1, %higher(extern_sym-8)  # encoding: [0x64,0x21,A,A]
472# CHECK:                                          #   fixup A - offset: 0, value: %higher(extern_sym-8), kind: fixup_Mips_HIGHER
473# CHECK:   dsll    $1, $1, 16                     # encoding: [0x00,0x01,0x0c,0x38]
474# CHECK:   daddiu  $1, $1, %hi(extern_sym-8)      # encoding: [0x64,0x21,A,A]
475# CHECK:                                          #   fixup A - offset: 0, value: %hi(extern_sym-8), kind: fixup_Mips_HI16
476# CHECK:   dsll    $1, $1, 16                     # encoding: [0x00,0x01,0x0c,0x38]
477# CHECK:   daddiu  $1, $1, %lo(extern_sym-8)      # encoding: [0x64,0x21,A,A]
478# CHECK:                                          #   fixup A - offset: 0, value: %lo(extern_sym-8), kind: fixup_Mips_LO16
479# CHECK:   daddu   $5, $1, $5                     # encoding: [0x00,0x25,0x28,0x2d]
480