diff options
author | Igor Breger <igor.breger@intel.com> | 2015-11-19 08:26:56 +0000 |
---|---|---|
committer | Igor Breger <igor.breger@intel.com> | 2015-11-19 08:26:56 +0000 |
commit | 1f78296869371be473d9201cbc6e4c904ead3e3d (patch) | |
tree | 4fe33619b248adb91ba187c658484b02acf35a4d /llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp | |
parent | 4424aaa28e27c4a05aaa23273950a041b5ad5401 (diff) | |
download | bcm5719-llvm-1f78296869371be473d9201cbc6e4c904ead3e3d.tar.gz bcm5719-llvm-1f78296869371be473d9201cbc6e4c904ead3e3d.zip |
AVX512: Implemented encoding, intrinsics and DAG lowering for VMOVDDUP instructions.
Differential Revision: http://reviews.llvm.org/D14702
llvm-svn: 253548
Diffstat (limited to 'llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp')
-rw-r--r-- | llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp | 30 |
1 files changed, 8 insertions, 22 deletions
diff --git a/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp b/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp index e3f59fb3bfd..3bf33dc22a9 100644 --- a/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp +++ b/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp @@ -309,39 +309,25 @@ bool llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS, CASE_MOVDUP(MOVSLDUP, r) Src1Name = getRegName(MI->getOperand(MI->getNumOperands() - 1).getReg()); // FALL THROUGH. - CASE_MOVDUP(MOVSLDUP, m) { - MVT VT = getRegOperandVectorVT(MI, MVT::f32, 0); + CASE_MOVDUP(MOVSLDUP, m) DestName = getRegName(MI->getOperand(0).getReg()); - DecodeMOVSLDUPMask(VT, ShuffleMask); + DecodeMOVSLDUPMask(getRegOperandVectorVT(MI, MVT::f32, 0), ShuffleMask); break; - } CASE_MOVDUP(MOVSHDUP, r) Src1Name = getRegName(MI->getOperand(MI->getNumOperands() - 1).getReg()); // FALL THROUGH. - CASE_MOVDUP(MOVSHDUP, m) { - MVT VT = getRegOperandVectorVT(MI, MVT::f32, 0); + CASE_MOVDUP(MOVSHDUP, m) DestName = getRegName(MI->getOperand(0).getReg()); - DecodeMOVSHDUPMask(VT, ShuffleMask); + DecodeMOVSHDUPMask(getRegOperandVectorVT(MI, MVT::f32, 0), ShuffleMask); break; - } - case X86::VMOVDDUPYrr: - Src1Name = getRegName(MI->getOperand(1).getReg()); - // FALL THROUGH. - case X86::VMOVDDUPYrm: - DestName = getRegName(MI->getOperand(0).getReg()); - DecodeMOVDDUPMask(MVT::v4f64, ShuffleMask); - break; - - case X86::MOVDDUPrr: - case X86::VMOVDDUPrr: - Src1Name = getRegName(MI->getOperand(1).getReg()); + CASE_MOVDUP(MOVDDUP, r) + Src1Name = getRegName(MI->getOperand(MI->getNumOperands() - 1).getReg()); // FALL THROUGH. - case X86::MOVDDUPrm: - case X86::VMOVDDUPrm: + CASE_MOVDUP(MOVDDUP, m) DestName = getRegName(MI->getOperand(0).getReg()); - DecodeMOVDDUPMask(MVT::v2f64, ShuffleMask); + DecodeMOVDDUPMask(getRegOperandVectorVT(MI, MVT::f64, 0), ShuffleMask); break; case X86::PSLLDQri: |