@@ -54672,12 +54672,9 @@ static SDValue combineConcatVectorOps(const SDLoc &DL, MVT VT,
54672
54672
case X86ISD::ANDNP:
54673
54673
if (!IsSplat && ((VT.is256BitVector() && Subtarget.hasInt256()) ||
54674
54674
(VT.is512BitVector() && Subtarget.useAVX512Regs()))) {
54675
- MVT SrcVT = Op0.getOperand(0).getSimpleValueType();
54676
- SrcVT = MVT::getVectorVT(SrcVT.getScalarType(),
54677
- NumOps * SrcVT.getVectorNumElements());
54678
54675
return DAG.getNode(Op0.getOpcode(), DL, VT,
54679
- ConcatSubOperand(SrcVT , Ops, 0),
54680
- ConcatSubOperand(SrcVT , Ops, 1));
54676
+ ConcatSubOperand(VT , Ops, 0),
54677
+ ConcatSubOperand(VT , Ops, 1));
54681
54678
}
54682
54679
break;
54683
54680
case X86ISD::PCMPEQ:
@@ -54718,25 +54715,19 @@ static SDValue combineConcatVectorOps(const SDLoc &DL, MVT VT,
54718
54715
if (!IsSplat && ((VT.is256BitVector() && Subtarget.hasInt256()) ||
54719
54716
(VT.is512BitVector() && Subtarget.useAVX512Regs() &&
54720
54717
(EltSizeInBits >= 32 || Subtarget.useBWIRegs())))) {
54721
- MVT SrcVT = Op0.getOperand(0).getSimpleValueType();
54722
- SrcVT = MVT::getVectorVT(SrcVT.getScalarType(),
54723
- NumOps * SrcVT.getVectorNumElements());
54724
54718
return DAG.getNode(Op0.getOpcode(), DL, VT,
54725
- ConcatSubOperand(SrcVT , Ops, 0),
54726
- ConcatSubOperand(SrcVT , Ops, 1));
54719
+ ConcatSubOperand(VT , Ops, 0),
54720
+ ConcatSubOperand(VT , Ops, 1));
54727
54721
}
54728
54722
break;
54729
54723
// Due to VADD, VSUB, VMUL can executed on more ports than VINSERT and
54730
54724
// their latency are short, so here we don't replace them.
54731
54725
case ISD::FDIV:
54732
54726
if (!IsSplat && (VT.is256BitVector() ||
54733
54727
(VT.is512BitVector() && Subtarget.useAVX512Regs()))) {
54734
- MVT SrcVT = Op0.getOperand(0).getSimpleValueType();
54735
- SrcVT = MVT::getVectorVT(SrcVT.getScalarType(),
54736
- NumOps * SrcVT.getVectorNumElements());
54737
54728
return DAG.getNode(Op0.getOpcode(), DL, VT,
54738
- ConcatSubOperand(SrcVT , Ops, 0),
54739
- ConcatSubOperand(SrcVT , Ops, 1));
54729
+ ConcatSubOperand(VT , Ops, 0),
54730
+ ConcatSubOperand(VT , Ops, 1));
54740
54731
}
54741
54732
break;
54742
54733
case X86ISD::HADD:
@@ -54745,12 +54736,9 @@ static SDValue combineConcatVectorOps(const SDLoc &DL, MVT VT,
54745
54736
case X86ISD::FHSUB:
54746
54737
if (!IsSplat && VT.is256BitVector() &&
54747
54738
(VT.isFloatingPoint() || Subtarget.hasInt256())) {
54748
- MVT SrcVT = Op0.getOperand(0).getSimpleValueType();
54749
- SrcVT = MVT::getVectorVT(SrcVT.getScalarType(),
54750
- NumOps * SrcVT.getVectorNumElements());
54751
54739
return DAG.getNode(Op0.getOpcode(), DL, VT,
54752
- ConcatSubOperand(SrcVT , Ops, 0),
54753
- ConcatSubOperand(SrcVT , Ops, 1));
54740
+ ConcatSubOperand(VT , Ops, 0),
54741
+ ConcatSubOperand(VT , Ops, 1));
54754
54742
}
54755
54743
break;
54756
54744
case X86ISD::PACKSS:
0 commit comments