Revision d36cd60e target-i386/ops_template.h
b/target-i386/ops_template.h | ||
---|---|---|
229 | 229 |
return cf | pf | af | zf | sf | of; |
230 | 230 |
} |
231 | 231 |
|
232 |
#if DATA_BITS == 32 |
|
233 |
static int glue(compute_c_mul, SUFFIX)(void) |
|
234 |
{ |
|
235 |
int cf; |
|
236 |
cf = (CC_SRC != 0); |
|
237 |
return cf; |
|
238 |
} |
|
239 |
#endif |
|
240 |
|
|
241 |
/* NOTE: we compute the flags like the P4. On olders CPUs, only OF and |
|
242 |
CF are modified and it is slower to do that. */ |
|
243 |
static int glue(compute_all_mul, SUFFIX)(void) |
|
244 |
{ |
|
245 |
int cf, pf, af, zf, sf, of; |
|
246 |
cf = (CC_SRC != 0); |
|
247 |
pf = parity_table[(uint8_t)CC_DST]; |
|
248 |
af = 0; /* undefined */ |
|
249 |
zf = ((DATA_TYPE)CC_DST == 0) << 6; |
|
250 |
sf = lshift(CC_DST, 8 - DATA_BITS) & 0x80; |
|
251 |
of = cf << 11; |
|
252 |
return cf | pf | af | zf | sf | of; |
|
253 |
} |
|
254 |
|
|
232 | 255 |
/* various optimized jumps cases */ |
233 | 256 |
|
234 | 257 |
void OPPROTO glue(op_jb_sub, SUFFIX)(void) |
Also available in: Unified diff