aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2011-09-14 05:55:28 +0000
committerCraig Topper <craig.topper@gmail.com>2011-09-14 05:55:28 +0000
commit96e00e5a24e1d5beebb1f352052140c260d23f11 (patch)
treeb52231081faaaf845d0e1234fe52bdce4c109532 /llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
parent503eef7641d7cd3ce8d13bfe4dba25fbf1ce8450 (diff)
downloadllvm-96e00e5a24e1d5beebb1f352052140c260d23f11.zip
llvm-96e00e5a24e1d5beebb1f352052140c260d23f11.tar.gz
llvm-96e00e5a24e1d5beebb1f352052140c260d23f11.tar.bz2
Make disassembling of VBLEND* print immediate as a XMM/YMM register name. Fixes PR10917.
llvm-svn: 139690
Diffstat (limited to 'llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp')
-rw-r--r--llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp b/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
index 1f1c1dc..e5774bf 100644
--- a/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
+++ b/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
@@ -221,6 +221,12 @@ static void translateImmediate(MCInst &mcInst, uint64_t immediate,
}
switch (type) {
+ case TYPE_XMM128:
+ mcInst.addOperand(MCOperand::CreateReg(X86::XMM0 + (immediate >> 4)));
+ return;
+ case TYPE_XMM256:
+ mcInst.addOperand(MCOperand::CreateReg(X86::YMM0 + (immediate >> 4)));
+ return;
case TYPE_MOFFS8:
case TYPE_REL8:
if(immediate & 0x80)