Home
last modified time | relevance | path

Searched refs:SPIRVType (Results 1 – 11 of 11) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVGlobalRegistry.h28 using SPIRVType = const MachineInstr; variable
37 DenseMap<const MachineFunction *, DenseMap<Register, SPIRVType *>>
43 DenseMap<SPIRVType *, const Type *> SPIRVToLLVMType;
65 DenseMap<const Type *, SPIRVType *> ForwardPointerTypes;
87 SPIRVType *createSPIRVType(const Type *Type, MachineIRBuilder &MIRBuilder,
91 SPIRVType *findSPIRVType(const Type *Ty, MachineIRBuilder &MIRBuilder,
95 SPIRVType *
274 SPIRVType *assignTypeToVReg(const Type *Type, Register VReg,
279 SPIRVType *assignIntTypeToVReg(unsigned BitWidth, Register VReg,
281 SPIRVType *assignFloatTypeToVReg(unsigned BitWidth, Register VReg,
[all …]
H A DSPIRVGlobalRegistry.cpp33 SPIRVType *SPIRVGlobalRegistry::assignIntTypeToVReg(unsigned BitWidth, in assignIntTypeToVReg()
37 SPIRVType *SpirvType = getOrCreateSPIRVIntegerType(BitWidth, I, TII); in assignIntTypeToVReg()
42 SPIRVType *
46 SPIRVType *SpirvType = getOrCreateSPIRVFloatType(BitWidth, I, TII); in assignFloatTypeToVReg()
51 SPIRVType *SPIRVGlobalRegistry::assignVectTypeToVReg( in assignVectTypeToVReg()
52 SPIRVType *BaseType, unsigned NumElements, Register VReg, MachineInstr &I, in assignVectTypeToVReg()
54 SPIRVType *SpirvType = in assignVectTypeToVReg()
60 SPIRVType *SPIRVGlobalRegistry::assignTypeToVReg( in assignTypeToVReg()
63 SPIRVType *SpirvType = in assignTypeToVReg()
69 void SPIRVGlobalRegistry::assignSPIRVTypeToVReg(SPIRVType *SpirvType, in assignSPIRVTypeToVReg()
[all …]
H A DSPIRVInstructionSelector.cpp111 bool spvSelect(Register ResVReg, const SPIRVType *ResType,
117 bool selectUnOpWithSrc(Register ResVReg, const SPIRVType *ResType,
120 bool selectUnOp(Register ResVReg, const SPIRVType *ResType, MachineInstr &I,
123 bool selectBitcast(Register ResVReg, const SPIRVType *ResType,
126 bool selectLoad(Register ResVReg, const SPIRVType *ResType,
130 bool selectStackSave(Register ResVReg, const SPIRVType *ResType,
136 bool selectAtomicRMW(Register ResVReg, const SPIRVType *ResType,
140 bool selectAtomicCmpXchg(Register ResVReg, const SPIRVType *ResType,
145 bool selectAddrSpaceCast(Register ResVReg, const SPIRVType *ResType,
148 bool selectAnyOrAll(Register ResVReg, const SPIRVType *ResType,
[all …]
H A DSPIRVISelLowering.cpp108 SPIRVType *TypeInst = MRI->getVRegDef(OpReg); in getTypeReg()
117 SPIRVType *NewPtrType) { in doInsertBitcast()
133 static SPIRVType *createNewPtrType(SPIRVGlobalRegistry &GR, MachineInstr &I, in createNewPtrType()
134 SPIRVType *OpType, bool ReuseType, in createNewPtrType()
135 bool EmitIR, SPIRVType *ResType, in createNewPtrType()
141 SPIRVType *NewBaseType = in createNewPtrType()
153 SPIRVType *ResType, const Type *ResTy = nullptr) { in validatePtrTypes()
158 SPIRVType *OpType = GR.getSPIRVTypeForVReg(OpTypeReg, MF); in validatePtrTypes()
163 SPIRVType *ElemType = GR.getSPIRVTypeForVReg(ElemTypeReg, MF); in validatePtrTypes()
174 SPIRVType *NewPtrType = in validatePtrTypes()
[all …]
H A DSPIRVCallLowering.cpp95 FunctionType *FTy, const SPIRVType *SRetTy, in fixFunctionTypeIfPtrArgs()
96 const SmallVector<SPIRVType *, 4> &SArgTys) { in fixFunctionTypeIfPtrArgs() argument
189 static SPIRVType *getArgSPIRVType(const Function &F, unsigned ArgIdx, in getArgSPIRVType()
207 SPIRVType *ElementType = GR->getOrCreateSPIRVType( in getArgSPIRVType()
223 SPIRVType *ElementType = in getArgSPIRVType()
248 SPIRVType *ElementType = GR->getOrCreateSPIRVType(ElementTy, MIRBuilder); in getArgSPIRVType()
291 SmallVector<SPIRVType *, 4> ArgTypeVRegs; in lowerFormalArguments()
388 SPIRVType *RetTy = GR->getOrCreateSPIRVType(FRetTy, MIRBuilder); in lowerFormalArguments()
390 SPIRVType *FuncTy = GR->getOrCreateOpTypeFunctionWithArgs( in lowerFormalArguments()
467 SPIRVType *SpirvRetTy = GR->getOrCreateSPIRVType(IC.RetTy, MIRBuilder); in produceIndirectPtrTypes()
[all …]
H A DSPIRVPostLegalizer.cpp48 extern Register insertAssignInstr(Register Reg, Type *Ty, SPIRVType *SpirvTy,
92 SPIRVType *DefType = in processNewInstrs()
97 SPIRVType *ScalarType = in processNewInstrs()
101 SPIRVType *ResType = GR->getSPIRVTypeForVReg(ResVReg); in processNewInstrs()
117 SPIRVType *ResVType = GR->getSPIRVTypeForVReg(ResVReg); in processNewInstrs()
H A DSPIRVBuiltins.cpp47 const SPIRVType *ReturnType;
51 const Register ReturnRegister, const SPIRVType *ReturnType, in IncomingCall()
223 Register ReturnRegister, const SPIRVType *ReturnType, in lookupBuiltin()
392 static std::tuple<Register, SPIRVType *>
393 buildBoolRegister(MachineIRBuilder &MIRBuilder, const SPIRVType *ResultType, in buildBoolRegister()
396 SPIRVType *BoolType = GR->getOrCreateSPIRVBoolType(MIRBuilder); in buildBoolRegister()
420 const SPIRVType *ReturnType, in buildSelectInst()
439 static Register buildLoadInst(SPIRVType *BaseType, Register PtrRegister, in buildLoadInst()
459 MachineIRBuilder &MIRBuilder, SPIRVType *VariableType, in buildBuiltinVariableLoad()
466 SPIRVType *PtrType = GR->getOrCreateSPIRVPointerType( in buildBuiltinVariableLoad()
[all …]
H A DSPIRVPreLegalizer.cpp93 SPIRVType *ExtType = in addConstantsToTrack()
189 SPIRVType *BaseTy = GR->getOrCreateSPIRVType(ElemTy, MIB); in insertBitcasts()
190 SPIRVType *AssignedPtrType = GR->getOrCreateSPIRVPointerType( in insertBitcasts()
225 static SPIRVType *propagateSPIRVType(MachineInstr *MI, SPIRVGlobalRegistry *GR, in propagateSPIRVType()
228 SPIRVType *SpirvTy = nullptr; in propagateSPIRVType()
256 if (SPIRVType *Def = propagateSPIRVType(DefInstr, GR, MRI, MIB)) { in propagateSPIRVType()
312 createNewIdReg(SPIRVType *SpvType, Register SrcReg, MachineRegisterInfo &MRI, in createNewIdReg()
371 Register insertAssignInstr(Register Reg, Type *Ty, SPIRVType *SpirvTy, in insertAssignInstr()
456 SPIRVType *BaseTy = GR->getOrCreateSPIRVType(ElementTy, MIB); in generateAssignInstrs()
457 SPIRVType *AssignedPtrType = GR->getOrCreateSPIRVPointerType( in generateAssignInstrs()
[all …]
H A DSPIRVBuiltins.h78 SPIRVType *lowerBuiltinType(const Type *Type,
H A DSPIRVLegalizerInfo.cpp324 static Register convertPtrToInt(Register Reg, LLT ConvTy, SPIRVType *SpirvType, in convertPtrToInt()
356 SPIRVType *SpirvTy = GR->getOrCreateSPIRVType(LLVMTy, Helper.MIRBuilder); in legalizeCustom()
H A DSPIRVModuleAnalysis.cpp782 SPIRVType *TypeDef = MI.getMF()->getRegInfo().getVRegDef(TypeReg); in AddAtomicFloatRequirements()
896 SPIRVType *TypeDef = MRI.getVRegDef(MI.getOperand(2).getReg()); in addInstrRequirements()
979 SPIRVType *TypeDef = MRI.getVRegDef(TypeReg); in addInstrRequirements()