Home
last modified time | relevance | path

Searched refs:NarrowTy (Results 1 – 12 of 12) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/
H A DLegalizerHelper.h102 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 DCallLowering.h338 LLT NarrowTy);
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DLegalizerHelper.cpp56 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 DCallLowering.cpp1344 const CCValAssign &VA, Register SrcReg, LLT NarrowTy) { in buildExtensionHint() argument
1349 NarrowTy.getScalarSizeInBits()) in buildExtensionHint()
1355 NarrowTy.getScalarSizeInBits()) in buildExtensionHint()
H A DUtils.cpp605 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 DCombinerHelper.cpp5029 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 DAArch64InstructionSelector.cpp3948 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 DCodeGenPrepare.cpp6059 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 DSROA.cpp3055 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 DScalarEvolution.cpp2324 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 DAArch64ISelDAGToDAG.cpp2280 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 DCGBuiltin.cpp8029 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()