diff options
| author | bellard <bellard> | 2004-10-18 00:14:16 +0000 |
|---|---|---|
| committer | bellard <bellard> | 2004-10-18 00:14:16 +0000 |
| commit | 4d9f6d2bcf2a404f3dfc6b9c95ffd9771cfc590a (patch) | |
| tree | 7c19eb6d2f0daab2b43e47e466a757912afb2765 /i386-asm.h | |
| parent | d65463809c214413d9b1943a0474133122f7fe77 (diff) | |
| download | tinycc-4d9f6d2bcf2a404f3dfc6b9c95ffd9771cfc590a.tar.gz tinycc-4d9f6d2bcf2a404f3dfc6b9c95ffd9771cfc590a.tar.bz2 | |
push/pop fixes - added fxsave and fxrstor
Diffstat (limited to 'i386-asm.h')
| -rw-r--r-- | i386-asm.h | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -120,13 +120,13 @@ ALT(DEF_ASM_OP2(movzwl, 0x0fb7, 0, OPC_MODRM, OPT_REG16 | OPT_EA, OPT_REG32)) ALT(DEF_ASM_OP1(pushw, 0x50, 0, OPC_REG | OPC_WL, OPT_REGW)) ALT(DEF_ASM_OP1(pushw, 0xff, 6, OPC_MODRM | OPC_WL, OPT_REGW | OPT_EA)) -ALT(DEF_ASM_OP1(push, 0x6a, 0, 0, OPT_IM8S)) -ALT(DEF_ASM_OP1(push, 0x68, 0, 0, OPT_IM32)) -ALT(DEF_ASM_OP1(push, 0x06, 0, 0, OPT_SEG)) +ALT(DEF_ASM_OP1(pushw, 0x6a, 0, OPC_WL, OPT_IM8S)) +ALT(DEF_ASM_OP1(pushw, 0x68, 0, OPC_WL, OPT_IM32)) +ALT(DEF_ASM_OP1(pushw, 0x06, 0, OPC_WL, OPT_SEG)) ALT(DEF_ASM_OP1(popw, 0x58, 0, OPC_REG | OPC_WL, OPT_REGW)) ALT(DEF_ASM_OP1(popw, 0x8f, 0, OPC_MODRM | OPC_WL, OPT_REGW | OPT_EA)) -ALT(DEF_ASM_OP1(pop, 0x07, 0, 0, OPT_SEG)) +ALT(DEF_ASM_OP1(popw, 0x07, 0, OPC_WL, OPT_SEG)) ALT(DEF_ASM_OP2(xchgw, 0x90, 0, OPC_REG | OPC_WL, OPT_REG, OPT_EAX)) ALT(DEF_ASM_OP2(xchgw, 0x90, 0, OPC_REG | OPC_WL, OPT_EAX, OPT_REG)) @@ -330,6 +330,8 @@ ALT(DEF_ASM_OP1(fstsw, 0xdd, 7, OPC_MODRM | OPC_FWAIT, OPT_EA )) DEF_ASM_OP1(frstor, 0xdd, 4, OPC_MODRM, OPT_EA ) DEF_ASM_OP1(ffree, 0xddc0, 4, OPC_REG, OPT_ST ) DEF_ASM_OP1(ffreep, 0xdfc0, 4, OPC_REG, OPT_ST ) + DEF_ASM_OP1(fxsave, 0x0fae, 0, OPC_MODRM, OPT_EA ) + DEF_ASM_OP1(fxrstor, 0x0fae, 1, OPC_MODRM, OPT_EA ) /* segments */ DEF_ASM_OP2(arpl, 0x63, 0, OPC_MODRM, OPT_REG16, OPT_REG16 | OPT_EA) |
