4 char in_b, out_b1, out_b2, in_b2;
6 short in_w, out_w1, out_w2;
8 int in_l, out_l1, out_l2;
10 extern void sbb_ib_al ( void );
12 VG_SYM(sbb_ib_al) ":\n"
14 #ifndef VGP_amd64_darwin
15 "\tmovb " VG_SYM(in_b) ", %al\n"
17 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
22 #ifndef VGP_amd64_darwin
23 "\tmovb %al, " VG_SYM(out_b1) "\n"
25 "\tmovb " VG_SYM(in_b) ", %al\n"
27 "\tmovb %al, " VG_SYM(out_b1) "(%rip)\n"
29 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
33 #ifndef VGP_amd64_darwin
34 "\tmovb %al, " VG_SYM(out_b2) "\n"
36 "\tmovb %al," VG_SYM(out_b2) "(%rip) \n"
43 extern void sbb_iw_ax ( void );
45 VG_SYM(sbb_iw_ax) ":\n"
47 #ifndef VGP_amd64_darwin
48 "\tmovw " VG_SYM(in_w) ", %ax\n"
50 "\tmovw " VG_SYM(in_w) "(%rip), %ax\n"
54 #ifndef VGP_amd64_darwin
55 "\tmovw %ax, " VG_SYM(out_w1) "\n"
57 "\tmovw " VG_SYM(in_w) ", %ax\n"
59 "\tmovw %ax, " VG_SYM(out_w1) "(%rip)\n"
61 "\tmovw " VG_SYM(in_w) "(%rip), %ax\n"
65 #ifndef VGP_amd64_darwin
66 "\tmovw %ax, " VG_SYM(out_w2) "\n"
68 "\tmovw %ax, " VG_SYM(out_w2) "(%rip)\n"
75 extern void sbb_il_eax ( void );
77 VG_SYM(sbb_il_eax) ":\n"
79 #ifndef VGP_amd64_darwin
80 "\tmovl " VG_SYM(in_l) ", %eax\n"
82 "\tmovl " VG_SYM(in_l) "(%rip), %eax\n"
85 "\tsbbl $555666, %eax\n"
86 #ifndef VGP_amd64_darwin
87 "\tmovl %eax, " VG_SYM(out_l1) "\n"
89 "\tmovl " VG_SYM(in_l) ", %eax\n"
91 "\tmovl %eax, " VG_SYM(out_l1) "(%rip)\n"
93 "\tmovl " VG_SYM(in_l) "(%rip), %eax\n"
96 "\tsbbl $555666, %eax\n"
97 #ifndef VGP_amd64_darwin
98 "\tmovl %eax, " VG_SYM(out_l2) "\n"
100 "\tmovl %eax, " VG_SYM(out_l2) "(%rip)\n"
107 extern void sbb_eb_gb ( void );
109 VG_SYM(sbb_eb_gb) ":\n"
111 #ifndef VGP_amd64_darwin
112 "\tmovb " VG_SYM(in_b) ", %al\n"
114 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
117 #ifndef VGP_amd64_darwin
118 "\tsbbb " VG_SYM(in_b2) ", %al\n"
119 "\tmovb %al, " VG_SYM(out_b1) "\n"
121 "\tmovb " VG_SYM(in_b) ", %al\n"
123 "\tsbbb " VG_SYM(in_b2) "(%rip), %al\n"
124 "\tmovb %al, " VG_SYM(out_b1) "(%rip)\n"
126 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
129 #ifndef VGP_amd64_darwin
130 "\tsbbb " VG_SYM(in_b2) ", %al\n"
131 "\tmovb %al, " VG_SYM(out_b2) "\n"
133 "\tsbbb " VG_SYM(in_b2) "(%rip), %al\n"
134 "\tmovb %al, " VG_SYM(out_b2) "(%rip)\n"
141 extern void sbb_eb_gb_2 ( void );
143 VG_SYM(sbb_eb_gb_2) ":\n"
146 #ifndef VGP_amd64_darwin
147 "\tmovb " VG_SYM(in_b) ", %cl\n"
148 "\tmovb " VG_SYM(in_b2) ", %dh\n"
150 "\tmovb " VG_SYM(in_b) "(%rip), %cl\n"
151 "\tmovb " VG_SYM(in_b2) "(%rip), %dh\n"
155 #ifndef VGP_amd64_darwin
156 "\tmovb %cl, " VG_SYM(out_b1) "\n"
158 "\tmovb " VG_SYM(in_b) ", %cl\n"
159 "\tmovb " VG_SYM(in_b2) ", %dh\n"
161 "\tmovb %cl, " VG_SYM(out_b1) "(%rip)\n"
163 "\tmovb " VG_SYM(in_b) "(%rip), %cl\n"
164 "\tmovb " VG_SYM(in_b2) "(%rip), %dh\n"
168 #ifndef VGP_amd64_darwin
169 "\tmovb %cl, " VG_SYM(out_b2) "\n"
171 "\tmovb %cl, " VG_SYM(out_b2) "(%rip)\n"
179 extern void adc_eb_gb ( void );
181 VG_SYM(adc_eb_gb) ":\n"
183 #ifndef VGP_amd64_darwin
184 "\tmovb " VG_SYM(in_b) ", %al\n"
186 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
189 #ifndef VGP_amd64_darwin
190 "\tadcb " VG_SYM(in_b2) ", %al\n"
191 "\tmovb %al, " VG_SYM(out_b1) "\n"
193 "\tmovb " VG_SYM(in_b) ", %al\n"
195 "\tadcb " VG_SYM(in_b2) "(%rip), %al\n"
196 "\tmovb %al, " VG_SYM(out_b1) "(%rip)\n"
198 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
201 #ifndef VGP_amd64_darwin
202 "\tadcb " VG_SYM(in_b2) ", %al\n"
203 "\tmovb %al, " VG_SYM(out_b2) "\n"
205 "\tadcb " VG_SYM(in_b2) "(%rip), %al\n"
206 "\tmovb %al, " VG_SYM(out_b2) "(%rip)\n"
213 extern void adc_eb_gb_2 ( void );
215 VG_SYM(adc_eb_gb_2) ":\n"
218 #ifndef VGP_amd64_darwin
219 "\tmovb " VG_SYM(in_b) ", %cl\n"
220 "\tmovb " VG_SYM(in_b2) ", %dh\n"
222 "\tmovb " VG_SYM(in_b) "(%rip), %cl\n"
223 "\tmovb " VG_SYM(in_b2) "(%rip), %dh\n"
227 #ifndef VGP_amd64_darwin
228 "\tmovb %cl, " VG_SYM(out_b1) "\n"
230 "\tmovb " VG_SYM(in_b) ", %cl\n"
231 "\tmovb " VG_SYM(in_b2) ", %dh\n"
233 "\tmovb %cl, " VG_SYM(out_b1) "(%rip)\n"
235 "\tmovb " VG_SYM(in_b) "(%rip), %cl\n"
236 "\tmovb " VG_SYM(in_b2) "(%rip), %dh\n"
240 #ifndef VGP_amd64_darwin
241 "\tmovb %cl, " VG_SYM(out_b2) "\n"
243 "\tmovb %cl, " VG_SYM(out_b2) "(%rip)\n"
250 extern void adc_ib_al ( void );
252 VG_SYM(adc_ib_al) ":\n"
254 #ifndef VGP_amd64_darwin
255 "\tmovb " VG_SYM(in_b) ", %al\n"
257 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
261 #ifndef VGP_amd64_darwin
262 "\tmovb %al, " VG_SYM(out_b1) "\n"
264 "\tmovb " VG_SYM(in_b) ", %al\n"
266 "\tmovb %al, " VG_SYM(out_b1) "(%rip)\n"
268 "\tmovb " VG_SYM(in_b) "(%rip), %al\n"
272 #ifndef VGP_amd64_darwin
273 "\tmovb %al, " VG_SYM(out_b2) "\n"
275 "\tmovb %al, " VG_SYM(out_b2) "(%rip)\n"
282 extern void adc_iw_ax ( void );
284 VG_SYM(adc_iw_ax) ":\n"
286 #ifndef VGP_amd64_darwin
287 "\tmovw " VG_SYM(in_w) ", %ax\n"
289 "\tmovw " VG_SYM(in_w) "(%rip), %ax\n"
293 #ifndef VGP_amd64_darwin
294 "\tmovw %ax, " VG_SYM(out_w1) "\n"
296 "\tmovw " VG_SYM(in_w) ", %ax\n"
298 "\tmovw %ax, " VG_SYM(out_w1) "(%rip)\n"
300 "\tmovw " VG_SYM(in_w) "(%rip), %ax\n"
304 #ifndef VGP_amd64_darwin
305 "\tmovw %ax, " VG_SYM(out_w2) "\n"
307 "\tmovw %ax, " VG_SYM(out_w2) "(%rip)\n"
314 extern void adc_il_eax ( void );
316 VG_SYM(adc_il_eax) ":\n"
318 #ifndef VGP_amd64_darwin
319 "\tmovl " VG_SYM(in_l) ", %eax\n"
321 "\tmovl " VG_SYM(in_l) "(%rip), %eax\n"
324 "\tadcl $555666, %eax\n"
325 #ifndef VGP_amd64_darwin
326 "\tmovl %eax, " VG_SYM(out_l1) "\n"
328 "\tmovl " VG_SYM(in_l) ", %eax\n"
330 "\tmovl %eax, " VG_SYM(out_l1) "(%rip)\n"
332 "\tmovl " VG_SYM(in_l) "(%rip), %eax\n"
335 "\tadcl $555666, %eax\n"
336 #ifndef VGP_amd64_darwin
337 "\tmovl %eax, " VG_SYM(out_l2) "\n"
339 "\tmovl %eax, " VG_SYM(out_l2) "(%rip)\n"
350 printf("r1 = %d %d\n", (int)out_b1, (int)out_b2);
354 printf("r2 = %d %d\n", (int)out_w1, (int)out_w2);
358 printf("r3 = %d %d\n", (int)out_l1, (int)out_l2);
363 printf("r4 = %d %d\n", (int)out_b1, (int)out_b2);
368 printf("r5 = %d %d\n", (int)out_b1, (int)out_b2);
373 printf("r6 = %d %d\n", (int)out_b1, (int)out_b2);
378 printf("r7 = %d %d\n", (int)out_b1, (int)out_b2);
382 printf("r8 = %d %d\n", (int)out_b1, (int)out_b2);
386 printf("r9 = %d %d\n", (int)out_w1, (int)out_w2);
390 printf("r10 = %d %d\n", (int)out_l1, (int)out_l2);