diff options
| author | Craig Topper <craig.topper@gmail.com> | 2012-05-02 08:03:44 +0000 | 
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2012-05-02 08:03:44 +0000 | 
| commit | c73bc39c22d6e9401f7e2c82c6d51e891cf875dd (patch) | |
| tree | c7abb682d4577b29c7841fbbbb80b9a496b67b63 /llvm/lib/Target/X86/InstPrinter | |
| parent | cebf75e8cabc3772b0b9ddefe949faf6a4e5d602 (diff) | |
| download | bcm5719-llvm-c73bc39c22d6e9401f7e2c82c6d51e891cf875dd.tar.gz bcm5719-llvm-c73bc39c22d6e9401f7e2c82c6d51e891cf875dd.zip  | |
Add support for selecting AVX2 vpshuflw and vpshufhw. Add decoding support for AsmPrinter.
llvm-svn: 155982
Diffstat (limited to 'llvm/lib/Target/X86/InstPrinter')
| -rw-r--r-- | llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp | 24 | 
1 files changed, 22 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp b/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp index f532019acdf..dbee88614d6 100644 --- a/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp +++ b/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp @@ -96,7 +96,17 @@ void llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS,    case X86::PSHUFHWmi:    case X86::VPSHUFHWmi:      DestName = getRegName(MI->getOperand(0).getReg()); -    DecodePSHUFHWMask(MI->getOperand(MI->getNumOperands()-1).getImm(), +    DecodePSHUFHWMask(MVT::v8i16, +                      MI->getOperand(MI->getNumOperands()-1).getImm(), +                      ShuffleMask); +    break; +  case X86::VPSHUFHWYri: +    Src1Name = getRegName(MI->getOperand(1).getReg()); +    // FALL THROUGH. +  case X86::VPSHUFHWYmi: +    DestName = getRegName(MI->getOperand(0).getReg()); +    DecodePSHUFHWMask(MVT::v16i16, +                      MI->getOperand(MI->getNumOperands()-1).getImm(),                        ShuffleMask);      break;    case X86::PSHUFLWri: @@ -106,7 +116,17 @@ void llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS,    case X86::PSHUFLWmi:    case X86::VPSHUFLWmi:      DestName = getRegName(MI->getOperand(0).getReg()); -    DecodePSHUFLWMask(MI->getOperand(MI->getNumOperands()-1).getImm(), +    DecodePSHUFLWMask(MVT::v8i16, +                      MI->getOperand(MI->getNumOperands()-1).getImm(), +                      ShuffleMask); +    break; +  case X86::VPSHUFLWYri: +    Src1Name = getRegName(MI->getOperand(1).getReg()); +    // FALL THROUGH. +  case X86::VPSHUFLWYmi: +    DestName = getRegName(MI->getOperand(0).getReg()); +    DecodePSHUFLWMask(MVT::v16i16, +                      MI->getOperand(MI->getNumOperands()-1).getImm(),                        ShuffleMask);      break;  | 

