]>
git.proxmox.com Git - mirror_qemu.git/blob - op_string.h
2 void OPPROTO
glue(glue(op_movs
, SUFFIX
), STRING_SUFFIX
)(void)
6 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
7 glue(st
, SUFFIX
)(DI_ADDR
, v
);
13 void OPPROTO
glue(glue(op_rep_movs
, SUFFIX
), STRING_SUFFIX
)(void)
18 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
19 glue(st
, SUFFIX
)(DI_ADDR
, v
);
27 void OPPROTO
glue(glue(op_stos
, SUFFIX
), STRING_SUFFIX
)(void)
30 glue(st
, SUFFIX
)(DI_ADDR
, EAX
);
35 void OPPROTO
glue(glue(op_rep_stos
, SUFFIX
), STRING_SUFFIX
)(void)
40 glue(st
, SUFFIX
)(DI_ADDR
, EAX
);
47 void OPPROTO
glue(glue(op_lods
, SUFFIX
), STRING_SUFFIX
)(void)
50 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
52 EAX
= (EAX
& ~0xff) | v
;
54 EAX
= (EAX
& ~0xffff) | v
;
62 /* don't know if it is used */
63 void OPPROTO
glue(glue(op_rep_lods
, SUFFIX
), STRING_SUFFIX
)(void)
68 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
70 EAX
= (EAX
& ~0xff) | v
;
72 EAX
= (EAX
& ~0xffff) | v
;
82 void OPPROTO
glue(glue(op_scas
, SUFFIX
), STRING_SUFFIX
)(void)
86 v
= glue(ldu
, SUFFIX
)(DI_ADDR
);
93 void OPPROTO
glue(glue(op_repz_scas
, SUFFIX
), STRING_SUFFIX
)(void)
98 /* NOTE: the flags are not modified if CX == 0 */
102 v2
= glue(ldu
, SUFFIX
)(DI_ADDR
);
110 CC_OP
= CC_OP_SUBB
+ SHIFT
;
115 void OPPROTO
glue(glue(op_repnz_scas
, SUFFIX
), STRING_SUFFIX
)(void)
120 /* NOTE: the flags are not modified if CX == 0 */
121 v1
= EAX
& DATA_MASK
;
124 v2
= glue(ldu
, SUFFIX
)(DI_ADDR
);
132 CC_OP
= CC_OP_SUBB
+ SHIFT
;
137 void OPPROTO
glue(glue(op_cmps
, SUFFIX
), STRING_SUFFIX
)(void)
140 v1
= glue(ldu
, SUFFIX
)(SI_ADDR
);
141 v2
= glue(ldu
, SUFFIX
)(DI_ADDR
);
149 void OPPROTO
glue(glue(op_repz_cmps
, SUFFIX
), STRING_SUFFIX
)(void)
155 v1
= glue(ldu
, SUFFIX
)(SI_ADDR
);
156 v2
= glue(ldu
, SUFFIX
)(DI_ADDR
);
165 CC_OP
= CC_OP_SUBB
+ SHIFT
;
170 void OPPROTO
glue(glue(op_repnz_cmps
, SUFFIX
), STRING_SUFFIX
)(void)
176 v1
= glue(ldu
, SUFFIX
)(SI_ADDR
);
177 v2
= glue(ldu
, SUFFIX
)(DI_ADDR
);
186 CC_OP
= CC_OP_SUBB
+ SHIFT
;
191 void OPPROTO
glue(glue(op_outs
, SUFFIX
), STRING_SUFFIX
)(void)
195 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
196 glue(cpu_x86_out
, SUFFIX
)(dx
, v
);
201 void OPPROTO
glue(glue(op_rep_outs
, SUFFIX
), STRING_SUFFIX
)(void)
207 v
= glue(ldu
, SUFFIX
)(SI_ADDR
);
208 glue(cpu_x86_out
, SUFFIX
)(dx
, v
);
215 void OPPROTO
glue(glue(op_ins
, SUFFIX
), STRING_SUFFIX
)(void)
219 v
= glue(cpu_x86_in
, SUFFIX
)(dx
);
220 glue(st
, SUFFIX
)(DI_ADDR
, v
);
225 void OPPROTO
glue(glue(op_rep_ins
, SUFFIX
), STRING_SUFFIX
)(void)
231 v
= glue(cpu_x86_in
, SUFFIX
)(dx
);
232 glue(st
, SUFFIX
)(DI_ADDR
, v
);