LLVM 22.0.0git
NVPTXPrologEpilogPass.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "nvptx-prolog-epilog"

Functions

 INITIALIZE_PASS (NVPTXPrologEpilogPass, DEBUG_TYPE, "NVPTX Prologue/Epilogue Insertion", false, false) static bool replaceFrameIndexDebugInstr(MachineFunction &MF
 if (MI.isDebugValue())
static void AdjustStackOffset (MachineFrameInfo &MFI, int FrameIdx, bool StackGrowsDown, int64_t &Offset, Align &MaxAlign)
 AdjustStackOffset - Helper function used to adjust the stack frame offset.

Variables

MachineInstrMI
MachineInstr unsigned OpIdx
const TargetRegisterInfoTRI = *MF.getSubtarget().getRegisterInfo()
return false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "nvptx-prolog-epilog"

Definition at line 29 of file NVPTXPrologEpilogPass.cpp.

Function Documentation

◆ AdjustStackOffset()

void AdjustStackOffset ( MachineFrameInfo & MFI,
int FrameIdx,
bool StackGrowsDown,
int64_t & Offset,
Align & MaxAlign )
inlinestatic

AdjustStackOffset - Helper function used to adjust the stack frame offset.

Definition at line 135 of file NVPTXPrologEpilogPass.cpp.

References llvm::alignTo(), llvm::dbgs(), llvm::MachineFrameInfo::getObjectAlign(), llvm::MachineFrameInfo::getObjectSize(), LLVM_DEBUG, llvm::Offset, and llvm::MachineFrameInfo::setObjectOffset().

◆ if()

if ( MI. isDebugValue())

Definition at line 59 of file NVPTXPrologEpilogPass.cpp.

References MI.

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( NVPTXPrologEpilogPass ,
DEBUG_TYPE ,
"NVPTX Prologue/Epilogue Insertion" ,
false ,
false  ) &

References DEBUG_TYPE.

Variable Documentation

◆ false

return false

Definition at line 87 of file NVPTXPrologEpilogPass.cpp.

◆ MI

Definition at line 55 of file NVPTXPrologEpilogPass.cpp.

◆ OpIdx

Initial value:
{
const TargetFrameLowering *TFI = MF.getSubtarget().getFrameLowering()
Information about stack frame layout on the target.
Examples
/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/llvm/include/llvm/Transforms/Utils/Local.h.

Definition at line 56 of file NVPTXPrologEpilogPass.cpp.

Referenced by llvm::CallLowering::addArgFlagsFromAttributes(), llvm::AMDGPURegisterBankInfo::addMappingFromTable(), llvm::MachineInstr::addRegisterDead(), llvm::MachineInstr::addRegisterKilled(), llvm::ScheduleDAGInstrs::addSchedBarrierDeps(), llvm::SystemZTTIImpl::adjustInliningThreshold(), llvm::RegisterBankInfo::applyDefaultMapping(), llvm::RegBankSelect::applyMapping(), llvm::PatternMatch::Argument_match< Opnd_t >::Argument_match(), llvm::VPlanPatternMatch::Argument_match< Opnd_t >::Argument_match(), llvm::LegalizerHelper::bitcastDst(), llvm::LegalizerHelper::bitcastSrc(), buildTreeReduction(), llvm::CallBase::bundleOperandHasAttr(), CanGenerateTest(), canNarrowLoad(), canonicalizePHIOperands(), canParameterizeCallOperand(), llvm::canReplaceOperandWithVariable(), llvm::MachineOperand::ChangeToDbgInstrRef(), checkBoolTestSetCCCombine(), checkOperandType(), llvm::sandboxir::SingleLLVMInstructionImpl< LLVMT >::CmpInst, collectInstructionDeps(), CollectOpsToWiden(), collectVOPModifiers(), combineBMILogicOp(), combineShuffleToZeroExtendVectorInReg(), combineX86ShufflesRecursively(), computeExprForSpill(), llvm::X86TargetLowering::computeKnownBitsForTargetNode(), llvm::RegBankSelect::computeMapping(), llvm::X86TargetLowering::ComputeNumSignBitsForTargetNode(), llvm::ScheduleDAGSDNodes::computeOperandLatency(), llvm::constrainOperandRegClass(), llvm::AMDGPURegisterBankInfo::constrainOpWithReadfirstlane(), llvm::sandboxir::ConstantInt::Context, llvm::sandboxir::NoCFIValue::Context, llvm::AMDGPUDisassembler::convertTrue16OpSel(), costAndCollectOperands(), llvm::MachineOperand::CreateDbgInstrRef(), llvm::ARMBaseInstrInfo::createMIROperandComment(), llvm::RISCVInstrInfo::createMIROperandComment(), llvm::TargetInstrInfo::createMIROperandComment(), CreateVPTBlock(), llvm::RegisterBankInfo::OperandsMapper::createVRegs(), doInsertBitcast(), llvm::SystemZRegisterInfo::eliminateFrameIndex(), llvm::InstrEmitter::EmitDbgInstrRef(), llvm::SPIRVTargetLowering::enforcePtrTypeCompatibility(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::MachineInstr::findInlineAsmFlagIdx(), llvm::AMDGPU::RegBankLegalizeHelper::findRuleAndApplyMapping(), llvm::MachineInstr::findTiedOperandIdx(), fixI8UseChain(), llvm::ARMBaseInstrInfo::foldImmediate(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::InstCombinerImpl::foldPHIArgInsertValueInstructionIntoPHI(), GetArgMD(), llvm::sandboxir::CallBase::getArgOperand(), getBMIMatchingOp(), getBranchTargetOpValue(), llvm::CallBase::getBundleOpInfoForOperand(), llvm::CallBase::getBundleOpInfoForOperand(), llvm::PeelingModuloScheduleExpander::getEquivalentRegisterIn(), getInstReadLaneMask(), llvm::RegisterBankInfo::getInstrMappingImpl(), getNumOpRegs(), llvm::sandboxir::getOperand(), llvm::sandboxir::User::getOperand(), llvm::CallBase::getOperandBundleForOperand(), llvm::VPExpressionRecipe::getOperandOfResultType(), llvm::sandboxir::User::getOperandUse(), llvm::sandboxir::User::getOperandUseDefault(), llvm::sandboxir::Constant::getOperandUseInternal(), llvm::sandboxir::GlobalObject::getOperandUseInternal(), llvm::sandboxir::User::getOperandUseInternal(), getPointeeTypeByCallInst(), llvm::AArch64RegisterInfo::getRegAllocationHints(), llvm::RISCVRegisterInfo::getRegAllocationHints(), llvm::X86RegisterInfo::getRegAllocationHints(), llvm::RegisterBankInfo::getRegBankFromConstraints(), llvm::MachineInstr::getRegClassConstraint(), llvm::MachineInstr::getRegClassConstraintEffect(), llvm::TargetInstrInfo::getRegSequenceInputs(), getTypeFromTypeIdx(), llvm::MachineInstr::getTypeToPrint(), llvm::DbgValueInst::getValue(), llvm::DbgVariableRecord::getValue(), llvm::DbgVariableIntrinsic::getVariableLocationOp(), llvm::DbgVariableRecord::getVariableLocationOp(), llvm::RawLocationWrapper::getVariableLocationOp(), llvm::slpvectorizer::BoUpSLP::VLOperands::getVL(), llvm::RegisterBankInfo::OperandsMapper::getVRegs(), handleADRP(), hasAllNBitUsers(), hasAllNBitUsers(), llvm::MachineOperand::hash_value, hasSameNumEltsOnAllVectorOperands(), llvm::GCNTTIImpl::hoistLaneIntrinsicThroughOperand(), hoistMulAddAssociation(), ignoreOp(), llvm::MachineInstr::insert(), insertNamedMCOperand(), IsAGPROperand(), isCalleeOperand(), llvm::MachineInstr::isEquivalentDbgInstr(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isInlineConstant(), llvm::SIInstrInfo::isLegalRegOperand(), llvm::SIInstrInfo::isOperandLegal(), llvm::MachineInstr::isOperandSubregIdx(), llvm::ARMTTIImpl::isProfitableToSinkOperands(), llvm::RISCVTTIImpl::isProfitableToSinkOperands(), llvm::SIInstrInfo::legalizeOperandsVALUt16(), llvm::SIInstrInfo::legalizeOperandsVALUt16(), llvm::SIInstrInfo::legalizeOpWithMove(), LinearizeExprTree(), lowerBuildVectorOfConstants(), lowerBuildVectorViaDominantValues(), llvm::RISCVTargetLowering::LowerOperation(), lowerShuffleAsBroadcast(), llvm::SDPatternMatch::Operands_match< OpIdx, OpndPreds >::match(), llvm::SDPatternMatch::Operands_match< OpIdx, OpndPred, OpndPreds... >::match(), matchAliasCondition(), llvm::MCInstPrinter::matchAliasPatterns(), llvm::CombinerHelper::matchConstantSelectCmp(), llvm::CombinerHelper::matchOperandIsKnownToBeAPowerOfTwo(), llvm::CombinerHelper::matchOperandIsUndef(), llvm::CombinerHelper::matchOperandIsZero(), llvm::LegalizerHelper::moreElementsVectorDst(), llvm::LegalizerHelper::moreElementsVectorSrc(), llvm::LegalizerHelper::narrowScalar(), llvm::LegalizerHelper::narrowScalarDst(), llvm::LegalizerHelper::narrowScalarSrc(), llvm::SDPatternMatch::Operands_match< OpIdx, OpndPred, OpndPreds... >::Operands_match(), llvm::AMDGPUMIRFormatter::parseImmMnemonic(), llvm::MIRFormatter::parseImmMnemonic(), partitionShuffleOfConcats(), llvm::MachineInstr::print(), llvm::MachineOperand::print(), llvm::RegisterBankInfo::InstructionMapping::print(), llvm::VPInterleaveEVLRecipe::print(), llvm::VPInterleaveRecipe::print(), llvm::WebAssemblyInstPrinter::printCatchList(), llvm::AArch64AppleInstPrinter::printCustomAliasOperand(), llvm::AArch64InstPrinter::printCustomAliasOperand(), llvm::ARMInstPrinter::printCustomAliasOperand(), llvm::CSKYInstPrinter::printCustomAliasOperand(), llvm::LanaiInstPrinter::printCustomAliasOperand(), llvm::LoongArchInstPrinter::printCustomAliasOperand(), llvm::M68kInstPrinter::printCustomAliasOperand(), llvm::MipsInstPrinter::printCustomAliasOperand(), llvm::MSP430InstPrinter::printCustomAliasOperand(), llvm::PPCInstPrinter::printCustomAliasOperand(), llvm::RISCVInstPrinter::printCustomAliasOperand(), llvm::SparcInstPrinter::printCustomAliasOperand(), llvm::X86ATTInstPrinter::printCustomAliasOperand(), llvm::X86IntelInstPrinter::printCustomAliasOperand(), llvm::AMDGPUMIRFormatter::printImm(), llvm::MIRFormatter::printImm(), llvm::WebAssemblyInstPrinter::printInst(), printMIOperand(), reinsertVectorIndexAdd(), llvm::slpvectorizer::BoUpSLP::VLOperands::reorder(), replaceOperandIfSame(), llvm::CombinerHelper::replaceSingleDefInstWithOperand(), llvm::sandboxir::User::replaceUsesOfWith(), llvm::DbgVariableIntrinsic::replaceVariableLocationOp(), llvm::DbgVariableRecord::replaceVariableLocationOp(), replaceWithIndirectUse(), replacingOperandWithVariableIsCheap(), llvm::CallLowering::setArgFlags(), llvm::sandboxir::CallBase::setArgOperand(), llvm::MachineOperand::setInstrRefOpIndex(), llvm::MachineInstrBuilder::setOperandDead(), llvm::RegisterBankInfo::OperandsMapper::setVRegs(), shouldConvertUse(), llvm::X86TargetLowering::SimplifyMultipleUseDemandedBitsForTargetNode(), simplifySVEIntrinsic(), splitEdge(), STATISTIC(), substituteSimpleCopyRegs(), tryChangeVGPRtoSGPRinCopy(), llvm::MachineInstr::untieRegOperand(), updateOperandIfDifferent(), UpdateOperandRegClass(), llvm::SIInstrInfo::usesConstantBus(), validateFunCallMachineDef(), validateGroupWaitEventsPtr(), validatePtrTypes(), validatePtrUnwrapStructField(), llvm::RISCVInstrInfo::verifyInstruction(), llvm::SIInstrInfo::verifyInstruction(), llvm::SDNodeInfo::verifyNode(), llvm::LegalizerHelper::widenScalarDst(), llvm::LegalizerHelper::widenScalarSrc(), and llvm::AMDGPUMIRFormatter::~AMDGPUMIRFormatter().

◆ TRI

const TargetRegisterInfo& TRI = *MF.getSubtarget().getRegisterInfo()

Definition at line 58 of file NVPTXPrologEpilogPass.cpp.