llvm.org GIT mirror llvm / 182b10a
[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 Simon Pilgrim 4 years ago
2 changed file(s) with 11 addition(s) and 28 deletion(s). Raw diff Collapse all Expand all
291291
292292 case X86::MOVLHPSrr:
293293 case X86::VMOVLHPSrr:
294 case X86::VMOVLHPSZrr:
294295 Src2Name = getRegName(MI->getOperand(2).getReg());
295296 Src1Name = getRegName(MI->getOperand(1).getReg());
296297 DestName = getRegName(MI->getOperand(0).getReg());
299300
300301 case X86::MOVHLPSrr:
301302 case X86::VMOVHLPSrr:
303 case X86::VMOVHLPSZrr:
302304 Src2Name = getRegName(MI->getOperand(2).getReg());
303305 Src1Name = getRegName(MI->getOperand(1).getReg());
304306 DestName = getRegName(MI->getOperand(0).getReg());
656658 DecodeScalarMoveMask(MVT::v2f64, nullptr == Src2Name, ShuffleMask);
657659 DestName = getRegName(MI->getOperand(0).getReg());
658660 break;
661
659662 case X86::MOVSSrr:
660663 case X86::VMOVSSrr:
661664 Src2Name = getRegName(MI->getOperand(2).getReg());
155155 ; SSE-NEXT: movhlps {{.*#+}} xmm0 = xmm0[1,1]
156156 ; SSE-NEXT: retq
157157 ;
158 ; AVX1-LABEL: shuffle_v2f64_11:
159 ; AVX1: # BB#0:
160 ; AVX1-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1]
161 ; AVX1-NEXT: retq
162 ;
163 ; AVX2-LABEL: shuffle_v2f64_11:
164 ; AVX2: # BB#0:
165 ; AVX2-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1]
166 ; AVX2-NEXT: retq
167 ;
168 ; AVX512VL-LABEL: shuffle_v2f64_11:
169 ; AVX512VL: # BB#0:
170 ; AVX512VL-NEXT: vmovhlps %xmm0, %xmm0, %xmm0
171 ; AVX512VL-NEXT: retq
158 ; AVX-LABEL: shuffle_v2f64_11:
159 ; AVX: # BB#0:
160 ; AVX-NEXT: vmovhlps {{.*#+}} xmm0 = xmm0[1,1]
161 ; AVX-NEXT: retq
172162 %shuffle = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32>
173163 ret <2 x double> %shuffle
174164 }
223213 ; SSE-NEXT: movaps %xmm1, %xmm0
224214 ; SSE-NEXT: retq
225215 ;
226 ; AVX1-LABEL: shuffle_v2f64_33:
227 ; AVX1: # BB#0:
228 ; AVX1-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1]
229 ; AVX1-NEXT: retq
230 ;
231 ; AVX2-LABEL: shuffle_v2f64_33:
232 ; AVX2: # BB#0:
233 ; AVX2-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1]
234 ; AVX2-NEXT: retq
235 ;
236 ; AVX512VL-LABEL: shuffle_v2f64_33:
237 ; AVX512VL: # BB#0:
238 ; AVX512VL-NEXT: vmovhlps %xmm1, %xmm1, %xmm0
239 ; AVX512VL-NEXT: retq
216 ; AVX-LABEL: shuffle_v2f64_33:
217 ; AVX: # BB#0:
218 ; AVX-NEXT: vmovhlps {{.*#+}} xmm0 = xmm1[1,1]
219 ; AVX-NEXT: retq
240220 %shuffle = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32>
241221 ret <2 x double> %shuffle
242222 }