1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
| `X86BINOP(locked, binop, sz, dest_src) -> Binop (translate_bool locked, translate_binop binop, translate_size sz, translate_dest_src dest_src)
| `X86BITOP(locked, op, sz, bo) -> Bitop (translate_bool locked, translate_bitop op, translate_size sz, translate_bitoffset bo)
| `X86CALL (imm_rm) -> CALL (translate_imm_rm imm_rm)
| `X86CLC -> CLC
| `X86CMC -> CMC
| `X86CMPXCHG (locked, sz, rm , reg) -> CMPXCHG (translate_bool locked, translate_size sz, translate_rm rm, translate_reg reg)
| `X86DIV (sz, rm) -> X86_DIV (translate_size sz, translate_rm rm)
| `X86StopFetching -> HLT
| `X86JCC (cond, imm64) -> Jcc (translate_cond cond, translate_imm64 imm64)
| `X86JMP (rm) -> JMP (translate_rm rm)
| `X86LEA (sz, dest_src) -> LEA (translate_size sz, translate_dest_src dest_src)
| `X86LEAVE -> LEAVE
| `X86LOOP (cond, imm64) -> LOOP (translate_cond cond, translate_imm64 imm64)
| `X86MFENCE -> MFENCE
| `X86MONOP (locked, monop, sz, rm) -> Monop (translate_bool locked, translate_monop monop, translate_size sz, translate_rm rm)
| `X86MOV (cond, sz, dest_src) -> MOV (translate_cond cond, translate_size sz, translate_dest_src dest_src)
| `X86MOVSX (sz1, dest_src, sz2) -> MOVSX (translate_size sz1, translate_dest_src dest_src, translate_size sz2)
| `X86MOVZX (sz1, dest_src, sz2) -> MOVZX (translate_size sz1, translate_dest_src dest_src, translate_size sz2)
| `X86MUL (sz, rm) -> X86_MUL (translate_size sz, translate_rm rm)
| `X86NOP -> NOP (Nat_big_num.of_int 0)
| `X86POP (rm) -> POP (translate_rm rm)
| `X86PUSH (imm_rm) -> PUSH (translate_imm_rm imm_rm)
| `X86RET (imm64) -> RET (translate_imm64 imm64)
| `X86SET (cond, b, rm) -> SET (translate_cond cond, translate_bool b, translate_rm rm)
| `X86STC -> STC
| `X86XADD (locked, sz, rm, reg) -> XADD (translate_bool locked, translate_size sz, translate_rm rm, translate_reg reg)
| `X86XCHG (locked, sz, rm, reg) -> XCHG (translate_bool locked, translate_size sz, translate_rm rm, translate_reg reg)
|