diff options
Diffstat (limited to 'opcodes/i386-dis.c')
-rw-r--r-- | opcodes/i386-dis.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index aebb71e..2f26e06 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -6390,13 +6390,11 @@ CRC32_Fixup (int bytemode, int sizeflag) USED_REX (REX_W); if (rex & REX_W) *p++ = 'q'; - else if ((prefixes & PREFIX_DATA)) - { - *p++ = 'w'; - used_prefixes |= (prefixes & PREFIX_DATA); - } + else if (sizeflag & DFLAG) + *p++ = intel_syntax ? 'd' : 'l'; else - *p++ = 'l'; + *p++ = 'w'; + used_prefixes |= (prefixes & PREFIX_DATA); break; default: oappend (INTERNAL_DISASSEMBLER_ERROR); @@ -6434,5 +6432,5 @@ CRC32_Fixup (int bytemode, int sizeflag) } } else - OP_E (v_mode, sizeflag); + OP_E (bytemode, sizeflag); } |