Lines Matching refs:GR
45 SPIRVGlobalRegistry &GR; member in __anonead1b6700111::SPIRVInstructionSelector
181 TRI(*ST.getRegisterInfo()), RBI(RBI), GR(*ST.getSPIRVGlobalRegistry()), in SPIRVInstructionSelector()
196 GR.setCurrentFunc(MF); in setupMF()
238 SPIRVType *ResType = HasDefs ? GR.getSPIRVTypeForVReg(ResVReg) : nullptr; in select()
276 .addUse(GR.getSPIRVTypeID(ResType)) in spvSelect()
352 Register Idx = buildZerosVal(GR.getOrCreateSPIRVIntegerType(32, I, TII), I); in spvSelect()
356 .addUse(GR.getSPIRVTypeID(ResType)) in spvSelect()
403 .addUse(GR.getSPIRVTypeID(ResType)) in selectUnOpWithSrc()
463 .addUse(GR.getSPIRVTypeID(ResType)) in selectLoad()
527 .addUse(GR.getSPIRVTypeID(ResType)) in selectAtomicRMW()
563 getMemSemanticsForStorageClass(GR.getPointerStorageClass(Ptr))); in selectAtomicCmpXchg()
579 SPIRVType *SpvValTy = GR.getSPIRVTypeForVReg(Val); in selectAtomicCmpXchg()
585 .addUse(GR.getSPIRVTypeID(SpvValTy)) in selectAtomicCmpXchg()
594 SPIRVType *BoolTy = GR.getOrCreateSPIRVBoolType(I, TII); in selectAtomicCmpXchg()
597 .addUse(GR.getSPIRVTypeID(BoolTy)) in selectAtomicCmpXchg()
604 .addUse(GR.getSPIRVTypeID(ResType)) in selectAtomicCmpXchg()
606 .addUse(GR.getOrCreateUndef(I, ResType, TII)) in selectAtomicCmpXchg()
611 .addUse(GR.getSPIRVTypeID(ResType)) in selectAtomicCmpXchg()
647 SPIRVType *SpvBaseTy = GR.getOrCreateSPIRVIntegerType(8, I, TII); in selectAddrSpaceCast()
648 ResType = GR.getOrCreateSPIRVPointerType(SpvBaseTy, I, TII, in selectAddrSpaceCast()
653 .addUse(GR.getSPIRVTypeID(ResType)) in selectAddrSpaceCast()
660 SPIRVType *SrcPtrTy = GR.getSPIRVTypeForVReg(SrcPtr); in selectAddrSpaceCast()
661 SPIRV::StorageClass SrcSC = GR.getPointerStorageClass(SrcPtr); in selectAddrSpaceCast()
662 SPIRV::StorageClass DstSC = GR.getPointerStorageClass(ResVReg); in selectAddrSpaceCast()
673 SPIRVType *GenericPtrTy = GR.getOrCreateSPIRVPointerType( in selectAddrSpaceCast()
679 .addUse(GR.getSPIRVTypeID(GenericPtrTy)) in selectAddrSpaceCast()
684 .addUse(GR.getSPIRVTypeID(ResType)) in selectAddrSpaceCast()
787 .addUse(GR.getSPIRVTypeID(ResType)) in selectBitreverse()
815 .addUse(GR.getSPIRVTypeID(ResType)); in selectConstVector()
827 assert(GR.getSPIRVTypeForVReg(Cmp0)->getOpcode() == in selectCmp()
828 GR.getSPIRVTypeForVReg(Cmp1)->getOpcode() && in selectCmp()
832 .addUse(GR.getSPIRVTypeID(ResType)) in selectCmp()
845 if (GR.isScalarOfType(CmpOperand, SPIRV::OpTypePointer)) in selectICmp()
847 else if (GR.isScalarOrVectorOfType(CmpOperand, SPIRV::OpTypeBool)) in selectICmp()
874 Type *LLVMTy = IntegerType::get(GR.CurMF->getFunction().getContext(), 32); in buildI32Constant()
876 ResType ? ResType : GR.getOrCreateSPIRVIntegerType(32, I, TII); in buildI32Constant()
879 Register NewReg = GR.find(ConstInt, GR.CurMF); in buildI32Constant()
882 GR.add(ConstInt, GR.CurMF, NewReg); in buildI32Constant()
888 .addUse(GR.getSPIRVTypeID(SpvI32Ty)); in buildI32Constant()
892 .addUse(GR.getSPIRVTypeID(SpvI32Ty)) in buildI32Constant()
910 return GR.getOrCreateConsIntVector(0, I, ResType, TII); in buildZerosVal()
911 return GR.getOrCreateConstInt(0, I, ResType, TII); in buildZerosVal()
917 unsigned BitWidth = GR.getScalarOrVectorBitWidth(ResType); in buildOnesVal()
921 return GR.getOrCreateConsIntVector(One.getZExtValue(), I, ResType, TII); in buildOnesVal()
922 return GR.getOrCreateConstInt(One.getZExtValue(), I, ResType, TII); in buildOnesVal()
933 GR.isScalarOfType(I.getOperand(1).getReg(), SPIRV::OpTypeBool); in selectSelect()
938 .addUse(GR.getSPIRVTypeID(ResType)) in selectSelect()
952 if (GR.isScalarOrVectorOfType(I.getOperand(1).getReg(), SPIRV::OpTypeBool)) { in selectIToF()
953 unsigned BitWidth = GR.getScalarOrVectorBitWidth(ResType); in selectIToF()
954 SPIRVType *TmpType = GR.getOrCreateSPIRVIntegerType(BitWidth, I, TII); in selectIToF()
957 TmpType = GR.getOrCreateSPIRVVectorType(TmpType, NumElts, I, TII); in selectIToF()
968 if (GR.isScalarOrVectorOfType(I.getOperand(1).getReg(), SPIRV::OpTypeBool)) in selectExt()
988 .addUse(GR.getSPIRVTypeID(IntTy)) in selectIntToBool()
994 .addUse(GR.getSPIRVTypeID(BoolTy)) in selectIntToBool()
1003 if (GR.isScalarOrVectorOfType(ResVReg, SPIRV::OpTypeBool)) { in selectTrunc()
1005 const SPIRVType *ArgType = GR.getSPIRVTypeForVReg(IntReg); in selectTrunc()
1008 bool IsSigned = GR.isScalarOrVectorSigned(ResType); in selectTrunc()
1024 .addUse(GR.getSPIRVTypeID(ResType)) in selectConst()
1027 Register Reg = GR.getOrCreateConstInt(Imm.getZExtValue(), I, ResType, TII); in selectConst()
1037 .addUse(GR.getSPIRVTypeID(ResType)); in selectConst()
1049 .addUse(GR.getSPIRVTypeID(ResType)) in selectOpUndef()
1076 .addUse(GR.getSPIRVTypeID(ResType)) in selectInsertVal()
1092 .addUse(GR.getSPIRVTypeID(ResType)) in selectExtractVal()
1107 .addUse(GR.getSPIRVTypeID(ResType)) in selectInsertElt()
1122 .addUse(GR.getSPIRVTypeID(ResType)) in selectExtractElt()
1138 .addUse(GR.getSPIRVTypeID(ResType)) in selectGEP()
1189 .addUse(GR.getSPIRVTypeID(ResType)); in selectIntrinsic()
1236 .addUse(GR.getSPIRVTypeID(ResType)) in selectFrameIndex()
1292 .addUse(GR.getSPIRVTypeID(ResType)); in selectPhi()
1306 SPIRVType *ResType = GR.getOrCreateSPIRVType( in selectGlobalValue()
1317 Register NewReg = GR.find(ConstVal, GR.CurMF); in selectGlobalValue()
1319 SPIRVType *SpvBaseTy = GR.getOrCreateSPIRVIntegerType(8, I, TII); in selectGlobalValue()
1320 ResType = GR.getOrCreateSPIRVPointerType(SpvBaseTy, I, TII); in selectGlobalValue()
1322 GR.add(ConstVal, GR.CurMF, NewReg); in selectGlobalValue()
1325 .addUse(GR.getSPIRVTypeID(ResType)) in selectGlobalValue()
1353 Register Reg = GR.buildGlobalVariable(ResVReg, ResType, GlobalIdent, GV, in selectGlobalValue()