From: Peter Johnson Date: Wed, 9 Jan 2002 07:25:16 +0000 (-0000) Subject: Be nice for debugging purposes and set effaddr sib=0 even when it's not valid. X-Git-Tag: v0.1.0~98 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f243b4d6523e8a8d671e2b449cfdbf1c5612aefd;p=yasm Be nice for debugging purposes and set effaddr sib=0 even when it's not valid. svn path=/trunk/yasm/; revision=441 --- diff --git a/modules/arch/x86/x86bc.c b/modules/arch/x86/x86bc.c index 76b66119..1680bef6 100644 --- a/modules/arch/x86/x86bc.c +++ b/modules/arch/x86/x86bc.c @@ -141,6 +141,7 @@ x86_ea_new_reg(unsigned char reg) ead->modrm = 0xC0 | (reg & 0x07); /* Mod=11, R/M=Reg, Reg=0 */ ead->valid_modrm = 1; ead->need_modrm = 1; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0; @@ -160,6 +161,7 @@ x86_ea_new_expr(expr *e) ead->modrm = 0; ead->valid_modrm = 0; ead->need_modrm = 1; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0xff; /* we won't know until we know more about expr and the BITS/address override setting */ @@ -181,6 +183,7 @@ x86_ea_new_imm(immval *imm, unsigned char im_len) ead->modrm = 0; ead->valid_modrm = 0; ead->need_modrm = 0; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0; diff --git a/src/arch/x86/x86bc.c b/src/arch/x86/x86bc.c index 76b66119..1680bef6 100644 --- a/src/arch/x86/x86bc.c +++ b/src/arch/x86/x86bc.c @@ -141,6 +141,7 @@ x86_ea_new_reg(unsigned char reg) ead->modrm = 0xC0 | (reg & 0x07); /* Mod=11, R/M=Reg, Reg=0 */ ead->valid_modrm = 1; ead->need_modrm = 1; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0; @@ -160,6 +161,7 @@ x86_ea_new_expr(expr *e) ead->modrm = 0; ead->valid_modrm = 0; ead->need_modrm = 1; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0xff; /* we won't know until we know more about expr and the BITS/address override setting */ @@ -181,6 +183,7 @@ x86_ea_new_imm(immval *imm, unsigned char im_len) ead->modrm = 0; ead->valid_modrm = 0; ead->need_modrm = 0; + ead->sib = 0; ead->valid_sib = 0; ead->need_sib = 0;