From 26fc7858dbbfcbe09626aa237571a1adb97bb7d5 Mon Sep 17 00:00:00 2001 From: Sean Callanan Date: Wed, 2 Feb 2011 01:09:02 +0000 Subject: Fixed a bug in the disassembler where the mandatory 0x66 prefix would be misinterpreted in some cases on 32-bit x86 platforms. Thanks to Olivier Meurant for identifying the bug. llvm-svn: 124709 --- llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c | 1 + 1 file changed, 1 insertion(+) (limited to 'llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c') diff --git a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c index 7b17f1e5a3a..b6546fc9e86 100644 --- a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c +++ b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c @@ -388,6 +388,7 @@ static int readPrefixes(struct InternalInstruction* insn) { } } else { unconsumeByte(insn); + insn->necessaryPrefixLocation = insn->readerCursor - 1; } if (insn->mode == MODE_16BIT) { -- cgit v1.2.3