Lines Matching defs:VReg
32 // Initialized upon VReg definition in IRTranslator.
273 // and map it to the given VReg by creating an ASSIGN_TYPE instruction.
274 SPIRVType *assignTypeToVReg(const Type *Type, Register VReg,
279 SPIRVType *assignIntTypeToVReg(unsigned BitWidth, Register VReg,
281 SPIRVType *assignFloatTypeToVReg(unsigned BitWidth, Register VReg,
284 Register VReg, MachineInstr &I,
288 // used to map it to the given VReg via an ASSIGN_TYPE instruction.
289 void assignSPIRVTypeToVReg(SPIRVType *Type, Register VReg,
323 // Return the SPIR-V type instruction corresponding to the given VReg, or
328 SPIRVType *getSPIRVTypeForVReg(Register VReg,
331 // Whether the given VReg has a SPIR-V type mapped to it yet.
332 bool hasSPIRVTypeForVReg(Register VReg) const {
333 return getSPIRVTypeForVReg(VReg) != nullptr;
336 // Return the VReg holding the result of the given OpTypeXXX instruction.
352 // Whether the given VReg has an OpTypeXXX instruction mapped to it with the
354 bool isScalarOfType(Register VReg, unsigned TypeOpcode) const;
356 // Return true if the given VReg's assigned SPIR-V type is either a scalar
359 bool isScalarOrVectorOfType(Register VReg, unsigned TypeOpcode) const;
363 unsigned getScalarOrVectorComponentCount(Register VReg) const;
383 SPIRV::StorageClass::StorageClass getPointerStorageClass(Register VReg) const;