Lines Matching refs:TRUNCATE

944     setOperationAction(ISD::TRUNCATE, VT, Expand);  in X86TargetLowering()
1182 setOperationAction(ISD::TRUNCATE, MVT::v2i8, Custom); in X86TargetLowering()
1183 setOperationAction(ISD::TRUNCATE, MVT::v2i16, Custom); in X86TargetLowering()
1184 setOperationAction(ISD::TRUNCATE, MVT::v2i32, Custom); in X86TargetLowering()
1185 setOperationAction(ISD::TRUNCATE, MVT::v4i8, Custom); in X86TargetLowering()
1186 setOperationAction(ISD::TRUNCATE, MVT::v4i16, Custom); in X86TargetLowering()
1187 setOperationAction(ISD::TRUNCATE, MVT::v8i8, Custom); in X86TargetLowering()
1418 setOperationAction(ISD::TRUNCATE, MVT::v16i8, Custom); in X86TargetLowering()
1419 setOperationAction(ISD::TRUNCATE, MVT::v8i16, Custom); in X86TargetLowering()
1420 setOperationAction(ISD::TRUNCATE, MVT::v4i32, Custom); in X86TargetLowering()
1634 setOperationAction(ISD::TRUNCATE, VT, Custom); in X86TargetLowering()
1728 setOperationAction(ISD::TRUNCATE, MVT::v8i32, Legal); in X86TargetLowering()
1729 setOperationAction(ISD::TRUNCATE, MVT::v16i16, Legal); in X86TargetLowering()
1730 setOperationAction(ISD::TRUNCATE, MVT::v32i8, HasBWI ? Legal : Custom); in X86TargetLowering()
1731 setOperationAction(ISD::TRUNCATE, MVT::v16i64, Custom); in X86TargetLowering()
1997 setOperationAction(ISD::TRUNCATE, VT, Custom); in X86TargetLowering()
2229 setOperationAction(ISD::TRUNCATE, MVT::v16i32, Custom); in X86TargetLowering()
2230 setOperationAction(ISD::TRUNCATE, MVT::v8i64, Custom); in X86TargetLowering()
2231 setOperationAction(ISD::TRUNCATE, MVT::v16i64, Custom); in X86TargetLowering()
2353 ISD::TRUNCATE, in X86TargetLowering()
2773 Val = DAG.getNode(ISD::TRUNCATE, DL, MVT::getIntegerVT(ValueBits), Val); in joinRegisterPartsIntoValue()
3428 ValReturned = DAG.getNode(ISD::TRUNCATE, Dl, maskLen, ValReturned); in lowerRegToMasks()
3518 Val = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), Val); in LowerCallResult()
3754 : DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), Val)) in LowerMemArgument()
4144 ArgValue = DAG.getNode(ISD::TRUNCATE, dl, VA.getValVT(), ArgValue); in LowerFormalArguments()
4960 if (Op == ISD::TRUNCATE) { in MatchingStackOffset()
8381 while (Scl.getOpcode() == ISD::TRUNCATE || in getFauxShuffleMask()
8914 Elt = DAG.getNode(ISD::TRUNCATE, dl, MVT::i16, Elt); in LowerBuildVectorv16i8()
9162 case ISD::TRUNCATE: in findEltLoadSrc()
12327 return DAG.getNode(ISD::TRUNCATE, DL, DstVT, Src); in getAVX512TruncNode()
12331 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Src); in getAVX512TruncNode()
12337 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Src); in getAVX512TruncNode()
12398 if (Src.getOpcode() != ISD::TRUNCATE || in lowerShuffleWithVPMOV()
14367 DAG.getNode(ISD::TRUNCATE, DL, EltVT, Scalar)); in lowerShuffleAsTruncBroadcast()
19286 return DAG.getNode(ISD::TRUNCATE, DL, VT, Shuffle); in lower1BitShuffle()
19637 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, in LowerEXTRACT_VECTOR_ELT_SSE4()
19644 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT_SSE4()
19695 return DAG.getNode(ISD::TRUNCATE, dl, EltVT, Elt); in ExtractBitFromMaskVector()
19797 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i16, in LowerEXTRACT_VECTOR_ELT()
19804 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT()
19825 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
19836 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
19889 return DAG.getNode(ISD::TRUNCATE, dl, VecVT, ExtOp); in InsertBitToMaskVector()
20940 IsNeg = DAG.getNode(ISD::TRUNCATE, DL, MVT::v4i32, IsNeg); in lowerINT_TO_FP_vXi64()
21865 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in SplitAndExtendv16i1()
21915 SelectedVal = DAG.getNode(ISD::TRUNCATE, DL, WideVT, SelectedVal); in LowerZERO_EXTEND_Mask()
22103 Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Lo); in LowerTruncateVecI1()
22104 Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Hi); in LowerTruncateVecI1()
22154 Lo = DAG.getNode(ISD::TRUNCATE, DL, LoVT, Lo); in LowerTRUNCATE()
22155 Hi = DAG.getNode(ISD::TRUNCATE, DL, HiVT, Hi); in LowerTRUNCATE()
22371 Res = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Res); in LowerFP_TO_INT()
22409 Res = DAG.getNode(ISD::TRUNCATE, dl, ResVT, Res); in LowerFP_TO_INT()
22433 Res = DAG.getNode(ISD::TRUNCATE, dl, MVT::v8i16, Res); in LowerFP_TO_INT()
22610 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerFP_TO_INT()
22634 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerFP_TO_INT()
22818 return DAG.getNode(ISD::TRUNCATE, dl, DstVT, FpToInt); in LowerFP_TO_INT_SAT()
22851 FpToInt = DAG.getNode(ISD::TRUNCATE, dl, DstVT, FpToInt); in LowerFP_TO_INT_SAT()
23076 return DAG.getNode(ISD::TRUNCATE, DL, MVT::i16, in LowerFP_TO_BF16()
23354 Src = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Src); in getBT()
23534 case ISD::TRUNCATE: { in MatchVectorAllZeroTest()
23601 if (User->getOpcode() == ISD::TRUNCATE && User->hasOneUse()) { in hasNonFlagsUse()
23762 if (Op0.getOpcode() == ISD::TRUNCATE) { in EmitCmp()
23765 } else if (Op1.getOpcode() == ISD::TRUNCATE) { in EmitCmp()
23784 Op0 = DAG.getNode(ISD::TRUNCATE, dl, CmpVT, Op0); in EmitCmp()
23785 Op1 = DAG.getNode(ISD::TRUNCATE, dl, CmpVT, Op1); in EmitCmp()
24008 if (Op0.getOpcode() == ISD::TRUNCATE) in LowerAndToBT()
24010 if (Op1.getOpcode() == ISD::TRUNCATE) in LowerAndToBT()
25024 if (V.getOpcode() != ISD::TRUNCATE) in isTruncWithZeroHighBitsInput()
25201 Neg = DAG.getNode(ISD::TRUNCATE, DL, VT, CmpOp0); in LowerSELECT()
25312 Op1.getOpcode() == ISD::TRUNCATE && Op2.getOpcode() == ISD::TRUNCATE) { in LowerSELECT()
25319 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
25336 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
25391 V = DAG.getNode(ISD::TRUNCATE, dl, WideVT, V); in LowerSIGN_EXTEND_Mask()
25671 StoredVal = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, StoredVal); in LowerStore()
28533 Shift = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, Shift); in LowerFLT_ROUNDS_()
28601 DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in LowerSET_ROUNDING()
28687 SDValue TruncNode = DAG.getNode(ISD::TRUNCATE, dl, VT, CtlzNode); in LowerVectorCTLZ_AVX512CDI()
28833 Op = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Op); in LowerCTLZ()
29034 ISD::TRUNCATE, dl, VT, in LowerMUL()
29332 return DAG.getNode(ISD::TRUNCATE, dl, VT, Mul); in LowerMULH()
29393 SDValue Low = DAG.getNode(ISD::TRUNCATE, dl, VT, Mul); in LowerMULO()
29417 High = DAG.getNode(ISD::TRUNCATE, dl, VT, High); in LowerMULO()
29436 High = DAG.getNode(ISD::TRUNCATE, dl, VT, High); in LowerMULO()
30134 return DAG.getNode(ISD::TRUNCATE, dl, VT, in LowerShift()
30493 return DAG.getNode(ISD::TRUNCATE, DL, VT, Res); in LowerFunnelShift()
30699 return DAG.getNode(ISD::TRUNCATE, DL, VT, R); in LowerRotate()
31423 return DAG.getNode(ISD::TRUNCATE, DL, VT, Op); in LowerVectorCTPOP()
31576 X = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, X); in LowerPARITY()
31591 SDValue Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, in LowerPARITY()
31594 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, X); in LowerPARITY()
31611 ISD::TRUNCATE, DL, MVT::i8, in LowerPARITY()
31613 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, X); in LowerPARITY()
31824 SetCC = DAG.getNode(ISD::TRUNCATE, DL, MVT::i1, SetCC); in LowerADDSUBCARRY()
32174 Op = DAG.getNode(ISD::TRUNCATE, dl, DstVT, Src); in LowerADDRSPACECAST()
32251 case ISD::TRUNCATE: return LowerTRUNCATE(Op, DAG); in LowerOperation()
32435 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
32461 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
32553 case ISD::TRUNCATE: { in ReplaceNodeResults()
32580 Ops[i] = DAG.getNode(ISD::TRUNCATE, dl, EltVT, Val); in ReplaceNodeResults()
32758 Res = DAG.getNode(ISD::TRUNCATE, dl, TmpVT, Res); in ReplaceNodeResults()
32807 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
38310 IsTRUNCATE ? (unsigned)ISD::TRUNCATE : (unsigned)X86ISD::VTRUNC; in combineX86ShuffleChain()
38328 if (Depth == 0 && (Root.getOpcode() == ISD::TRUNCATE || in combineX86ShuffleChain()
38339 Res = DAG.getNode(ISD::TRUNCATE, DL, IntMaskVT, Res); in combineX86ShuffleChain()
39966 if (SrcVT == MVT::i16 && Src.getOpcode() == ISD::TRUNCATE && in combineTargetShuffle()
40118 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, In); in combineTargetShuffle()
41927 TLO.DAG.getNode(ISD::TRUNCATE, SDLoc(Src), NewSrcVT, Src); in SimplifyDemandedBitsForTargetNode()
42186 case ISD::TRUNCATE: in checkBitcastSrcVectorSize()
42251 case ISD::TRUNCATE: in signExtendBitcastSrcVector()
42291 bool PreferMovMsk = Src.getOpcode() == ISD::TRUNCATE && Src.hasOneUse() && in combineBitcastvxi1()
42567 case ISD::TRUNCATE: { in combineBitcastToBoolVector()
42670 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in combineBitcast()
42679 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in combineBitcast()
42701 return DAG.getNode(ISD::TRUNCATE, SDLoc(N), VT, in combineBitcast()
42824 if (N0.getOpcode() == ISD::TRUNCATE && N0.hasOneUse()) in combineBitcast()
43480 if (ISD::TRUNCATE == Src.getOpcode() && IdxC == 0 && in combineExtractWithShuffle()
43815 Rdx = DAG.getNode(ISD::TRUNCATE, DL, ByteVT, Rdx); in combineArithReduction()
43929 Scl = DAG.getNode(ISD::TRUNCATE, dl, SrcVT.getScalarType(), Scl); in combineExtractVectorElt()
44915 ExtCond = DAG.getNode(ISD::TRUNCATE, DL, CondVT, ExtCond); in combineSelect()
45207 SetCC.getOpcode() == ISD::TRUNCATE || in checkBoolTestSetCCCombine()
45252 Op.getOpcode() == ISD::TRUNCATE) in checkBoolTestSetCCCombine()
45334 while (Carry.getOpcode() == ISD::TRUNCATE || in combineCarryThroughADD()
45553 if (CmpOp.getOpcode() == ISD::TRUNCATE) in combineSetCCMOVMSK()
46078 SDValue NewN0 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N0); in reduceVMULWidth()
46079 SDValue NewN1 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N1); in reduceVMULWidth()
46954 N0.getOpcode() == ISD::TRUNCATE && N1.isUndef() && VT == MVT::v16i8 && in combineVectorPack()
46966 return DAG.getNode(ISD::TRUNCATE, SDLoc(N), VT, Concat); in combineVectorPack()
47314 SDValue OneBitOfTruth = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in combineCompareEqual()
47398 if (N0.getOpcode() != ISD::TRUNCATE) in PromoteMaskArithmetic()
47412 bool RHSTrunc = N1.getOpcode() == ISD::TRUNCATE && in PromoteMaskArithmetic()
47783 Sub = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Sub); in combineAndLoadToBZHI()
47882 SDValue LHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N0); in combineAnd()
47883 SDValue RHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N1); in combineAnd()
47957 Src.getOpcode() == ISD::TRUNCATE) && in combineAnd()
48527 if (N0.getOpcode() != ISD::TRUNCATE || !N0.hasOneUse()) in foldXorTruncShiftIntoCmp()
48880 Op = DAG.getNode(ISD::TRUNCATE, DL, VT, Op); in detectAVGPattern()
49334 if (Value.getOpcode() == ISD::TRUNCATE && Value.getNode()->hasOneUse() && in combineMaskedStore()
49468 St->getValue().getOpcode() == ISD::TRUNCATE && in combineStore()
49493 if (V.getOpcode() == ISD::TRUNCATE && V.hasOneUse()) in combineStore()
50076 assert(N->getOpcode() == ISD::TRUNCATE && "Wrong opcode"); in combineTruncatedArithmetic()
50104 SDValue Trunc0 = DAG.getNode(ISD::TRUNCATE, DL, VT, N0); in combineTruncatedArithmetic()
50105 SDValue Trunc1 = DAG.getNode(ISD::TRUNCATE, DL, VT, N1); in combineTruncatedArithmetic()
50386 return DAG.getNode(ISD::TRUNCATE, DL, VT, DAG.getBitcast(InVT, Res)); in combinePMULH()
50390 LHS = DAG.getNode(ISD::TRUNCATE, DL, VT, LHS); in combinePMULH()
50391 RHS = DAG.getNode(ISD::TRUNCATE, DL, VT, RHS); in combinePMULH()
50953 if ((N0.getOpcode() == ISD::TRUNCATE || N0.getOpcode() == ISD::ZERO_EXTEND) && in combineXor()
51410 if ((N0.getOpcode() == ISD::ANY_EXTEND || N0.getOpcode() == ISD::TRUNCATE) && in combineSextInRegCmov()
51452 CMov = DAG.getNode(ISD::TRUNCATE, DL, DstVT, CMov); in combineSextInRegCmov()
51683 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, SDLoc(N0), in combineSext()
51840 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, SDLoc(N0), in combineZext()
52059 return DAG.getNode(ISD::TRUNCATE, DL, VT, X86SetCC.getValue(0)); in combineVectorSizedSetCCEquality()
52092 return DAG.getNode(ISD::TRUNCATE, DL, VT, in combineSetCC()
52137 if (LHS.getOpcode() == ISD::TRUNCATE && in combineSetCC()
52196 return DAG.getNode(ISD::TRUNCATE, DL, VT, Setcc); in combineSetCC()
52400 Index = DAG.getNode(ISD::TRUNCATE, DL, NewVT, Index); in combineGatherScatter()
52414 Index = DAG.getNode(ISD::TRUNCATE, DL, NewVT, Index); in combineGatherScatter()
52585 if (!Trunc.hasOneUse() || Trunc.getOpcode() != ISD::TRUNCATE) in combineToFPTruncExtElt()
52728 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Op0); in combineSIntToFP()
53097 if (Op.getOpcode() != ISD::TRUNCATE) in combineCMP()
53146 SDValue Op0 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(0)); in combineCMP()
53147 SDValue Op1 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(1)); in combineCMP()
53371 SDValue N0 = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Mul.getOperand(0)); in matchPMADDWD()
53372 SDValue N1 = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Mul.getOperand(1)); in matchPMADDWD()
54541 if (IdxVal == 0 && InOpcode == ISD::TRUNCATE && Subtarget.hasVLX() && in combineEXTRACT_SUBVECTOR()
55079 case ISD::TRUNCATE: return combineTruncate(N, DAG, Subtarget); in PerformDAGCombine()