From: Simon Pilgrim Date: Sat, 21 Nov 2015 13:04:42 +0000 (+0000) Subject: [X86][AVX512] Added AVX512 VMOVLHPS/VMOVHLPS shuffle decode comments. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=182b10a3d4e0a5f2eb5676f5c80ac05842cd1099;p=oota-llvm.git [X86][AVX512] Added AVX512 VMOVLHPS/VMOVHLPS shuffle decode comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@253777 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/InstPrinter/X86InstComments.cpp b/lib/Target/X86/InstPrinter/X86InstComments.cpp index 3bf33dc22a9..779c2193056 100644 --- a/lib/Target/X86/InstPrinter/X86InstComments.cpp +++ b/lib/Target/X86/InstPrinter/X86InstComments.cpp @@ -292,6 +292,7 @@ bool llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS, case X86::MOVLHPSrr: case X86::VMOVLHPSrr: + case X86::VMOVLHPSZrr: Src2Name = getRegName(MI->getOperand(2).getReg()); Src1Name = getRegName(MI->getOperand(1).getReg()); DestName = getRegName(MI->getOperand(0).getReg()); @@ -300,6 +301,7 @@ bool llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS, case X86::MOVHLPSrr: case X86::VMOVHLPSrr: + case X86::VMOVHLPSZrr: Src2Name = getRegName(MI->getOperand(2).getReg()); Src1Name = getRegName(MI->getOperand(1).getReg()); DestName = getRegName(MI->getOperand(0).getReg()); @@ -657,6 +659,7 @@ bool llvm::EmitAnyX86InstComments(const MCInst *MI, raw_ostream &OS, DecodeScalarMoveMask(MVT::v2f64, nullptr == Src2Name, ShuffleMask); DestName = getRegName(MI->getOperand(0).getReg()); break; + case X86::MOVSSrr: case X86::VMOVSSrr: Src2Name = getRegName(MI->getOperand(2).getReg()); diff --git a/test/CodeGen/X86/vector-shuffle-128-v2.ll b/test/CodeGen/X86/vector-shuffle-128-v2.ll index d1eac6e695c..687fec35efe 100644 --- a/test/CodeGen/X86/vector-shuffle-128-v2.ll +++ b/test/CodeGen/X86/vector-shuffle-128-v2.ll @@ -156,20 +156,10 @@ define <2 x double> @shuffle_v2f64_11(<2 x double> %a, <2 x double> %b) { ; SSE-NEXT: movhlps {{.*#+}} xmm0 = xmm0[1,1] ; SSE-NEXT: retq ; -; AVX1-LABEL: shuffle_v2f64_11: -; AVX1: # BB#0: -; AVX1-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1] -; AVX1-NEXT: retq -; -; AVX2-LABEL: shuffle_v2f64_11: -; AVX2: # BB#0: -; AVX2-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1] -; AVX2-NEXT: retq -; -; AVX512VL-LABEL: shuffle_v2f64_11: -; AVX512VL: # BB#0: -; AVX512VL-NEXT: vmovhlps %xmm0, %xmm0, %xmm0 -; AVX512VL-NEXT: retq +; AVX-LABEL: shuffle_v2f64_11: +; AVX: # BB#0: +; AVX-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1] +; AVX-NEXT: retq %shuffle = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32> ret <2 x double> %shuffle } @@ -224,20 +214,10 @@ define <2 x double> @shuffle_v2f64_33(<2 x double> %a, <2 x double> %b) { ; SSE-NEXT: movaps %xmm1, %xmm0 ; SSE-NEXT: retq ; -; AVX1-LABEL: shuffle_v2f64_33: -; AVX1: # BB#0: -; AVX1-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1] -; AVX1-NEXT: retq -; -; AVX2-LABEL: shuffle_v2f64_33: -; AVX2: # BB#0: -; AVX2-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1] -; AVX2-NEXT: retq -; -; AVX512VL-LABEL: shuffle_v2f64_33: -; AVX512VL: # BB#0: -; AVX512VL-NEXT: vmovhlps %xmm1, %xmm1, %xmm0 -; AVX512VL-NEXT: retq +; AVX-LABEL: shuffle_v2f64_33: +; AVX: # BB#0: +; AVX-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1] +; AVX-NEXT: retq %shuffle = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32> ret <2 x double> %shuffle }