359 |
*(inst)++ = 0xcc; \ |
*(inst)++ = 0xcc; \ |
360 |
} while (0) |
} while (0) |
361 |
|
|
362 |
|
#define x86_clc(inst) do { *(inst)++ =(unsigned char)0xf8; } while (0) |
363 |
#define x86_cld(inst) do { *(inst)++ =(unsigned char)0xfc; } while (0) |
#define x86_cld(inst) do { *(inst)++ =(unsigned char)0xfc; } while (0) |
364 |
#define x86_stosb(inst) do { *(inst)++ =(unsigned char)0xaa; } while (0) |
#define x86_stosb(inst) do { *(inst)++ =(unsigned char)0xaa; } while (0) |
365 |
#define x86_stosl(inst) do { *(inst)++ =(unsigned char)0xab; } while (0) |
#define x86_stosl(inst) do { *(inst)++ =(unsigned char)0xab; } while (0) |
1037 |
#define x86_widen_reg(inst,dreg,reg,is_signed,is_half) \ |
#define x86_widen_reg(inst,dreg,reg,is_signed,is_half) \ |
1038 |
do { \ |
do { \ |
1039 |
unsigned char op = 0xb6; \ |
unsigned char op = 0xb6; \ |
1040 |
g_assert (is_half || X86_IS_BYTE_REG (reg)); \ |
assert (is_half || X86_IS_BYTE_REG (reg)); \ |
1041 |
*(inst)++ = (unsigned char)0x0f; \ |
*(inst)++ = (unsigned char)0x0f; \ |
1042 |
if ((is_signed)) op += 0x08; \ |
if ((is_signed)) op += 0x08; \ |
1043 |
if ((is_half)) op += 0x01; \ |
if ((is_half)) op += 0x01; \ |
1530 |
|
|
1531 |
#define x86_set_reg(inst,cond,reg,is_signed) \ |
#define x86_set_reg(inst,cond,reg,is_signed) \ |
1532 |
do { \ |
do { \ |
1533 |
g_assert (X86_IS_BYTE_REG (reg)); \ |
assert (X86_IS_BYTE_REG (reg)); \ |
1534 |
*(inst)++ = (unsigned char)0x0f; \ |
*(inst)++ = (unsigned char)0x0f; \ |
1535 |
if ((is_signed)) \ |
if ((is_signed)) \ |
1536 |
*(inst)++ = x86_cc_signed_map [(cond)] + 0x20; \ |
*(inst)++ = x86_cc_signed_map [(cond)] + 0x20; \ |