/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/ |
H A D | LegalizerHelper.h | 102 LegalizeResult narrowScalar(MachineInstr &MI, unsigned TypeIdx, LLT NarrowTy); 119 LLT NarrowTy); 143 void narrowScalarSrc(MachineInstr &MI, LLT NarrowTy, unsigned OpIdx); 154 void narrowScalarDst(MachineInstr &MI, LLT NarrowTy, unsigned OpIdx, 213 LLT NarrowTy, Register SrcReg); 236 LLT buildLCMMergePieces(LLT DstTy, LLT NarrowTy, LLT GCDTy, 251 ArrayRef<Register> Src2Regs, LLT NarrowTy); 256 LLT SrcTy, LLT NarrowTy, 323 LLT NarrowTy); 325 LLT NarrowTy); [all …]
|
H A D | CallLowering.h | 338 LLT NarrowTy);
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
H A D | LegalizerHelper.cpp | 56 getNarrowTypeBreakDown(LLT OrigTy, LLT NarrowTy, LLT &LeftoverTy) { in getNarrowTypeBreakDown() argument 60 unsigned NarrowSize = NarrowTy.getSizeInBits(); in getNarrowTypeBreakDown() 68 if (NarrowTy.isVector()) { in getNarrowTypeBreakDown() 251 LLT NarrowTy, Register SrcReg) { in extractGCDType() argument 253 LLT GCDTy = getGCDType(getGCDType(SrcTy, NarrowTy), DstTy); in extractGCDType() 258 LLT LegalizerHelper::buildLCMMergePieces(LLT DstTy, LLT NarrowTy, LLT GCDTy, in buildLCMMergePieces() argument 261 LLT LCMTy = getLCMType(DstTy, NarrowTy); in buildLCMMergePieces() 263 int NumParts = LCMTy.getSizeInBits() / NarrowTy.getSizeInBits(); in buildLCMMergePieces() 264 int NumSubParts = NarrowTy.getSizeInBits() / GCDTy.getSizeInBits(); in buildLCMMergePieces() 320 AllPadReg = MIRBuilder.buildUndef(NarrowTy).getReg(0); in buildLCMMergePieces() [all …]
|
H A D | CallLowering.cpp | 1344 const CCValAssign &VA, Register SrcReg, LLT NarrowTy) { in buildExtensionHint() argument 1349 NarrowTy.getScalarSizeInBits()) in buildExtensionHint() 1355 NarrowTy.getScalarSizeInBits()) in buildExtensionHint()
|
H A D | Utils.cpp | 605 LLT NarrowTy = (NumElts == 1) ? EltTy : LLT::fixed_vector(NumElts, EltTy); in extractVectorParts() local 612 return extractParts(Reg, NarrowTy, NumNarrowTyPieces, VRegs, MIRBuilder, in extractVectorParts() 625 VRegs.push_back(MIRBuilder.buildMergeLikeInstr(NarrowTy, Pieces).getReg(0)); in extractVectorParts()
|
H A D | CombinerHelper.cpp | 5029 LLT NarrowTy = LLT::scalar(NarrowWidth); in matchNarrowBinopFeedingAnd() local 5036 if (!TLI.isTruncateFree(WideTy, NarrowTy, DL, Ctx) || in matchNarrowBinopFeedingAnd() 5037 !TLI.isZExtFree(NarrowTy, WideTy, DL, Ctx)) in matchNarrowBinopFeedingAnd() 5039 if (!isLegalOrBeforeLegalizer({TargetOpcode::G_TRUNC, {NarrowTy, WideTy}}) || in matchNarrowBinopFeedingAnd() 5040 !isLegalOrBeforeLegalizer({TargetOpcode::G_ZEXT, {WideTy, NarrowTy}})) in matchNarrowBinopFeedingAnd() 5045 auto NarrowLHS = Builder.buildTrunc(NarrowTy, BinOpLHS); in matchNarrowBinopFeedingAnd() 5046 auto NarrowRHS = Builder.buildTrunc(NarrowTy, BinOpRHS); in matchNarrowBinopFeedingAnd() 5048 Builder.buildInstr(LHSOpc, {NarrowTy}, {NarrowLHS, NarrowRHS}); in matchNarrowBinopFeedingAnd()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/GISel/ |
H A D | AArch64InstructionSelector.cpp | 3948 const LLT NarrowTy = MRI.getType(DstReg); in selectExtractElt() local 3952 assert(WideTy.getSizeInBits() >= NarrowTy.getSizeInBits() && in selectExtractElt() 3954 assert(!NarrowTy.isVector() && "cannot extract vector into vector!"); in selectExtractElt() 3973 MachineInstr *Extract = emitExtractVectorElt(DstReg, DstRB, NarrowTy, SrcReg, in selectExtractElt() 3986 const LLT NarrowTy = MRI.getType(I.getOperand(0).getReg()); in selectSplitVectorUnmerge() local 3989 assert(NarrowTy.isVector() && "Expected an unmerge into vectors"); in selectSplitVectorUnmerge() 4002 emitExtractVectorElt(Dst, DstRB, NarrowTy, SrcReg, OpIdx, MIB); in selectSplitVectorUnmerge() 4029 const LLT NarrowTy = MRI.getType(I.getOperand(0).getReg()); in selectUnmergeValues() local 4034 assert(WideTy.getSizeInBits() > NarrowTy.getSizeInBits() && in selectUnmergeValues() 4037 if (!NarrowTy.isScalar()) in selectUnmergeValues() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | CodeGenPrepare.cpp | 6059 Type *NarrowTy; in hasSameExtUse() local 6063 NarrowTy = CurTy; in hasSameExtUse() 6066 NarrowTy = ExtTy; in hasSameExtUse() 6070 if (!TLI.isZExtFree(NarrowTy, LargeTy)) in hasSameExtUse()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | SROA.cpp | 3055 IntegerType *NarrowTy = Type::getIntNTy(SI.getContext(), SliceSize * 8); in visitStoreInst() local 3056 V = extractInteger(DL, IRB, V, NarrowTy, NewBeginOffset - BeginOffset, in visitStoreInst()
|
/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | ScalarEvolution.cpp | 2324 auto *NarrowTy = cast<IntegerType>(LHS->getType()); in willNotOverflow() local 2326 IntegerType::get(NarrowTy->getContext(), NarrowTy->getBitWidth() * 2); in willNotOverflow() 15570 Type *NarrowTy = IntegerType::get(SE.getContext(), Bitwidth); in rewrite() local 15571 auto *NarrowExt = SE.getZeroExtendExpr(Op, NarrowTy); in rewrite()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64ISelDAGToDAG.cpp | 2280 MVT NarrowTy = MVT::getVectorVT(EltTy, WideSize / 2); in NarrowVector() local 2282 return DAG.getTargetExtractSubreg(AArch64::dsub, SDLoc(V128Reg), NarrowTy, in NarrowVector()
|
/freebsd/contrib/llvm-project/clang/lib/CodeGen/ |
H A D | CGBuiltin.cpp | 8029 auto *NarrowTy = in EmitCommonNeonBuiltinExpr() local 8031 llvm::Type *Tys[2] = { Ty, NarrowTy }; in EmitCommonNeonBuiltinExpr() 8039 auto *NarrowTy = in EmitCommonNeonBuiltinExpr() local 8041 llvm::Type *Tys[2] = { Ty, NarrowTy }; in EmitCommonNeonBuiltinExpr()
|