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 "\tmovb " VG_SYM(in_b
) ", %al\n"
17 "\tmovb %al, " VG_SYM(out_b1
) "\n"
19 "\tmovb " VG_SYM(in_b
) ", %al\n"
22 "\tmovb %al, " VG_SYM(out_b2
) "\n"
28 extern void sbb_iw_ax ( void );
30 VG_SYM(sbb_iw_ax
) ":\n"
32 "\tmovw " VG_SYM(in_w
) ", %ax\n"
35 "\tmovw %ax, " VG_SYM(out_w1
) "\n"
37 "\tmovw " VG_SYM(in_w
) ", %ax\n"
40 "\tmovw %ax, " VG_SYM(out_w2
) "\n"
46 extern void sbb_il_eax ( void );
48 VG_SYM(sbb_il_eax
) ":\n"
50 "\tmovl " VG_SYM(in_l
) ", %eax\n"
52 "\tsbbl $555666, %eax\n"
53 "\tmovl %eax, " VG_SYM(out_l1
) "\n"
55 "\tmovl " VG_SYM(in_l
) ", %eax\n"
57 "\tsbbl $555666, %eax\n"
58 "\tmovl %eax, " VG_SYM(out_l2
) "\n"
64 extern void sbb_eb_gb ( void );
66 VG_SYM(sbb_eb_gb
) ":\n"
68 "\tmovb " VG_SYM(in_b
) ", %al\n"
70 "\tsbbb " VG_SYM(in_b2
) ", %al\n"
71 "\tmovb %al, " VG_SYM(out_b1
) "\n"
73 "\tmovb " VG_SYM(in_b
) ", %al\n"
75 "\tsbbb " VG_SYM(in_b2
) ", %al\n"
76 "\tmovb %al, " VG_SYM(out_b2
) "\n"
82 extern void sbb_eb_gb_2 ( void );
84 VG_SYM(sbb_eb_gb_2
) ":\n"
87 "\tmovb " VG_SYM(in_b
) ", %cl\n"
88 "\tmovb " VG_SYM(in_b2
) ", %dh\n"
91 "\tmovb %cl, " VG_SYM(out_b1
) "\n"
93 "\tmovb " VG_SYM(in_b
) ", %cl\n"
94 "\tmovb " VG_SYM(in_b2
) ", %dh\n"
97 "\tmovb %cl, " VG_SYM(out_b2
) "\n"
104 extern void adc_eb_gb ( void );
106 VG_SYM(adc_eb_gb
) ":\n"
108 "\tmovb " VG_SYM(in_b
) ", %al\n"
110 "\tadcb " VG_SYM(in_b2
) ", %al\n"
111 "\tmovb %al, " VG_SYM(out_b1
) "\n"
113 "\tmovb " VG_SYM(in_b
) ", %al\n"
115 "\tadcb " VG_SYM(in_b2
) ", %al\n"
116 "\tmovb %al, " VG_SYM(out_b2
) "\n"
122 extern void adc_eb_gb_2 ( void );
124 VG_SYM(adc_eb_gb_2
) ":\n"
127 "\tmovb " VG_SYM(in_b
) ", %cl\n"
128 "\tmovb " VG_SYM(in_b2
) ", %dh\n"
131 "\tmovb %cl, " VG_SYM(out_b1
) "\n"
133 "\tmovb " VG_SYM(in_b
) ", %cl\n"
134 "\tmovb " VG_SYM(in_b2
) ", %dh\n"
137 "\tmovb %cl, " VG_SYM(out_b2
) "\n"
143 extern void adc_ib_al ( void );
145 VG_SYM(adc_ib_al
) ":\n"
147 "\tmovb " VG_SYM(in_b
) ", %al\n"
150 "\tmovb %al, " VG_SYM(out_b1
) "\n"
152 "\tmovb " VG_SYM(in_b
) ", %al\n"
155 "\tmovb %al, " VG_SYM(out_b2
) "\n"
161 extern void adc_iw_ax ( void );
163 VG_SYM(adc_iw_ax
) ":\n"
165 "\tmovw " VG_SYM(in_w
) ", %ax\n"
168 "\tmovw %ax, " VG_SYM(out_w1
) "\n"
170 "\tmovw " VG_SYM(in_w
) ", %ax\n"
173 "\tmovw %ax, " VG_SYM(out_w2
) "\n"
179 extern void adc_il_eax ( void );
181 VG_SYM(adc_il_eax
) ":\n"
183 "\tmovl " VG_SYM(in_l
) ", %eax\n"
185 "\tadcl $555666, %eax\n"
186 "\tmovl %eax, " VG_SYM(out_l1
) "\n"
188 "\tmovl " VG_SYM(in_l
) ", %eax\n"
190 "\tadcl $555666, %eax\n"
191 "\tmovl %eax, " VG_SYM(out_l2
) "\n"
201 printf("r1 = %d %d\n", (int)out_b1
, (int)out_b2
);
205 printf("r2 = %d %d\n", (int)out_w1
, (int)out_w2
);
209 printf("r3 = %d %d\n", (int)out_l1
, (int)out_l2
);
214 printf("r4 = %d %d\n", (int)out_b1
, (int)out_b2
);
219 printf("r5 = %d %d\n", (int)out_b1
, (int)out_b2
);
224 printf("r6 = %d %d\n", (int)out_b1
, (int)out_b2
);
229 printf("r7 = %d %d\n", (int)out_b1
, (int)out_b2
);
233 printf("r8 = %d %d\n", (int)out_b1
, (int)out_b2
);
237 printf("r9 = %d %d\n", (int)out_w1
, (int)out_w2
);
241 printf("r10 = %d %d\n", (int)out_l1
, (int)out_l2
);