1459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
2459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
3459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# Test to ensure that all register and immediate operands can be parsed by
4459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# the assembly parser correctly. Testing the parsing of FSL immediate
5459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# values is done in a different test.
6459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
7459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# TYPE A:   OPCODE RD    RA    RB    FLAGS
8459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00000 00000 00000 00000000000
9459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
10459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
11459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00000 00000 00000 00000000000
12459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0x00,0x00,0x00]
13459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r0, r0, r0
14459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
15459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
16459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00001 00001 00001 00000000000
17459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0x21,0x08,0x00]
18459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r1, r1, r1
19459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
20459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
21459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00010 00010 00010 00000000000
22459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0x42,0x10,0x00]
23459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r2, r2, r2
24459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
25459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
26459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00011 00011 00011 00000000000
27459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0x63,0x18,0x00]
28459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r3, r3, r3
29459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
30459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
31459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00100 00100 00100 00000000000
32459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0x84,0x20,0x00]
33459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r4, r4, r4
34459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
35459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
36459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00101 00101 00101 00000000000
37459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0xa5,0x28,0x00]
38459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r5, r5, r5
39459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
40459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
41459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00110 00110 00110 00000000000
42459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0xc6,0x30,0x00]
43459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r6, r6, r6
44459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
45459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
46459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 00111 00111 00111 00000000000
47459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x00,0xe7,0x38,0x00]
48459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r7, r7, r7
49459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
50459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
51459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01000 01000 01000 00000000000
52459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0x08,0x40,0x00]
53459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r8, r8, r8
54459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
55459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
56459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01001 01001 01001 00000000000
57459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0x29,0x48,0x00]
58459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r9, r9, r9
59459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
60459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
61459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01010 01010 01010 00000000000
62459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0x4a,0x50,0x00]
63459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r10, r10, r10
64459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
65459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
66459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01011 01011 01011 00000000000
67459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0x6b,0x58,0x00]
68459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r11, r11, r11
69459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
70459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
71459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01100 01100 01100 00000000000
72459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0x8c,0x60,0x00]
73459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r12, r12, r12
74459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
75459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
76459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01101 01101 01101 00000000000
77459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0xad,0x68,0x00]
78459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r13, r13, r13
79459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
80459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
81459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01110 01110 01110 00000000000
82459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0xce,0x70,0x00]
83459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r14, r14, r14
84459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
85459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
86459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 01111 01111 01111 00000000000
87459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x01,0xef,0x78,0x00]
88459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r15, r15, r15
89459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
90459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
91459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10000 10000 10000 00000000000
92459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0x10,0x80,0x00]
93459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r16, r16, r16
94459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
95459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
96459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10001 10001 10001 00000000000
97459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0x31,0x88,0x00]
98459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r17, r17, r17
99459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
100459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
101459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10010 10010 10010 00000000000
102459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0x52,0x90,0x00]
103459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r18, r18, r18
104459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
105459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
106459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10011 10011 10011 00000000000
107459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0x73,0x98,0x00]
108459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r19, r19, r19
109459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
110459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
111459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10100 10100 10100 00000000000
112459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0x94,0xa0,0x00]
113459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r20, r20, r20
114459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
115459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
116459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10101 10101 10101 00000000000
117459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0xb5,0xa8,0x00]
118459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r21, r21, r21
119459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
120459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
121459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10110 10110 10110 00000000000
122459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0xd6,0xb0,0x00]
123459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r22, r22, r22
124459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
125459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
126459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 10111 10111 10111 00000000000
127459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x02,0xf7,0xb8,0x00]
128459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r23, r23, r23
129459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
130459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
131459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11000 11000 11000 00000000000
132459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0x18,0xc0,0x00]
133459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r24, r24, r24
134459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
135459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
136459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11001 11001 11001 00000000000
137459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0x39,0xc8,0x00]
138459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r25, r25, r25
139459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
140459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
141459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11010 11010 11010 00000000000
142459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0x5a,0xd0,0x00]
143459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r26, r26, r26
144459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
145459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
146459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11011 11011 11011 00000000000
147459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0x7b,0xd8,0x00]
148459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r27, r27, r27
149459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
150459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
151459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11100 11100 11100 00000000000
152459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0x9c,0xe0,0x00]
153459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r28, r28, r28
154459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
155459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
156459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11101 11101 11101 00000000000
157459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0xbd,0xe8,0x00]
158459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r29, r29, r29
159459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
160459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
161459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11110 11110 11110 00000000000
162459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0xde,0xf0,0x00]
163459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r30, r30, r30
164459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
165459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    add
166459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   000000 11111 11111 11111 00000000000
167459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x03,0xff,0xf8,0x00]
168459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            add     r31, r31, r31
169459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
170459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
171459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000000000
172459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x00]
173459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 0
174459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
175459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
176459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000000001
177459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x01]
178459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 1
179459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
180459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
181459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000000010
182459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x02]
183459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 2
184459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
185459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
186459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000000100
187459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x04]
188459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 4
189459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
190459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
191459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000001000
192459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x08]
193459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 8
194459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
195459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
196459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000010000
197459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x10]
198459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 16
199459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
200459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
201459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000000100000
202459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x20]
203459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 32
204459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
205459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
206459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000001000000
207459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x40]
208459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 64
209459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
210459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
211459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000010000000
212459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x00,0x80]
213459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 128
214459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
215459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
216459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000000100000000
217459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x01,0x00]
218459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 256
219459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
220459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
221459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000001000000000
222459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x02,0x00]
223459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 512
224459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
225459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
226459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000010000000000
227459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x04,0x00]
228459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 1024
229459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
230459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
231459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0000100000000000
232459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x08,0x00]
233459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 2048
234459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
235459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
236459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0001000000000000
237459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x10,0x00]
238459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 4096
239459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
240459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
241459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0010000000000000
242459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x20,0x00]
243459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 8192
244459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
245459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
246459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 0100000000000000
247459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x40,0x00]
248459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, 16384
249459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
250459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
251459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111111111
252459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xff]
253459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -1
254459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
255459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
256459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111111110
257459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xfe]
258459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -2
259459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
260459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
261459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111111100
262459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xfc]
263459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -4
264459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
265459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
266459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111111000
267459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xf8]
268459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -8
269459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
270459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
271459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111110000
272459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xf0]
273459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -16
274459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
275459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
276459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111100000
277459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xe0]
278459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -32
279459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
280459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
281459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111111000000
282459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0xc0]
283459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -64
284459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
285459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
286459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111110000000
287459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0x80]
288459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -128
289459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
290459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
291459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111100000000
292459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xff,0x00]
293459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -256
294459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
295459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
296459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111111000000000
297459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xfe,0x00]
298459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -512
299459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
300459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
301459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111110000000000
302459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xfc,0x00]
303459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -1024
304459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
305459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
306459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111100000000000
307459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xf8,0x00]
308459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -2048
309459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
310459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
311459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1111000000000000
312459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xf0,0x00]
313459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -4096
314459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
315459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
316459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1110000000000000
317459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xe0,0x00]
318459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -8192
319459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
320459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
321459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1100000000000000
322459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0xc0,0x00]
323459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -16384
324459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck
325459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    addi
326459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# BINARY:   001000 00000 00000 1000000000000000
327459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck# CHECK:    encoding: [0x20,0x00,0x80,0x00]
328459d2455de371cdf809e19a52d8ea38deb4963a6Wesley Peck            addi    r0, r0, -32768
329