Lines Matching defs:SPIRVInstructionSelector
1 //===- SPIRVInstructionSelector.cpp ------------------------------*- C++ -*-==//
64 class SPIRVInstructionSelector : public InstructionSelector {
79 SPIRVInstructionSelector(const SPIRVTargetMachine &TM,
356 SPIRVInstructionSelector::SPIRVInstructionSelector(const SPIRVTargetMachine &TM,
370 void SPIRVInstructionSelector::setupMF(MachineFunction &MF, GISelKnownBits *KB,
380 void SPIRVInstructionSelector::resetVRegsType(MachineFunction &MF) {
438 bool SPIRVInstructionSelector::select(MachineInstr &I) {
521 bool SPIRVInstructionSelector::BuildCOPY(Register DestReg, Register SrcReg,
534 bool SPIRVInstructionSelector::spvSelect(Register ResVReg,
904 bool SPIRVInstructionSelector::selectExtInst(Register ResVReg,
912 bool SPIRVInstructionSelector::selectExtInst(Register ResVReg,
920 bool SPIRVInstructionSelector::selectExtInst(Register ResVReg,
930 bool SPIRVInstructionSelector::selectExtInst(Register ResVReg,
959 bool SPIRVInstructionSelector::selectOpWithSrcs(Register ResVReg,
973 bool SPIRVInstructionSelector::selectUnOp(Register ResVReg,
1012 bool SPIRVInstructionSelector::selectBitcast(Register ResVReg,
1050 bool SPIRVInstructionSelector::selectLoad(Register ResVReg,
1089 bool SPIRVInstructionSelector::selectStore(MachineInstr &I) const {
1131 bool SPIRVInstructionSelector::selectStackSave(Register ResVReg,
1146 bool SPIRVInstructionSelector::selectStackRestore(MachineInstr &I) const {
1160 bool SPIRVInstructionSelector::selectMemOperation(Register ResVReg,
1211 bool SPIRVInstructionSelector::selectAtomicRMW(Register ResVReg,
1254 bool SPIRVInstructionSelector::selectUnmergeValues(MachineInstr &I) const {
1289 bool SPIRVInstructionSelector::selectFence(MachineInstr &I) const {
1309 bool SPIRVInstructionSelector::selectOverflowArith(Register ResVReg,
1373 bool SPIRVInstructionSelector::selectAtomicCmpXchg(Register ResVReg,
1491 Register SPIRVInstructionSelector::getUcharPtrTypeReg(
1498 SPIRVInstructionSelector::buildSpecConstantOp(MachineInstr &I, Register Dest,
1510 SPIRVInstructionSelector::buildConstGenericPtr(MachineInstr &I, Register SrcPtr,
1532 bool SPIRVInstructionSelector::selectAddrSpaceCast(Register ResVReg,
1746 bool SPIRVInstructionSelector::selectAnyOrAll(Register ResVReg,
1803 bool SPIRVInstructionSelector::selectAll(Register ResVReg,
1809 bool SPIRVInstructionSelector::selectAny(Register ResVReg,
1816 bool SPIRVInstructionSelector::selectFloatDot(Register ResVReg,
1844 bool SPIRVInstructionSelector::selectIntegerDot(Register ResVReg,
1864 bool SPIRVInstructionSelector::selectIntegerDotExpansion(
1924 bool SPIRVInstructionSelector::selectDot4AddPacked(Register ResVReg,
1954 bool SPIRVInstructionSelector::selectDot4AddPackedExpansion(
2029 bool SPIRVInstructionSelector::selectSaturate(Register ResVReg,
2049 bool SPIRVInstructionSelector::selectSign(Register ResVReg,
2095 bool SPIRVInstructionSelector::selectWaveOpInst(Register ResVReg,
2115 bool SPIRVInstructionSelector::selectWaveActiveCountBits(
2138 bool SPIRVInstructionSelector::selectWaveReduceMax(Register ResVReg,
2166 bool SPIRVInstructionSelector::selectWaveReduceSum(Register ResVReg,
2191 bool SPIRVInstructionSelector::selectBitreverse(Register ResVReg,
2202 bool SPIRVInstructionSelector::selectFreeze(Register ResVReg,
2307 bool SPIRVInstructionSelector::selectBuildVector(Register ResVReg,
2342 bool SPIRVInstructionSelector::selectSplatVector(Register ResVReg,
2376 bool SPIRVInstructionSelector::selectDiscard(Register ResVReg,
2400 bool SPIRVInstructionSelector::selectCmp(Register ResVReg,
2417 bool SPIRVInstructionSelector::selectICmp(Register ResVReg,
2433 void SPIRVInstructionSelector::renderFImm64(MachineInstrBuilder &MIB,
2442 void SPIRVInstructionSelector::renderImm32(MachineInstrBuilder &MIB,
2451 SPIRVInstructionSelector::buildI32Constant(uint32_t Val, MachineInstr &I,
2480 bool SPIRVInstructionSelector::selectFCmp(Register ResVReg,
2487 Register SPIRVInstructionSelector::buildZerosVal(const SPIRVType *ResType,
2496 Register SPIRVInstructionSelector::buildZerosValF(const SPIRVType *ResType,
2506 Register SPIRVInstructionSelector::buildOnesValF(const SPIRVType *ResType,
2516 Register SPIRVInstructionSelector::buildOnesVal(bool AllOnes,
2527 bool SPIRVInstructionSelector::selectSelect(Register ResVReg,
2547 bool SPIRVInstructionSelector::selectIToF(Register ResVReg,
2567 bool SPIRVInstructionSelector::selectExt(Register ResVReg,
2582 bool SPIRVInstructionSelector::selectSUCmp(Register ResVReg,
2643 bool SPIRVInstructionSelector::selectIntToBool(Register IntReg,
2669 bool SPIRVInstructionSelector::selectTrunc(Register ResVReg,
2683 bool SPIRVInstructionSelector::selectConst(Register ResVReg,
2710 bool SPIRVInstructionSelector::selectOpUndef(Register ResVReg,
2739 bool SPIRVInstructionSelector::selectInsertVal(Register ResVReg,
2755 bool SPIRVInstructionSelector::selectExtractVal(Register ResVReg,
2768 bool SPIRVInstructionSelector::selectInsertElt(Register ResVReg,
2783 bool SPIRVInstructionSelector::selectExtractElt(Register ResVReg,
2797 bool SPIRVInstructionSelector::selectGEP(Register ResVReg,
2827 bool SPIRVInstructionSelector::wrapIntoSpecConstantOp(
2870 bool SPIRVInstructionSelector::selectIntrinsic(Register ResVReg,
3169 bool SPIRVInstructionSelector::selectHandleFromBinding(Register &ResVReg,
3175 bool SPIRVInstructionSelector::selectReadImageIntrinsic(
3199 bool SPIRVInstructionSelector::generateImageRead(Register &ResVReg,
3238 bool SPIRVInstructionSelector::selectResourceGetPointer(
3256 bool SPIRVInstructionSelector::extractSubvector(
3296 bool SPIRVInstructionSelector::selectImageWriteIntrinsic(
3324 Register SPIRVInstructionSelector::buildPointerToResource(
3357 bool SPIRVInstructionSelector::selectFirstBitSet16(
3368 bool SPIRVInstructionSelector::selectFirstBitSet32(
3380 bool SPIRVInstructionSelector::selectFirstBitSet64Overflow(
3457 bool SPIRVInstructionSelector::selectFirstBitSet64(
3602 bool SPIRVInstructionSelector::selectFirstBitHigh(Register ResVReg,
3627 bool SPIRVInstructionSelector::selectFirstBitLow(Register ResVReg,
3652 bool SPIRVInstructionSelector::selectAllocaArray(Register ResVReg,
3671 bool SPIRVInstructionSelector::selectFrameIndex(Register ResVReg,
3691 bool SPIRVInstructionSelector::selectBranch(MachineInstr &I) const {
3710 bool SPIRVInstructionSelector::selectBranchCond(MachineInstr &I) const {
3737 bool SPIRVInstructionSelector::selectPhi(Register ResVReg,
3754 bool SPIRVInstructionSelector::selectGlobalValue(
3867 bool SPIRVInstructionSelector::selectLog10(Register ResVReg,
3919 bool SPIRVInstructionSelector::loadVec3BuiltinInputID(
3970 SPIRVType *SPIRVInstructionSelector::widenTypeToVec4(const SPIRVType *Type,
3985 bool SPIRVInstructionSelector::loadHandleBeforePosition(
4020 return new SPIRVInstructionSelector(TM, Subtarget, RBI);