1 #define type unsigned short
2 
3 type glob0, glob1;
4 
5 #define E0 ((type *)10000000)
6 #define reg0 r0
7 #define indreg0 (*p0)
8 #define imm0 22
9 #define limm0 ((type)&glob0)
10 #define adr0 (*E0)
11 #define adrreg0 (p0[10000000])
12 #define adrx0 (E0[x0])
13 #define regx0 (p0[x0])
14 
15 #define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
16 #define reg1 r1
17 #define indreg1 (*p1)
18 #define imm1 33
19 #define limm1 ((type)&glob1)
20 #define adr1 (*E1)
21 #define adrreg1 (p1[1111111/4])
22 #define adrx1 (E1[x1])
23 #define regx1 (p1[x1])
24 
reg0reg1(r0,r1,x0,x1,p0,p1)25 reg0reg1 (r0, r1, x0, x1, p0, p1)
26 type r0, r1;  type *p0, *p1;
27 {if (reg0 <= reg1) return 1; else return 0;}
28 
reg0indreg1(r0,r1,x0,x1,p0,p1)29 reg0indreg1 (r0, r1, x0, x1, p0, p1)
30 type r0, r1;  type *p0, *p1;
31 {if (reg0 <= indreg1) return 1; else return 0;}
32 
reg0imm1(r0,r1,x0,x1,p0,p1)33 reg0imm1 (r0, r1, x0, x1, p0, p1)
34 type r0, r1;  type *p0, *p1;
35 {if (reg0 <= imm1) return 1; else return 0;}
36 
reg0limm1(r0,r1,x0,x1,p0,p1)37 reg0limm1 (r0, r1, x0, x1, p0, p1)
38 type r0, r1;  type *p0, *p1;
39 {if (reg0 <= limm1) return 1; else return 0;}
40 
reg0adr1(r0,r1,x0,x1,p0,p1)41 reg0adr1 (r0, r1, x0, x1, p0, p1)
42 type r0, r1;  type *p0, *p1;
43 {if (reg0 <= adr1) return 1; else return 0;}
44 
reg0adrreg1(r0,r1,x0,x1,p0,p1)45 reg0adrreg1 (r0, r1, x0, x1, p0, p1)
46 type r0, r1;  type *p0, *p1;
47 {if (reg0 <= adrreg1) return 1; else return 0;}
48 
reg0adrx1(r0,r1,x0,x1,p0,p1)49 reg0adrx1 (r0, r1, x0, x1, p0, p1)
50 type r0, r1;  type *p0, *p1;
51 {if (reg0 <= adrx1) return 1; else return 0;}
52 
reg0regx1(r0,r1,x0,x1,p0,p1)53 reg0regx1 (r0, r1, x0, x1, p0, p1)
54 type r0, r1;  type *p0, *p1;
55 {if (reg0 <= regx1) return 1; else return 0;}
56 
indreg0reg1(r0,r1,x0,x1,p0,p1)57 indreg0reg1 (r0, r1, x0, x1, p0, p1)
58 type r0, r1;  type *p0, *p1;
59 {if (indreg0 <= reg1) return 1; else return 0;}
60 
indreg0indreg1(r0,r1,x0,x1,p0,p1)61 indreg0indreg1 (r0, r1, x0, x1, p0, p1)
62 type r0, r1;  type *p0, *p1;
63 {if (indreg0 <= indreg1) return 1; else return 0;}
64 
indreg0imm1(r0,r1,x0,x1,p0,p1)65 indreg0imm1 (r0, r1, x0, x1, p0, p1)
66 type r0, r1;  type *p0, *p1;
67 {if (indreg0 <= imm1) return 1; else return 0;}
68 
indreg0limm1(r0,r1,x0,x1,p0,p1)69 indreg0limm1 (r0, r1, x0, x1, p0, p1)
70 type r0, r1;  type *p0, *p1;
71 {if (indreg0 <= limm1) return 1; else return 0;}
72 
indreg0adr1(r0,r1,x0,x1,p0,p1)73 indreg0adr1 (r0, r1, x0, x1, p0, p1)
74 type r0, r1;  type *p0, *p1;
75 {if (indreg0 <= adr1) return 1; else return 0;}
76 
indreg0adrreg1(r0,r1,x0,x1,p0,p1)77 indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
78 type r0, r1;  type *p0, *p1;
79 {if (indreg0 <= adrreg1) return 1; else return 0;}
80 
indreg0adrx1(r0,r1,x0,x1,p0,p1)81 indreg0adrx1 (r0, r1, x0, x1, p0, p1)
82 type r0, r1;  type *p0, *p1;
83 {if (indreg0 <= adrx1) return 1; else return 0;}
84 
indreg0regx1(r0,r1,x0,x1,p0,p1)85 indreg0regx1 (r0, r1, x0, x1, p0, p1)
86 type r0, r1;  type *p0, *p1;
87 {if (indreg0 <= regx1) return 1; else return 0;}
88 
imm0reg1(r0,r1,x0,x1,p0,p1)89 imm0reg1 (r0, r1, x0, x1, p0, p1)
90 type r0, r1;  type *p0, *p1;
91 {if (imm0 <= reg1) return 1; else return 0;}
92 
imm0indreg1(r0,r1,x0,x1,p0,p1)93 imm0indreg1 (r0, r1, x0, x1, p0, p1)
94 type r0, r1;  type *p0, *p1;
95 {if (imm0 <= indreg1) return 1; else return 0;}
96 
imm0imm1(r0,r1,x0,x1,p0,p1)97 imm0imm1 (r0, r1, x0, x1, p0, p1)
98 type r0, r1;  type *p0, *p1;
99 {if (imm0 <= imm1) return 1; else return 0;}
100 
imm0limm1(r0,r1,x0,x1,p0,p1)101 imm0limm1 (r0, r1, x0, x1, p0, p1)
102 type r0, r1;  type *p0, *p1;
103 {if (imm0 <= limm1) return 1; else return 0;}
104 
imm0adr1(r0,r1,x0,x1,p0,p1)105 imm0adr1 (r0, r1, x0, x1, p0, p1)
106 type r0, r1;  type *p0, *p1;
107 {if (imm0 <= adr1) return 1; else return 0;}
108 
imm0adrreg1(r0,r1,x0,x1,p0,p1)109 imm0adrreg1 (r0, r1, x0, x1, p0, p1)
110 type r0, r1;  type *p0, *p1;
111 {if (imm0 <= adrreg1) return 1; else return 0;}
112 
imm0adrx1(r0,r1,x0,x1,p0,p1)113 imm0adrx1 (r0, r1, x0, x1, p0, p1)
114 type r0, r1;  type *p0, *p1;
115 {if (imm0 <= adrx1) return 1; else return 0;}
116 
imm0regx1(r0,r1,x0,x1,p0,p1)117 imm0regx1 (r0, r1, x0, x1, p0, p1)
118 type r0, r1;  type *p0, *p1;
119 {if (imm0 <= regx1) return 1; else return 0;}
120 
limm0reg1(r0,r1,x0,x1,p0,p1)121 limm0reg1 (r0, r1, x0, x1, p0, p1)
122 type r0, r1;  type *p0, *p1;
123 {if (limm0 <= reg1) return 1; else return 0;}
124 
limm0indreg1(r0,r1,x0,x1,p0,p1)125 limm0indreg1 (r0, r1, x0, x1, p0, p1)
126 type r0, r1;  type *p0, *p1;
127 {if (limm0 <= indreg1) return 1; else return 0;}
128 
limm0imm1(r0,r1,x0,x1,p0,p1)129 limm0imm1 (r0, r1, x0, x1, p0, p1)
130 type r0, r1;  type *p0, *p1;
131 {if (limm0 <= imm1) return 1; else return 0;}
132 
limm0limm1(r0,r1,x0,x1,p0,p1)133 limm0limm1 (r0, r1, x0, x1, p0, p1)
134 type r0, r1;  type *p0, *p1;
135 {if (limm0 <= limm1) return 1; else return 0;}
136 
limm0adr1(r0,r1,x0,x1,p0,p1)137 limm0adr1 (r0, r1, x0, x1, p0, p1)
138 type r0, r1;  type *p0, *p1;
139 {if (limm0 <= adr1) return 1; else return 0;}
140 
limm0adrreg1(r0,r1,x0,x1,p0,p1)141 limm0adrreg1 (r0, r1, x0, x1, p0, p1)
142 type r0, r1;  type *p0, *p1;
143 {if (limm0 <= adrreg1) return 1; else return 0;}
144 
limm0adrx1(r0,r1,x0,x1,p0,p1)145 limm0adrx1 (r0, r1, x0, x1, p0, p1)
146 type r0, r1;  type *p0, *p1;
147 {if (limm0 <= adrx1) return 1; else return 0;}
148 
limm0regx1(r0,r1,x0,x1,p0,p1)149 limm0regx1 (r0, r1, x0, x1, p0, p1)
150 type r0, r1;  type *p0, *p1;
151 {if (limm0 <= regx1) return 1; else return 0;}
152 
adr0reg1(r0,r1,x0,x1,p0,p1)153 adr0reg1 (r0, r1, x0, x1, p0, p1)
154 type r0, r1;  type *p0, *p1;
155 {if (adr0 <= reg1) return 1; else return 0;}
156 
adr0indreg1(r0,r1,x0,x1,p0,p1)157 adr0indreg1 (r0, r1, x0, x1, p0, p1)
158 type r0, r1;  type *p0, *p1;
159 {if (adr0 <= indreg1) return 1; else return 0;}
160 
adr0imm1(r0,r1,x0,x1,p0,p1)161 adr0imm1 (r0, r1, x0, x1, p0, p1)
162 type r0, r1;  type *p0, *p1;
163 {if (adr0 <= imm1) return 1; else return 0;}
164 
adr0limm1(r0,r1,x0,x1,p0,p1)165 adr0limm1 (r0, r1, x0, x1, p0, p1)
166 type r0, r1;  type *p0, *p1;
167 {if (adr0 <= limm1) return 1; else return 0;}
168 
adr0adr1(r0,r1,x0,x1,p0,p1)169 adr0adr1 (r0, r1, x0, x1, p0, p1)
170 type r0, r1;  type *p0, *p1;
171 {if (adr0 <= adr1) return 1; else return 0;}
172 
adr0adrreg1(r0,r1,x0,x1,p0,p1)173 adr0adrreg1 (r0, r1, x0, x1, p0, p1)
174 type r0, r1;  type *p0, *p1;
175 {if (adr0 <= adrreg1) return 1; else return 0;}
176 
adr0adrx1(r0,r1,x0,x1,p0,p1)177 adr0adrx1 (r0, r1, x0, x1, p0, p1)
178 type r0, r1;  type *p0, *p1;
179 {if (adr0 <= adrx1) return 1; else return 0;}
180 
adr0regx1(r0,r1,x0,x1,p0,p1)181 adr0regx1 (r0, r1, x0, x1, p0, p1)
182 type r0, r1;  type *p0, *p1;
183 {if (adr0 <= regx1) return 1; else return 0;}
184 
adrreg0reg1(r0,r1,x0,x1,p0,p1)185 adrreg0reg1 (r0, r1, x0, x1, p0, p1)
186 type r0, r1;  type *p0, *p1;
187 {if (adrreg0 <= reg1) return 1; else return 0;}
188 
adrreg0indreg1(r0,r1,x0,x1,p0,p1)189 adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
190 type r0, r1;  type *p0, *p1;
191 {if (adrreg0 <= indreg1) return 1; else return 0;}
192 
adrreg0imm1(r0,r1,x0,x1,p0,p1)193 adrreg0imm1 (r0, r1, x0, x1, p0, p1)
194 type r0, r1;  type *p0, *p1;
195 {if (adrreg0 <= imm1) return 1; else return 0;}
196 
adrreg0limm1(r0,r1,x0,x1,p0,p1)197 adrreg0limm1 (r0, r1, x0, x1, p0, p1)
198 type r0, r1;  type *p0, *p1;
199 {if (adrreg0 <= limm1) return 1; else return 0;}
200 
adrreg0adr1(r0,r1,x0,x1,p0,p1)201 adrreg0adr1 (r0, r1, x0, x1, p0, p1)
202 type r0, r1;  type *p0, *p1;
203 {if (adrreg0 <= adr1) return 1; else return 0;}
204 
adrreg0adrreg1(r0,r1,x0,x1,p0,p1)205 adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
206 type r0, r1;  type *p0, *p1;
207 {if (adrreg0 <= adrreg1) return 1; else return 0;}
208 
adrreg0adrx1(r0,r1,x0,x1,p0,p1)209 adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
210 type r0, r1;  type *p0, *p1;
211 {if (adrreg0 <= adrx1) return 1; else return 0;}
212 
adrreg0regx1(r0,r1,x0,x1,p0,p1)213 adrreg0regx1 (r0, r1, x0, x1, p0, p1)
214 type r0, r1;  type *p0, *p1;
215 {if (adrreg0 <= regx1) return 1; else return 0;}
216 
adrx0reg1(r0,r1,x0,x1,p0,p1)217 adrx0reg1 (r0, r1, x0, x1, p0, p1)
218 type r0, r1;  type *p0, *p1;
219 {if (adrx0 <= reg1) return 1; else return 0;}
220 
adrx0indreg1(r0,r1,x0,x1,p0,p1)221 adrx0indreg1 (r0, r1, x0, x1, p0, p1)
222 type r0, r1;  type *p0, *p1;
223 {if (adrx0 <= indreg1) return 1; else return 0;}
224 
adrx0imm1(r0,r1,x0,x1,p0,p1)225 adrx0imm1 (r0, r1, x0, x1, p0, p1)
226 type r0, r1;  type *p0, *p1;
227 {if (adrx0 <= imm1) return 1; else return 0;}
228 
adrx0limm1(r0,r1,x0,x1,p0,p1)229 adrx0limm1 (r0, r1, x0, x1, p0, p1)
230 type r0, r1;  type *p0, *p1;
231 {if (adrx0 <= limm1) return 1; else return 0;}
232 
adrx0adr1(r0,r1,x0,x1,p0,p1)233 adrx0adr1 (r0, r1, x0, x1, p0, p1)
234 type r0, r1;  type *p0, *p1;
235 {if (adrx0 <= adr1) return 1; else return 0;}
236 
adrx0adrreg1(r0,r1,x0,x1,p0,p1)237 adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
238 type r0, r1;  type *p0, *p1;
239 {if (adrx0 <= adrreg1) return 1; else return 0;}
240 
adrx0adrx1(r0,r1,x0,x1,p0,p1)241 adrx0adrx1 (r0, r1, x0, x1, p0, p1)
242 type r0, r1;  type *p0, *p1;
243 {if (adrx0 <= adrx1) return 1; else return 0;}
244 
adrx0regx1(r0,r1,x0,x1,p0,p1)245 adrx0regx1 (r0, r1, x0, x1, p0, p1)
246 type r0, r1;  type *p0, *p1;
247 {if (adrx0 <= regx1) return 1; else return 0;}
248 
regx0reg1(r0,r1,x0,x1,p0,p1)249 regx0reg1 (r0, r1, x0, x1, p0, p1)
250 type r0, r1;  type *p0, *p1;
251 {if (regx0 <= reg1) return 1; else return 0;}
252 
regx0indreg1(r0,r1,x0,x1,p0,p1)253 regx0indreg1 (r0, r1, x0, x1, p0, p1)
254 type r0, r1;  type *p0, *p1;
255 {if (regx0 <= indreg1) return 1; else return 0;}
256 
regx0imm1(r0,r1,x0,x1,p0,p1)257 regx0imm1 (r0, r1, x0, x1, p0, p1)
258 type r0, r1;  type *p0, *p1;
259 {if (regx0 <= imm1) return 1; else return 0;}
260 
regx0limm1(r0,r1,x0,x1,p0,p1)261 regx0limm1 (r0, r1, x0, x1, p0, p1)
262 type r0, r1;  type *p0, *p1;
263 {if (regx0 <= limm1) return 1; else return 0;}
264 
regx0adr1(r0,r1,x0,x1,p0,p1)265 regx0adr1 (r0, r1, x0, x1, p0, p1)
266 type r0, r1;  type *p0, *p1;
267 {if (regx0 <= adr1) return 1; else return 0;}
268 
regx0adrreg1(r0,r1,x0,x1,p0,p1)269 regx0adrreg1 (r0, r1, x0, x1, p0, p1)
270 type r0, r1;  type *p0, *p1;
271 {if (regx0 <= adrreg1) return 1; else return 0;}
272 
regx0adrx1(r0,r1,x0,x1,p0,p1)273 regx0adrx1 (r0, r1, x0, x1, p0, p1)
274 type r0, r1;  type *p0, *p1;
275 {if (regx0 <= adrx1) return 1; else return 0;}
276 
regx0regx1(r0,r1,x0,x1,p0,p1)277 regx0regx1 (r0, r1, x0, x1, p0, p1)
278 type r0, r1;  type *p0, *p1;
279 {if (regx0 <= regx1) return 1; else return 0;}
280 
281