summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2012-04-03 05:20:24 +0000
committerCraig Topper <craig.topper@gmail.com>2012-04-03 05:20:24 +0000
commit7629d63bc432d8ecbc4632bc353709622dc8ea28 (patch)
tree962b247102b346feeadbd14207315d05f16b2d64 /llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
parenteedc49c3d4701a6614ea6e804e29b957acedb9a7 (diff)
downloadbcm5719-llvm-7629d63bc432d8ecbc4632bc353709622dc8ea28.tar.gz
bcm5719-llvm-7629d63bc432d8ecbc4632bc353709622dc8ea28.zip
Add support for AVX enhanced comparison predicates. Patch from Kay Tiong Khoo.
llvm-svn: 153935
Diffstat (limited to 'llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c')
-rw-r--r--llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
index fbd81d2d009..602087756b2 100644
--- a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
+++ b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c
@@ -1527,6 +1527,9 @@ static int readOperands(struct InternalInstruction* insn) {
if (insn->spec->operands[index].type == TYPE_IMM3 &&
insn->immediates[insn->numImmediatesConsumed - 1] > 7)
return -1;
+ if (insn->spec->operands[index].type == TYPE_IMM5 &&
+ insn->immediates[insn->numImmediatesConsumed - 1] > 31)
+ return -1;
if (insn->spec->operands[index].type == TYPE_XMM128 ||
insn->spec->operands[index].type == TYPE_XMM256)
sawRegImm = 1;
OpenPOWER on IntegriCloud