@@ -55736,14 +55736,11 @@ static SDValue combineAVX512SetCCToKMOV(EVT VT, SDValue Op0, ISD::CondCode CC,
5573655736 return SDValue();
5573755737 }
5573855738
55739- const TargetLowering &TLI = DAG.getTargetLoweringInfo();
55740- const DataLayout &DataLayout = DAG.getDataLayout();
55741- MVT VecIdxTy = TLI.getVectorIdxTy(DataLayout);
5574255739 MVT BroadcastOpVT = Broadcast.getSimpleValueType().getVectorElementType();
5574355740 SDValue BroadcastOp;
5574455741 if (Broadcast.getOpcode() != X86ISD::VBROADCAST) {
5574555742 BroadcastOp = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, BroadcastOpVT,
55746- Broadcast, DAG.getConstant (0, DL, VecIdxTy ));
55743+ Broadcast, DAG.getVectorIdxConstant (0, DL));
5574755744 } else {
5574855745 BroadcastOp = Broadcast.getOperand(0);
5574955746 if (BroadcastOp.getValueType().isVector())
@@ -55762,6 +55759,8 @@ static SDValue combineAVX512SetCCToKMOV(EVT VT, SDValue Op0, ISD::CondCode CC,
5576255759 // not fit in an i16 and a vXi32 where X > 16 is more than 512 bits.
5576355760 SDValue Trunc = DAG.getAnyExtOrTrunc(Masked, DL, MVT::i16);
5576455761 SDValue Bitcast = DAG.getNode(ISD::BITCAST, DL, MVT::v16i1, Trunc);
55762+ const TargetLowering &TLI = DAG.getTargetLoweringInfo();
55763+ const DataLayout &DataLayout = DAG.getDataLayout();
5576555764 MVT PtrTy = TLI.getPointerTy(DataLayout);
5576655765
5576755766 if (CC == ISD::SETEQ)
@@ -55772,7 +55771,7 @@ static SDValue combineAVX512SetCCToKMOV(EVT VT, SDValue Op0, ISD::CondCode CC,
5577255771
5577355772 if (VT != MVT::v16i1)
5577455773 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, Bitcast,
55775- DAG.getConstant (0, DL, PtrTy ));
55774+ DAG.getVectorIdxConstant (0, DL));
5577655775
5577755776 return Bitcast;
5577855777}
0 commit comments