Commit | Line | Data |
---|---|---|
92708cec | 1 | .text |
11dd08e9 | 2 | .module mips3 |
92708cec MR |
3 | .set mips16 |
4 | .globl foo | |
5 | .ent foo | |
6 | foo: | |
7 | # Individual major opcodes. | |
8 | addiu $2, $sp, 0x4011 | |
9 | .half 0xf008, 0x0211 | |
10 | .half 0xf008, 0x0231 | |
11 | .half 0xf008, 0x0251 | |
12 | .half 0xf008, 0x0291 | |
13 | ||
14 | addiu $2, $pc, 0x4011 | |
15 | .half 0xf008, 0x0a11 | |
16 | .half 0xf008, 0x0a31 | |
17 | .half 0xf008, 0x0a51 | |
18 | .half 0xf008, 0x0a91 | |
19 | ||
20 | b . + 0x8026 | |
21 | .half 0xf008, 0x1011 | |
22 | .half 0xf008, 0x1031 | |
23 | .half 0xf008, 0x1051 | |
24 | .half 0xf008, 0x1091 | |
25 | .half 0xf008, 0x1111 | |
26 | .half 0xf008, 0x1211 | |
27 | .half 0xf008, 0x1411 | |
28 | ||
29 | beqz $2, . + 0x8026 | |
30 | .half 0xf008, 0x2211 | |
31 | .half 0xf008, 0x2231 | |
32 | .half 0xf008, 0x2251 | |
33 | .half 0xf008, 0x2291 | |
34 | ||
35 | bnez $2, . + 0x8026 | |
36 | .half 0xf008, 0x2a11 | |
37 | .half 0xf008, 0x2a31 | |
38 | .half 0xf008, 0x2a51 | |
39 | .half 0xf008, 0x2a91 | |
40 | ||
41 | addiu $2, 0x4011 | |
42 | .half 0xf008, 0x4a11 | |
43 | .half 0xf008, 0x4a31 | |
44 | .half 0xf008, 0x4a51 | |
45 | .half 0xf008, 0x4a91 | |
46 | ||
47 | slti $2, 0x4011 | |
48 | .half 0xf008, 0x5211 | |
49 | .half 0xf008, 0x5231 | |
50 | .half 0xf008, 0x5251 | |
51 | .half 0xf008, 0x5291 | |
52 | ||
53 | sltiu $2, 0x4011 | |
54 | .half 0xf008, 0x5a11 | |
55 | .half 0xf008, 0x5a31 | |
56 | .half 0xf008, 0x5a51 | |
57 | .half 0xf008, 0x5a91 | |
58 | ||
59 | li $2, 0x4011 | |
60 | .half 0xf008, 0x6a11 | |
61 | .half 0xf008, 0x6a31 | |
62 | .half 0xf008, 0x6a51 | |
63 | .half 0xf008, 0x6a91 | |
64 | ||
65 | cmpi $2, 0x4011 | |
66 | .half 0xf008, 0x7211 | |
67 | .half 0xf008, 0x7231 | |
68 | .half 0xf008, 0x7251 | |
69 | .half 0xf008, 0x7291 | |
70 | ||
71 | lw $2, 0x4011($sp) | |
72 | .half 0xf008, 0x9211 | |
73 | .half 0xf008, 0x9231 | |
74 | .half 0xf008, 0x9251 | |
75 | .half 0xf008, 0x9291 | |
76 | ||
77 | lw $2, 0x4011($pc) | |
78 | .half 0xf008, 0xb211 | |
79 | .half 0xf008, 0xb231 | |
80 | .half 0xf008, 0xb251 | |
81 | .half 0xf008, 0xb291 | |
82 | ||
83 | sw $2, 0x4011($sp) | |
84 | .half 0xf008, 0xd211 | |
85 | .half 0xf008, 0xd231 | |
86 | .half 0xf008, 0xd251 | |
87 | .half 0xf008, 0xd291 | |
88 | ||
89 | # I8 major opcode. | |
90 | bteqz . + 0x8026 | |
91 | .half 0xf008, 0x6011 | |
92 | .half 0xf008, 0x6031 | |
93 | .half 0xf008, 0x6051 | |
94 | .half 0xf008, 0x6091 | |
95 | ||
96 | btnez . + 0x8026 | |
97 | .half 0xf008, 0x6111 | |
98 | .half 0xf008, 0x6131 | |
99 | .half 0xf008, 0x6151 | |
100 | .half 0xf008, 0x6191 | |
101 | ||
102 | sw $ra, 0x4011($sp) | |
103 | .half 0xf008, 0x6211 | |
104 | .half 0xf008, 0x6231 | |
105 | .half 0xf008, 0x6251 | |
106 | .half 0xf008, 0x6291 | |
107 | ||
108 | addiu $sp, 0x4011 | |
109 | .half 0xf008, 0x6311 | |
110 | .half 0xf008, 0x6331 | |
111 | .half 0xf008, 0x6351 | |
112 | .half 0xf008, 0x6391 | |
113 | ||
114 | # SHIFT major opcode | |
115 | sll $2, $3, 0x14 | |
116 | .half 0xf500, 0x3260 | |
117 | .half 0xf500, 0x3264 | |
118 | .half 0xf500, 0x3268 | |
119 | .half 0xf500, 0x3270 | |
120 | .half 0xf501, 0x3260 | |
121 | .half 0xf502, 0x3260 | |
122 | .half 0xf504, 0x3260 | |
123 | .half 0xf508, 0x3260 | |
124 | .half 0xf510, 0x3260 | |
125 | .half 0xf520, 0x3260 | |
126 | ||
127 | dsll $2, $3, 0x14 | |
128 | .half 0xf500, 0x3261 | |
129 | .half 0xf500, 0x3265 | |
130 | .half 0xf500, 0x3269 | |
131 | .half 0xf500, 0x3271 | |
132 | .half 0xf501, 0x3261 | |
133 | .half 0xf502, 0x3261 | |
134 | .half 0xf504, 0x3261 | |
135 | .half 0xf508, 0x3261 | |
136 | .half 0xf510, 0x3261 | |
137 | .half 0xf520, 0x3261 | |
138 | ||
139 | srl $2, $3, 0x14 | |
140 | .half 0xf500, 0x3262 | |
141 | .half 0xf500, 0x3266 | |
142 | .half 0xf500, 0x326a | |
143 | .half 0xf500, 0x3272 | |
144 | .half 0xf501, 0x3262 | |
145 | .half 0xf502, 0x3262 | |
146 | .half 0xf504, 0x3262 | |
147 | .half 0xf508, 0x3262 | |
148 | .half 0xf510, 0x3262 | |
149 | .half 0xf520, 0x3262 | |
150 | ||
151 | sra $2, $3, 0x14 | |
152 | .half 0xf500, 0x3263 | |
153 | .half 0xf500, 0x3267 | |
154 | .half 0xf500, 0x326b | |
155 | .half 0xf500, 0x3273 | |
156 | .half 0xf501, 0x3263 | |
157 | .half 0xf502, 0x3263 | |
158 | .half 0xf504, 0x3263 | |
159 | .half 0xf508, 0x3263 | |
160 | .half 0xf510, 0x3263 | |
161 | .half 0xf520, 0x3263 | |
162 | ||
163 | # RR major opcode | |
164 | dsrl $2, 0x14 | |
165 | .half 0xf500, 0xe848 | |
166 | .half 0xf500, 0xe948 | |
167 | .half 0xf500, 0xea48 | |
168 | .half 0xf500, 0xec48 | |
169 | .half 0xf501, 0xe848 | |
170 | .half 0xf502, 0xe848 | |
171 | .half 0xf504, 0xe848 | |
172 | .half 0xf508, 0xe848 | |
173 | .half 0xf510, 0xe848 | |
174 | .half 0xf520, 0xe848 | |
175 | ||
176 | dsra $2, 0x14 | |
177 | .half 0xf500, 0xe853 | |
178 | .half 0xf500, 0xe953 | |
179 | .half 0xf500, 0xea53 | |
180 | .half 0xf500, 0xec53 | |
181 | .half 0xf501, 0xe853 | |
182 | .half 0xf502, 0xe853 | |
183 | .half 0xf504, 0xe853 | |
184 | .half 0xf508, 0xe853 | |
185 | .half 0xf510, 0xe853 | |
186 | .half 0xf520, 0xe853 | |
187 | ||
188 | # I64 major opcode. | |
189 | daddiu $sp, 0x4011 | |
190 | .half 0xf008, 0xfb11 | |
191 | .half 0xf008, 0xfb31 | |
192 | .half 0xf008, 0xfb51 | |
193 | .half 0xf008, 0xfb91 | |
194 | .end foo | |
195 | ||
196 | # Force some (non-delay-slot) zero bytes, to make 'objdump' print ... | |
197 | .align 4, 0 | |
198 | .space 16 |