From 9e9a24253a56ad94014d5848bf4ad91ccd6cd1fb Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Wed, 26 Dec 2007 19:10:20 -0800 Subject: [PATCH] disasm: 32-bit index registers were displayed as 64 bits Fix bug where 32-bit index registers got incorrectly displayed as 64 bits: 00000000 678B040B mov eax,[ebx+rcx] 00000004 678B044B mov eax,[ebx+rcx*2] 00000008 678B045B mov eax,[ebx+rbx*2] --- disasm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/disasm.c b/disasm.c index 3b60407..ab6ac7b 100644 --- a/disasm.c +++ b/disasm.c @@ -325,7 +325,7 @@ static uint8_t *do_ea(uint8_t *data, int modrm, int asize, else if (a64) op->indexreg = rd_reg64[index | ((rex & REX_X) ? 8 : 0)]; else - op->indexreg = rd_reg64[index | ((rex & REX_X) ? 8 : 0)]; + op->indexreg = rd_reg32[index | ((rex & REX_X) ? 8 : 0)]; if (base == 5 && mod == 0) { op->basereg = -1; -- 2.7.4