nooc

nooc programming language compiler
git clone git://git.nihaljere.xyz/nooc
Log | Files | Refs | LICENSE

commit 25a5e9b12fc3f19ee867e6d2b81f6a647bdfaa77
parent 316b4a26609d1410328c609db350f2173a024ce1
Author: Nihal Jere <nihal@nihaljere.xyz>
Date:   Sun,  9 Jan 2022 23:07:36 -0600

x64: fix opcodes for mov_r*_mr* instructions

Diffstat:
Mx64.c | 16++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/x64.c b/x64.c @@ -238,7 +238,7 @@ mov_mr64_r64(char *buf, enum reg dest, enum reg src) { if (buf) { *(buf++) = REX_W; - *(buf++) = 0x8B; + *(buf++) = 0x89; *(buf++) = (MOD_INDIRECT << 6) | (src << 3) | dest; } @@ -249,7 +249,7 @@ size_t mov_mr32_r32(char *buf, enum reg dest, enum reg src) { if (buf) { - *(buf++) = 0x8B; + *(buf++) = 0x89; *(buf++) = (MOD_INDIRECT << 6) | (src << 3) | dest; } @@ -261,7 +261,7 @@ mov_mr16_r16(char *buf, enum reg dest, enum reg src) { if (buf) { *(buf++) = OP_SIZE_OVERRIDE; - *(buf++) = 0x8B; + *(buf++) = 0x89; *(buf++) = (MOD_INDIRECT << 6) | (src << 3) | dest; } @@ -272,7 +272,7 @@ size_t mov_mr8_r8(char *buf, enum reg dest, enum reg src) { if (buf) { - *(buf++) = 0x8A; + *(buf++) = 0x88; *(buf++) = (MOD_INDIRECT << 6) | (src << 3) | dest; } @@ -284,7 +284,7 @@ mov_r64_mr64(char *buf, enum reg dest, enum reg src) { if (buf) { *(buf++) = REX_W; - *(buf++) = 0x89; + *(buf++) = 0x8B; *(buf++) = (MOD_INDIRECT << 6) | (dest << 3) | src; } @@ -295,7 +295,7 @@ size_t mov_r32_mr32(char *buf, enum reg dest, enum reg src) { if (buf) { - *(buf++) = 0x89; + *(buf++) = 0x8B; *(buf++) = (MOD_INDIRECT << 6) | (dest << 3) | src; } @@ -307,7 +307,7 @@ mov_r16_mr16(char *buf, enum reg dest, enum reg src) { if (buf) { *(buf++) = OP_SIZE_OVERRIDE; - *(buf++) = 0x89; + *(buf++) = 0x8B; *(buf++) = (MOD_INDIRECT << 6) | (dest << 3) | src; } @@ -318,7 +318,7 @@ size_t mov_r8_mr8(char *buf, enum reg dest, enum reg src) { if (buf) { - *(buf++) = 0x88; + *(buf++) = 0x8A; *(buf++) = (MOD_INDIRECT << 6) | (dest << 3) | src; }