Lines Matching refs:TRUNCATE
1010 setOperationAction(ISD::TRUNCATE, VT, Expand); in X86TargetLowering()
1268 setOperationAction(ISD::TRUNCATE, MVT::v2i8, Custom); in X86TargetLowering()
1269 setOperationAction(ISD::TRUNCATE, MVT::v2i16, Custom); in X86TargetLowering()
1270 setOperationAction(ISD::TRUNCATE, MVT::v2i32, Custom); in X86TargetLowering()
1271 setOperationAction(ISD::TRUNCATE, MVT::v2i64, Custom); in X86TargetLowering()
1272 setOperationAction(ISD::TRUNCATE, MVT::v4i8, Custom); in X86TargetLowering()
1273 setOperationAction(ISD::TRUNCATE, MVT::v4i16, Custom); in X86TargetLowering()
1274 setOperationAction(ISD::TRUNCATE, MVT::v4i32, Custom); in X86TargetLowering()
1275 setOperationAction(ISD::TRUNCATE, MVT::v4i64, Custom); in X86TargetLowering()
1276 setOperationAction(ISD::TRUNCATE, MVT::v8i8, Custom); in X86TargetLowering()
1277 setOperationAction(ISD::TRUNCATE, MVT::v8i16, Custom); in X86TargetLowering()
1278 setOperationAction(ISD::TRUNCATE, MVT::v8i32, Custom); in X86TargetLowering()
1279 setOperationAction(ISD::TRUNCATE, MVT::v8i64, Custom); in X86TargetLowering()
1280 setOperationAction(ISD::TRUNCATE, MVT::v16i8, Custom); in X86TargetLowering()
1281 setOperationAction(ISD::TRUNCATE, MVT::v16i16, Custom); in X86TargetLowering()
1282 setOperationAction(ISD::TRUNCATE, MVT::v16i32, Custom); in X86TargetLowering()
1283 setOperationAction(ISD::TRUNCATE, MVT::v16i64, Custom); in X86TargetLowering()
1525 setOperationAction(ISD::TRUNCATE, MVT::v32i8, Custom); in X86TargetLowering()
1526 setOperationAction(ISD::TRUNCATE, MVT::v32i16, Custom); in X86TargetLowering()
1527 setOperationAction(ISD::TRUNCATE, MVT::v32i32, Custom); in X86TargetLowering()
1528 setOperationAction(ISD::TRUNCATE, MVT::v32i64, Custom); in X86TargetLowering()
1745 setOperationAction(ISD::TRUNCATE, VT, Custom); in X86TargetLowering()
1857 setOperationAction(ISD::TRUNCATE, MVT::v8i32, Legal); in X86TargetLowering()
1858 setOperationAction(ISD::TRUNCATE, MVT::v16i16, Legal); in X86TargetLowering()
1859 setOperationAction(ISD::TRUNCATE, MVT::v32i8, HasBWI ? Legal : Custom); in X86TargetLowering()
2137 setOperationAction(ISD::TRUNCATE, VT, Custom); in X86TargetLowering()
2542 ISD::TRUNCATE, in X86TargetLowering()
6030 while (Scl.getOpcode() == ISD::TRUNCATE || in getFauxShuffleMask()
6613 Elt = DAG.getNode(ISD::TRUNCATE, DL, MVT::i16, Elt); in LowerBuildVectorv16i8()
6861 case ISD::TRUNCATE: in findEltLoadSrc()
10111 return DAG.getNode(ISD::TRUNCATE, DL, DstVT, Src); in getAVX512TruncNode()
10115 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Src); in getAVX512TruncNode()
10121 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Src); in getAVX512TruncNode()
10181 if (Src.getOpcode() == ISD::TRUNCATE && in lowerShuffleWithVPMOV()
12388 DAG.getNode(ISD::TRUNCATE, DL, EltVT, Scalar)); in lowerShuffleAsTruncBroadcast()
17484 return DAG.getNode(ISD::TRUNCATE, DL, VT, Shuffle); in lower1BitShuffle()
17905 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, in LowerEXTRACT_VECTOR_ELT_SSE4()
17912 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT_SSE4()
17962 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, DAG.getBitcast(IntVT, Vec)); in ExtractBitFromMaskVector()
17968 return DAG.getNode(ISD::TRUNCATE, dl, EltVT, Elt); in ExtractBitFromMaskVector()
18097 return DAG.getNode(ISD::TRUNCATE, dl, MVT::i16, in LowerEXTRACT_VECTOR_ELT()
18104 return DAG.getNode(ISD::TRUNCATE, dl, VT, Extract); in LowerEXTRACT_VECTOR_ELT()
18128 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
18140 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerEXTRACT_VECTOR_ELT()
18194 return DAG.getNode(ISD::TRUNCATE, dl, VecVT, ExtOp); in InsertBitToMaskVector()
19290 IsNeg = DAG.getNode(ISD::TRUNCATE, DL, MVT::v4i32, IsNeg); in lowerINT_TO_FP_vXi64()
20222 return DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in SplitAndExtendv16i1()
20271 SelectedVal = DAG.getNode(ISD::TRUNCATE, DL, WideVT, SelectedVal); in LowerZERO_EXTEND_Mask()
20610 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, In); in LowerTruncateVecPack()
20671 Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Lo); in LowerTruncateVecI1()
20672 Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::v8i1, Hi); in LowerTruncateVecI1()
20720 Lo = DAG.getNode(ISD::TRUNCATE, DL, LoVT, Lo); in LowerTRUNCATE()
20721 Hi = DAG.getNode(ISD::TRUNCATE, DL, HiVT, Hi); in LowerTRUNCATE()
20910 Res = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Res); in LowerFP_TO_INT()
20948 Res = DAG.getNode(ISD::TRUNCATE, dl, ResVT, Res); in LowerFP_TO_INT()
20977 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerFP_TO_INT()
21154 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerFP_TO_INT()
21178 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in LowerFP_TO_INT()
21367 return DAG.getNode(ISD::TRUNCATE, dl, DstVT, FpToInt); in LowerFP_TO_INT_SAT()
21400 FpToInt = DAG.getNode(ISD::TRUNCATE, dl, DstVT, FpToInt); in LowerFP_TO_INT_SAT()
21999 Src = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Src); in getBT()
22200 return DAG.getNode(ISD::TRUNCATE, DL, VT, X86SetCC.getValue(0)); in combineVectorSizedSetCCEquality()
22458 case ISD::TRUNCATE: { in MatchVectorAllEqualTest()
22544 if (Src.getOpcode() == ISD::TRUNCATE) { in MatchVectorAllEqualTest()
22568 if (User->getOpcode() == ISD::TRUNCATE && User->hasOneUse()) { in hasNonFlagsUse()
22734 if (Op0.getOpcode() == ISD::TRUNCATE) { in EmitCmp()
22737 } else if (Op1.getOpcode() == ISD::TRUNCATE) { in EmitCmp()
22756 Op0 = DAG.getNode(ISD::TRUNCATE, dl, CmpVT, Op0); in EmitCmp()
22757 Op1 = DAG.getNode(ISD::TRUNCATE, dl, CmpVT, Op1); in EmitCmp()
22977 if (Op0.getOpcode() == ISD::TRUNCATE) in LowerAndToBT()
22979 if (Op1.getOpcode() == ISD::TRUNCATE) in LowerAndToBT()
24032 if (V.getOpcode() != ISD::TRUNCATE) in isTruncWithZeroHighBitsInput()
24209 Neg = DAG.getNode(ISD::TRUNCATE, DL, VT, CmpOp0); in LowerSELECT()
24319 Op1.getOpcode() == ISD::TRUNCATE && Op2.getOpcode() == ISD::TRUNCATE) { in LowerSELECT()
24326 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
24343 return DAG.getNode(ISD::TRUNCATE, DL, Op.getValueType(), Cmov); in LowerSELECT()
24396 V = DAG.getNode(ISD::TRUNCATE, dl, WideVT, V); in LowerSIGN_EXTEND_Mask()
24688 StoredVal = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, StoredVal); in LowerStore()
27671 Shift = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, Shift); in LowerGET_ROUNDING()
27741 DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in LowerSET_ROUNDING()
27943 SDValue TruncNode = DAG.getNode(ISD::TRUNCATE, dl, VT, CtlzNode); in LowerVectorCTLZ_AVX512CDI()
28089 Op = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Op); in LowerCTLZ()
28448 return DAG.getNode(ISD::TRUNCATE, dl, VT, AbsDiff); in LowerABD()
28482 ISD::TRUNCATE, dl, VT, in LowerMUL()
28807 return DAG.getNode(ISD::TRUNCATE, dl, VT, Mul); in LowerMULH()
28868 SDValue Low = DAG.getNode(ISD::TRUNCATE, dl, VT, Mul); in LowerMULO()
28892 High = DAG.getNode(ISD::TRUNCATE, dl, VT, High); in LowerMULO()
28911 High = DAG.getNode(ISD::TRUNCATE, dl, VT, High); in LowerMULO()
29694 return DAG.getNode(ISD::TRUNCATE, dl, VT, in LowerShift()
30089 return DAG.getNode(ISD::TRUNCATE, DL, VT, Res); in LowerFunnelShift()
30333 return DAG.getNode(ISD::TRUNCATE, DL, VT, R); in LowerRotate()
31336 return DAG.getNode(ISD::TRUNCATE, DL, VT, Op); in LowerVectorCTPOP()
31591 X = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, X); in LowerPARITY()
31606 SDValue Hi = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, in LowerPARITY()
31609 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, X); in LowerPARITY()
31626 ISD::TRUNCATE, DL, MVT::i8, in LowerPARITY()
31628 SDValue Lo = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, X); in LowerPARITY()
31847 SetCC = DAG.getNode(ISD::TRUNCATE, DL, MVT::i1, SetCC); in LowerADDSUBO_CARRY()
32197 Op = DAG.getNode(ISD::TRUNCATE, dl, DstVT, Src); in LowerADDRSPACECAST()
32389 case ISD::TRUNCATE: return LowerTRUNCATE(Op, DAG); in LowerOperation()
32563 Op = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, Op); in ReplaceNodeResults()
32597 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
32623 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
32715 case ISD::TRUNCATE: { in ReplaceNodeResults()
32805 Results.push_back(DAG.getNode(ISD::TRUNCATE, dl, WidenVT, WidenIn)); in ReplaceNodeResults()
32948 Res = DAG.getNode(ISD::TRUNCATE, dl, TmpVT, Res); in ReplaceNodeResults()
32997 Res = DAG.getNode(ISD::TRUNCATE, dl, VT, Res); in ReplaceNodeResults()
38931 IsTRUNCATE ? (unsigned)ISD::TRUNCATE : (unsigned)X86ISD::VTRUNC; in combineX86ShuffleChain()
38949 if (Depth == 0 && (Root.getOpcode() == ISD::TRUNCATE || in combineX86ShuffleChain()
38960 Res = DAG.getNode(ISD::TRUNCATE, DL, IntMaskVT, Res); in combineX86ShuffleChain()
40829 if (SrcVT == MVT::i16 && Src.getOpcode() == ISD::TRUNCATE && in combineTargetShuffle()
40981 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, DL, MVT::i32, In); in combineTargetShuffle()
42989 TLO.DAG.getNode(ISD::TRUNCATE, SDLoc(Src), NewSrcVT, Src); in SimplifyDemandedBitsForTargetNode()
43366 case ISD::TRUNCATE: in checkBitcastSrcVectorSize()
43444 case ISD::TRUNCATE: in signExtendBitcastSrcVector()
43491 bool PreferMovMsk = Src.getOpcode() == ISD::TRUNCATE && Src.hasOneUse() && in combineBitcastvxi1()
43607 V = DAG.getNode(ISD::TRUNCATE, DL, MVT::v16i8, V); in combineBitcastvxi1()
43798 case ISD::TRUNCATE: { in combineBitcastToBoolVector()
43910 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in combineBitcast()
43919 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in combineBitcast()
43941 return DAG.getNode(ISD::TRUNCATE, SDLoc(N), VT, in combineBitcast()
44066 if (N0.getOpcode() == ISD::TRUNCATE && N0.hasOneUse()) in combineBitcast()
44402 return DAG.getNode(ISD::TRUNCATE, DL, ExtractVT, in combinePredicateReduction()
44768 if (ISD::TRUNCATE == Src.getOpcode() && IdxC == 0 && in combineExtractWithShuffle()
45113 Rdx = DAG.getNode(ISD::TRUNCATE, DL, ByteVT, Rdx); in combineArithReduction()
45242 Scl = DAG.getNode(ISD::TRUNCATE, dl, SrcVT.getScalarType(), Scl); in combineExtractVectorElt()
45343 if (CIdx && InputVector.getOpcode() == ISD::TRUNCATE) { in combineExtractVectorElt()
46249 ExtCond = DAG.getNode(ISD::TRUNCATE, DL, CondVT, ExtCond); in combineSelect()
46636 SetCC.getOpcode() == ISD::TRUNCATE || in checkBoolTestSetCCCombine()
46681 Op.getOpcode() == ISD::TRUNCATE) in checkBoolTestSetCCCombine()
46763 while (Carry.getOpcode() == ISD::TRUNCATE || in combineCarryThroughADD()
47003 if (CmpOp.getOpcode() == ISD::TRUNCATE) in combineSetCCMOVMSK()
47398 if (Cond0.getOpcode() == ISD::TRUNCATE) in combineCMov()
47582 SDValue NewN0 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N0); in reduceVMULWidth()
47583 SDValue NewN1 = DAG.getNode(ISD::TRUNCATE, DL, ReducedVT, N1); in reduceVMULWidth()
48554 N0.getOpcode() == ISD::TRUNCATE && N1.isUndef() && VT == MVT::v16i8 && in combineVectorPack()
48566 return DAG.getNode(ISD::TRUNCATE, SDLoc(N), VT, Concat); in combineVectorPack()
48977 SDValue OneBitOfTruth = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, in combineCompareEqual()
49125 if (N0.getOpcode() != ISD::TRUNCATE) in PromoteMaskArithmetic()
49139 bool RHSTrunc = N1.getOpcode() == ISD::TRUNCATE && in PromoteMaskArithmetic()
49547 Sub = DAG.getNode(ISD::TRUNCATE, dl, MVT::i8, Sub); in combineAndLoadToBZHI()
49873 SDValue LHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N0); in combineAnd()
49874 SDValue RHS = DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, N1); in combineAnd()
49989 Src.getOpcode() == ISD::TRUNCATE) && in combineAnd()
50855 if (N0.getOpcode() != ISD::TRUNCATE || !N0.hasOneUse()) in foldXorTruncShiftIntoCmp()
51589 if (Value.getOpcode() == ISD::TRUNCATE && Value.getNode()->hasOneUse() && in combineMaskedStore()
51723 St->getValue().getOpcode() == ISD::TRUNCATE && in combineStore()
51748 if (V.getOpcode() == ISD::TRUNCATE && V.hasOneUse()) in combineStore()
52320 assert(N->getOpcode() == ISD::TRUNCATE && "Wrong opcode"); in combineTruncatedArithmetic()
52348 SDValue Trunc0 = DAG.getNode(ISD::TRUNCATE, DL, VT, N0); in combineTruncatedArithmetic()
52349 SDValue Trunc1 = DAG.getNode(ISD::TRUNCATE, DL, VT, N1); in combineTruncatedArithmetic()
52463 return DAG.getNode(ISD::TRUNCATE, DL, VT, DAG.getBitcast(InVT, Res)); in combinePMULH()
52467 LHS = DAG.getNode(ISD::TRUNCATE, DL, VT, LHS); in combinePMULH()
52468 RHS = DAG.getNode(ISD::TRUNCATE, DL, VT, RHS); in combinePMULH()
53036 Op = DAG.getNode(ISD::TRUNCATE, DL, MVT::i8, Op); in combineXorSubCTLZ()
53112 if ((N0.getOpcode() == ISD::TRUNCATE || N0.getOpcode() == ISD::ZERO_EXTEND) && in combineXor()
53650 if ((N0.getOpcode() == ISD::ANY_EXTEND || N0.getOpcode() == ISD::TRUNCATE) && in combineSextInRegCmov()
53692 CMov = DAG.getNode(ISD::TRUNCATE, DL, DstVT, CMov); in combineSextInRegCmov()
53926 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, SDLoc(N0), in combineSext()
54142 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, SDLoc(N0), in combineZext()
54199 return DAG.getNode(ISD::TRUNCATE, DL, VT, Setcc); in truncateAVX512SetCCNoBWI()
54223 return DAG.getNode(ISD::TRUNCATE, DL, VT, getSETCC(X86CC, V, DL, DAG)); in combineSetCC()
54266 if (LHS.getOpcode() == ISD::TRUNCATE && in combineSetCC()
54691 Index = DAG.getNode(ISD::TRUNCATE, DL, NewVT, Index); in combineGatherScatter()
54705 Index = DAG.getNode(ISD::TRUNCATE, DL, NewVT, Index); in combineGatherScatter()
54874 if (!Trunc.hasOneUse() || Trunc.getOpcode() != ISD::TRUNCATE) in combineToFPTruncExtElt()
55032 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, dl, TruncVT, Op0); in combineSIntToFP()
55230 if (Op.getOpcode() != ISD::TRUNCATE) in combineCMP()
55279 SDValue Op0 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(0)); in combineCMP()
55280 SDValue Op1 = DAG.getNode(ISD::TRUNCATE, dl, VT, Op.getOperand(1)); in combineCMP()
55509 SDValue N0 = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Mul.getOperand(0)); in matchPMADDWD()
55510 SDValue N1 = DAG.getNode(ISD::TRUNCATE, DL, TruncVT, Mul.getOperand(1)); in matchPMADDWD()
56403 case ISD::TRUNCATE: in combineConcatVectorOps()
56412 return DAG.getNode(ISD::TRUNCATE, DL, VT, in combineConcatVectorOps()
57160 if (IdxVal == 0 && InOpcode == ISD::TRUNCATE && Subtarget.hasVLX() && in combineEXTRACT_SUBVECTOR()
57810 case ISD::TRUNCATE: return combineTruncate(N, DAG, Subtarget); in PerformDAGCombine()