aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2016-05-02 04:50:12 +0200
committerMichael Matz <matz@suse.de>2016-05-02 04:50:12 +0200
commitd1515a0536d3906f96efa6ee399d6893f39532ce (patch)
treefa837fd12c2b9a2add449b926d2e70576c19832c
parent6afe668ec7a11736a9418a46370af89a8c657ee8 (diff)
downloadtinycc-d1515a0536d3906f96efa6ee399d6893f39532ce.tar.gz
tinycc-d1515a0536d3906f96efa6ee399d6893f39532ce.tar.bz2
i386-asm: correct lcall/ljmp encoding
The 0xff/3 form of lcall needs a mod/rm byte, so reflect this.
-rw-r--r--i386-asm.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/i386-asm.h b/i386-asm.h
index 637568b..2621db0 100644
--- a/i386-asm.h
+++ b/i386-asm.h
@@ -213,9 +213,9 @@ ALT(DEF_ASM_OP1(jmp, 0xff, 0, OPC_JMP | OPC_WL, OPT_REGW))
#endif
ALT(DEF_ASM_OP2(lcall, 0x9a, 0, 0, OPT_IM16, OPT_IM32))
-ALT(DEF_ASM_OP1(lcall, 0xff1f, 3, 0, OPT_EA))
+ALT(DEF_ASM_OP1(lcall, 0xff, 3, OPC_MODRM, OPT_EA))
ALT(DEF_ASM_OP2(ljmp, 0xea, 0, 0, OPT_IM16, OPT_IM32))
-ALT(DEF_ASM_OP1(ljmp, 0xff, 5, 0, OPT_EA))
+ALT(DEF_ASM_OP1(ljmp, 0xff, 5, OPC_MODRM, OPT_EA))
ALT(DEF_ASM_OP1(int, 0xcd, 0, 0, OPT_IM8))
ALT(DEF_ASM_OP1(seto, 0x0f90, 0, OPC_MODRM | OPC_TEST, OPT_REG8 | OPT_EA))