A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://llvm.org/doxygen/classllvm_1_1MachineFunction.html below:

LLVM: llvm::MachineFunction Class Reference

#include "llvm/CodeGen/MachineFunction.h"

void  handleChangeDesc (MachineInstr &MI, const MCInstrDesc &TID)     MachineFunction (Function &F, const TargetMachine &Target, const TargetSubtargetInfo &STI, MCContext &Ctx, unsigned FunctionNum)     MachineFunction (const MachineFunction &)=delete   MachineFunctionoperator= (const MachineFunction &)=delete     ~MachineFunction ()   void  reset ()   Reset the instance as if it was just created.
  void  resetDelegate (Delegate *delegate)   Reset the currently registered delegate - otherwise assert.
  void  setDelegate (Delegate *delegate)   Set the delegate.
  void  setObserver (GISelChangeObserver *O)   GISelChangeObservergetObserver () const   MCContextgetContext () const   MCSectiongetSection () const   Returns the Section this function belongs to.
  void  setSection (MCSection *S)   Indicates the Section this function belongs to.
  PseudoSourceValueManagergetPSVManager () const   const DataLayoutgetDataLayout () const   Return the DataLayout attached to the Module associated to this MF.
  FunctiongetFunction ()   Return the LLVM function that this machine code represents.
  const FunctiongetFunction () const   Return the LLVM function that this machine code represents.
  StringRef  getName () const   getName - Return the name of the corresponding LLVM function.
  unsigned  getFunctionNumber () const   getFunctionNumber - Return a unique ID for the current function.
  bool  hasBBSections () const   Returns true if this function has basic block sections enabled.
  void  setBBSectionsType (BasicBlockSection V)   void  assignBeginEndSections ()   Assign IsBeginSection IsEndSection fields for basic blocks in this function.
  const TargetMachinegetTarget () const   getTarget - Return the target machine this machine code is compiled with
  const TargetSubtargetInfogetSubtarget () const   getSubtarget - Return the subtarget for which this machine code is being compiled.
  template<typename STC > const STC &  getSubtarget () const   getSubtarget - This method returns a pointer to the specified type of TargetSubtargetInfo.
  MachineRegisterInfogetRegInfo ()   getRegInfo - Return information about the registers currently in use.
  const MachineRegisterInfogetRegInfo () const   MachineFrameInfogetFrameInfo ()   getFrameInfo - Return the frame info object for the current function.
  const MachineFrameInfogetFrameInfo () const   const MachineJumpTableInfogetJumpTableInfo () const   getJumpTableInfo - Return the jump table info object for the current function.
  MachineJumpTableInfogetJumpTableInfo ()   MachineJumpTableInfogetOrCreateJumpTableInfo (unsigned JTEntryKind)   getOrCreateJumpTableInfo - Get the JumpTableInfo for this function, if it does already exist, allocate one.
  MachineConstantPoolgetConstantPool ()   getConstantPool - Return the constant pool object for the current function.
  const MachineConstantPoolgetConstantPool () const   const WasmEHFuncInfogetWasmEHFuncInfo () const   getWasmEHFuncInfo - Return information about how the current function uses Wasm exception handling.
  WasmEHFuncInfogetWasmEHFuncInfo ()   const WinEHFuncInfogetWinEHFuncInfo () const   getWinEHFuncInfo - Return information about how the current function uses Windows exception handling.
  WinEHFuncInfogetWinEHFuncInfo ()   Align  getAlignment () const   getAlignment - Return the alignment of the function.
  void  setAlignment (Align A)   setAlignment - Set the alignment of the function.
  void  ensureAlignment (Align A)   ensureAlignment - Make sure the function is at least A bytes aligned.
  bool  exposesReturnsTwice () const   exposesReturnsTwice - Returns true if the function calls setjmp or any other similar functions with attribute "returns twice" without having the attribute itself.
  void  setExposesReturnsTwice (bool B)   setCallsSetJmp - Set a flag that indicates if there's a call to a "returns twice" function.
  bool  hasInlineAsm () const   Returns true if the function contains any inline assembly.
  void  setHasInlineAsm (bool B)   Set a flag that indicates that the function contains inline assembly.
  bool  hasWinCFI () const   void  setHasWinCFI (bool v)   bool  needsFrameMoves () const   True if this function needs frame moves for debug or exceptions.
  const MachineFunctionPropertiesgetProperties () const   Get the function properties.
  MachineFunctionPropertiesgetProperties ()   template<typename Ty > Ty *  getInfo ()   getInfo - Keep track of various per-function pieces of information for backends that would like to do so.
  template<typename Ty > const Ty *  getInfo () const   template<typename Ty > Ty *  cloneInfo (const Ty &Old)   void  initTargetMachineFunctionInfo (const TargetSubtargetInfo &STI)   Initialize the target specific MachineFunctionInfo.
  MachineFunctionInfocloneInfoFrom (const MachineFunction &OrigMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB)   DenormalMode  getDenormalMode (const fltSemantics &FPType) const   Returns the denormal handling type for the default rounding mode of the function.
  MachineBasicBlockgetBlockNumbered (unsigned N) const   getBlockNumbered - MachineBasicBlocks are automatically numbered when they are inserted into the machine function.
  bool  shouldSplitStack () const   Should we be emitting segmented stack stuff for the function.
  unsigned  getNumBlockIDs () const   getNumBlockIDs - Return the number of MBB ID's allocated.
  unsigned  getBlockNumberEpoch () const   Return the numbering "epoch" of block numbers, incremented after each numbering.
  void  RenumberBlocks (MachineBasicBlock *MBBFrom=nullptr)   RenumberBlocks - This discards all of the MachineBasicBlock numbers and recomputes them.
  int64_t  estimateFunctionSizeInBytes ()   Return an estimate of the function's code size, taking into account block and function alignment.
  void  print (raw_ostream &OS, const SlotIndexes *=nullptr) const   print - Print out the MachineFunction in a format suitable for debugging to the specified stream.
  void  viewCFG () const   viewCFG - This function is meant for use from the debugger.
  void  viewCFGOnly () const   viewCFGOnly - This function is meant for use from the debugger.
  void  dump () const   dump - Print the current MachineFunction to cerr, useful for debugger use.
  bool  verify (Pass *p=nullptr, const char *Banner=nullptr, raw_ostream *OS=nullptr, bool AbortOnError=true) const   Run the current MachineFunction through the machine code verifier, useful for debugger use.
  bool  verify (LiveIntervals *LiveInts, SlotIndexes *Indexes, const char *Banner=nullptr, raw_ostream *OS=nullptr, bool AbortOnError=true) const   Run the current MachineFunction through the machine code verifier, useful for debugger use.
  Register  addLiveIn (MCRegister PReg, const TargetRegisterClass *RC)   addLiveIn - Add the specified physical register as a live-in value and create a corresponding virtual register for it.
  iterator  begin ()   const_iterator  begin () const   iterator  end ()   const_iterator  end () const   reverse_iterator  rbegin ()   const_reverse_iterator  rbegin () const   reverse_iterator  rend ()   const_reverse_iterator  rend () const   unsigned  size () const   bool  empty () const   const MachineBasicBlockfront () const   MachineBasicBlockfront ()   const MachineBasicBlockback () const   MachineBasicBlockback ()   void  push_back (MachineBasicBlock *MBB)   void  push_front (MachineBasicBlock *MBB)   void  insert (iterator MBBI, MachineBasicBlock *MBB)   void  splice (iterator InsertPt, iterator MBBI)   void  splice (iterator InsertPt, MachineBasicBlock *MBB)   void  splice (iterator InsertPt, iterator MBBI, iterator MBBE)   void  remove (iterator MBBI)   void  remove (MachineBasicBlock *MBBI)   void  erase (iterator MBBI)   void  erase (MachineBasicBlock *MBBI)   template<typename Comp > void  sort (Comp comp)   unsigned  getInstructionCount () const   Return the number of MachineInstrs in this MachineFunction.
  unsigned  addToMBBNumbering (MachineBasicBlock *MBB)   Adds the MBB to the internal numbering.
  void  removeFromMBBNumbering (unsigned N)   removeFromMBBNumbering - Remove the specific machine basic block from our tracker, this is only really to be used by the MachineBasicBlock implementation.
  MachineInstrCreateMachineInstr (const MCInstrDesc &MCID, DebugLoc DL, bool NoImplicit=false)   CreateMachineInstr - Allocate a new MachineInstr.
  MachineInstrCloneMachineInstr (const MachineInstr *Orig)   Create a new MachineInstr which is a copy of Orig, identical in all ways except the instruction has no parent, prev, or next.
  MachineInstrcloneMachineInstrBundle (MachineBasicBlock &MBB, MachineBasicBlock::iterator InsertBefore, const MachineInstr &Orig)   Clones instruction or the whole instruction bundle Orig and insert into MBB before InsertBefore.
  void  deleteMachineInstr (MachineInstr *MI)   DeleteMachineInstr - Delete the given MachineInstr.
  MachineBasicBlockCreateMachineBasicBlock (const BasicBlock *BB=nullptr, std::optional< UniqueBBID > BBID=std::nullopt)   CreateMachineBasicBlock - Allocate a new MachineBasicBlock.
  void  deleteMachineBasicBlock (MachineBasicBlock *MBB)   DeleteMachineBasicBlock - Delete the given MachineBasicBlock.
  MachineMemOperandgetMachineMemOperand (MachinePointerInfo PtrInfo, MachineMemOperand::Flags f, LLT MemTy, Align base_alignment, const AAMDNodes &AAInfo=AAMDNodes(), const MDNode *Ranges=nullptr, SyncScope::ID SSID=SyncScope::System, AtomicOrdering Ordering=AtomicOrdering::NotAtomic, AtomicOrdering FailureOrdering=AtomicOrdering::NotAtomic)   getMachineMemOperand - Allocate a new MachineMemOperand.
  MachineMemOperandgetMachineMemOperand (MachinePointerInfo PtrInfo, MachineMemOperand::Flags F, LocationSize Size, Align BaseAlignment, const AAMDNodes &AAInfo=AAMDNodes(), const MDNode *Ranges=nullptr, SyncScope::ID SSID=SyncScope::System, AtomicOrdering Ordering=AtomicOrdering::NotAtomic, AtomicOrdering FailureOrdering=AtomicOrdering::NotAtomic)   MachineMemOperandgetMachineMemOperand (MachinePointerInfo PtrInfo, MachineMemOperand::Flags F, uint64_t Size, Align BaseAlignment, const AAMDNodes &AAInfo=AAMDNodes(), const MDNode *Ranges=nullptr, SyncScope::ID SSID=SyncScope::System, AtomicOrdering Ordering=AtomicOrdering::NotAtomic, AtomicOrdering FailureOrdering=AtomicOrdering::NotAtomic)   MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, int64_t Offset, LLT Ty)   getMachineMemOperand - Allocate a new MachineMemOperand by copying an existing one, adjusting by an offset and using the given size.
  MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, int64_t Offset, LocationSize Size)   MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, int64_t Offset, uint64_t Size)   MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, const MachinePointerInfo &PtrInfo, LocationSize Size)   getMachineMemOperand - Allocate a new MachineMemOperand by copying an existing one, replacing only the MachinePointerInfo and size.
  MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, const MachinePointerInfo &PtrInfo, LLT Ty)   MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, const MachinePointerInfo &PtrInfo, uint64_t Size)   MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, const AAMDNodes &AAInfo)   Allocate a new MachineMemOperand by copying an existing one, replacing only AliasAnalysis information.
  MachineMemOperandgetMachineMemOperand (const MachineMemOperand *MMO, MachineMemOperand::Flags Flags)   Allocate a new MachineMemOperand by copying an existing one, replacing the flags.
  MachineOperandallocateOperandArray (OperandCapacity Cap)   Allocate an array of MachineOperands.
  void  deallocateOperandArray (OperandCapacity Cap, MachineOperand *Array)   Dellocate an array of MachineOperands and recycle the memory.
  uint32_tallocateRegMask ()   Allocate and initialize a register mask with NumRegister bits.
  ArrayRef< int >  allocateShuffleMask (ArrayRef< int > Mask)   MachineInstr::ExtraInfo *  createMIExtraInfo (ArrayRef< MachineMemOperand * > MMOs, MCSymbol *PreInstrSymbol=nullptr, MCSymbol *PostInstrSymbol=nullptr, MDNode *HeapAllocMarker=nullptr, MDNode *PCSections=nullptr, uint32_t CFIType=0, MDNode *MMRAs=nullptr)   Allocate and construct an extra info structure for a MachineInstr.
  const charcreateExternalSymbolName (StringRef Name)   Allocate a string and populate it with the given external symbol name.
  MCSymbolgetJTISymbol (unsigned JTI, MCContext &Ctx, bool isLinkerPrivate=false) const   getJTISymbol - Return the MCSymbol for the specified non-empty jump table.
  MCSymbolgetPICBaseSymbol () const   getPICBaseSymbol - Return a function-local symbol to represent the PIC base.
  const std::vector< MCCFIInstruction > &  getFrameInstructions () const   Returns a reference to a list of cfi instructions in the function's prologue.
  unsigned  addFrameInst (const MCCFIInstruction &Inst)   const std::vector< MCSymbol * > &  getLongjmpTargets () const   Returns a reference to a list of symbols immediately following calls to _setjmp in the function.
  void  addLongjmpTarget (MCSymbol *Target)   Add the specified symbol to the list of valid longjmp targets for Windows Control Flow Guard.
  const std::vector< MCSymbol * > &  getCatchretTargets () const   Returns a reference to a list of symbols that we have catchrets.
  void  addCatchretTarget (MCSymbol *Target)   Add the specified symbol to the list of valid catchret targets for Windows EHCont Guard.
  CalledGlobalInfo  tryGetCalledGlobal (const MachineInstr *MI) const   Tries to get the global and target flags for a call site, if the instruction is a call to a global.
  void  addCalledGlobal (const MachineInstr *MI, CalledGlobalInfo Details)   Notes the global and target flags for a call site.
  auto  getCalledGlobals () const   Iterates over the full set of call sites and their associated globals.
  void  setVariableDbgInfo (const DILocalVariable *Var, const DIExpression *Expr, int Slot, const DILocation *Loc)   Collect information used to emit debugging information of a variable in a stack slot.
  void  setVariableDbgInfo (const DILocalVariable *Var, const DIExpression *Expr, MCRegister Reg, const DILocation *Loc)   Collect information used to emit debugging information of a variable in the entry value of a register.
  VariableDbgInfoMapTygetVariableDbgInfo ()   const VariableDbgInfoMapTygetVariableDbgInfo () const   auto  getInStackSlotVariableDbgInfo ()   Returns the collection of variables for which we have debug info and that have been assigned a stack slot.
  auto  getInStackSlotVariableDbgInfo () const   Returns the collection of variables for which we have debug info and that have been assigned a stack slot.
  auto  getEntryValueVariableDbgInfo () const   Returns the collection of variables for which we have debug info and that have been assigned an entry value register.
  void  addCallSiteInfo (const MachineInstr *CallI, CallSiteInfo &&CallInfo)   Start tracking the arguments passed to the call CallI.
  const CallSiteInfoMapgetCallSitesInfo () const   unsigned  getNewDebugInstrNum ()   static const unsigned int  DebugOperandMemNumber = 1000000   A reserved operand number representing the instructions memory operand, for instructions that have a stack spill fused into them.
  void  setDebugInstrNumberingCount (unsigned Num)   Set value of DebugInstrNumberingCount field.
  void  makeDebugValueSubstitution (DebugInstrOperandPair, DebugInstrOperandPair, unsigned SubReg=0)   Create a substitution between one <instr,operand> value to a different, new value.
  void  substituteDebugValuesForInst (const MachineInstr &Old, MachineInstr &New, unsigned MaxOperand=UINT_MAX)   Create substitutions for any tracked values in Old, to point at New.
  DebugInstrOperandPair  salvageCopySSA (MachineInstr &MI, DenseMap< Register, DebugInstrOperandPair > &DbgPHICache)   Find the underlying defining instruction / operand for a COPY instruction while in SSA form.
  DebugInstrOperandPair  salvageCopySSAImpl (MachineInstr &MI)   void  finalizeDebugInstrRefs ()   Finalise any partially emitted debug instructions.
  bool  shouldUseDebugInstrRef () const   Determine whether, in the current machine configuration, we should use instruction referencing or not.
  bool  useDebugInstrRef () const   Returns true if the function's variable locations are tracked with instruction referencing.
  void  setUseDebugInstrRef (bool UseInstrRef)   Set whether this function will use instruction referencing or not.
  void  eraseAdditionalCallInfo (const MachineInstr *MI)   Following functions update call site info.
  void  copyAdditionalCallInfo (const MachineInstr *Old, const MachineInstr *New)   Copy the call site info from Old to \ New.
  void  moveAdditionalCallInfo (const MachineInstr *Old, const MachineInstr *New)   Move the call site info from Old to \New call site info.
 

Definition at line 267 of file MachineFunction.h.

◆ const_iterator ◆ const_reverse_iterator ◆ DebugInstrOperandPair ◆ iterator ◆ OperandCapacity ◆ reverse_iterator ◆ VariableDbgInfoMapTy ◆ MachineFunction() [1/2] ◆ MachineFunction() [2/2] ◆ ~MachineFunction() ◆ addCalledGlobal() ◆ addCallSiteInfo() ◆ addCatchretTarget() void llvm::MachineFunction::addCatchretTarget ( MCSymbolTarget ) inline

Add the specified symbol to the list of valid catchret targets for Windows EHCont Guard.

Definition at line 1200 of file MachineFunction.h.

◆ addCodeViewAnnotation() void llvm::MachineFunction::addCodeViewAnnotation ( MCSymbolLabel, MDNodeMD  ) inline ◆ addFrameInst()

Definition at line 334 of file MachineFunction.cpp.

Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::RISCVFrameLowering::allocateStack(), buildCFAOffs(), llvm::MSP430FrameLowering::BuildCFI(), llvm::X86FrameLowering::BuildCFI(), buildDefCFAReg(), llvm::AArch64InstrInfo::buildOutlinedFrame(), convertCalleeSaveRestoreToSPPrePostIncDec(), emitCalleeSavedRestores(), EmitCfiOffset(), EmitDefCfaOffset(), EmitDefCfaRegister(), emitDefineCFAWithFP(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::RISCVFrameLowering::emitEpilogue(), emitFrameOffsetAdj(), llvm::XtensaFrameLowering::emitPrologue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), emitSCSEpilogue(), emitSCSPrologue(), emitShadowCallStackEpilogue(), emitShadowCallStackPrologue(), emitVGSaveRestore(), llvm::PPCFrameLowering::inlineStackProbe(), insertCFISameValue(), insertRememberRestorePair(), and llvm::AArch64FrameLowering::resetCFIToInitialState().

◆ addInvoke() ◆ addLandingPad()

Add a new panding pad, and extract the exception handling information from the landingpad instruction.

Returns the label ID for the landing pad entry.

Definition at line 831 of file MachineFunction.cpp.

References assert(), llvm::MCContext::createTempSymbol(), llvm::MachineBasicBlock::getBasicBlock(), getFilterIDFor(), llvm::BasicBlock::getFirstNonPHIIt(), getOrCreateLandingPadInfo(), getTypeIDFor(), I, llvm::LandingPadInfo::LandingPadLabel, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::Value::stripPointerCasts(), and llvm::LandingPadInfo::TypeIds.

◆ addLiveIn()

addLiveIn - Add the specified physical register as a live-in value and create a corresponding virtual register for it.

Add the specified physical register as a live-in value and create a corresponding virtual register for it.

Definition at line 762 of file MachineFunction.cpp.

References assert(), llvm::TargetRegisterClass::contains(), getRegInfo(), llvm::TargetRegisterClass::hasSubClassEq(), and MRI.

Referenced by allocateFixedSGPRInputImpl(), llvm::SITargetLowering::allocateHSAUserSGPRs(), allocateHSAUserSGPRs(), llvm::SITargetLowering::allocateLDSKernelId(), llvm::SITargetLowering::allocatePreloadKernArgSGPRs(), allocateSGPR32InputImpl(), llvm::SITargetLowering::allocateSpecialEntryInputVGPRs(), llvm::SITargetLowering::allocateSystemSGPRs(), allocateVGPR32Input(), llvm::CCState::analyzeMustTailForwardedRegisters(), llvm::getFunctionLiveInPhysReg(), getv64i1Argument(), handleMustTailForwardedRegisters(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::VETargetLowering::LowerFormalArguments(), llvm::XtensaTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerRETURNADDR(), llvm::LanaiTargetLowering::LowerRETURNADDR(), and LowerRETURNADDR().

◆ addLongjmpTarget() void llvm::MachineFunction::addLongjmpTarget ( MCSymbolTarget ) inline

Add the specified symbol to the list of valid longjmp targets for Windows Control Flow Guard.

Definition at line 1190 of file MachineFunction.h.

◆ addToMBBNumbering() ◆ allocateOperandArray() ◆ allocateRegMask() uint32_t * MachineFunction::allocateRegMask ( ) ◆ allocateShuffleMask() ◆ assignBeginEndSections() void MachineFunction::assignBeginEndSections ( ) ◆ back() [1/2] ◆ back() [2/2] ◆ begin() [1/2] iterator llvm::MachineFunction::begin ( ) inline

Definition at line 947 of file MachineFunction.h.

Referenced by addImplicitDefs(), llvm::X86FrameLowering::adjustForHiPEPrologue(), llvm::X86FrameLowering::adjustForSegmentedStacks(), assignBeginEndSections(), cloneCfiPrologue(), collectCallSiteParameters(), computeBlockInfo(), llvm::SwiftErrorValueTracking::createEntriesInEntryBlock(), createFrameHelperMachineFunction(), llvm::AVRTargetLowering::EmitInstrWithCustomInserter(), llvm::ScheduleDAGSDNodes::EmitSchedule(), estimateFunctionSizeInBytes(), llvm::SPIRVTargetLowering::finalizeLowering(), findPrologueEndLoc(), llvm::HexagonInstrInfo::genAllInsnTimingClasses(), getBBFallenThrough(), getOrCreateFrameHelper(), llvm::MachineLoop::getTopBlock(), llvm::MachineBasicBlock::isEntryBlock(), llvm::GraphTraits< DOTMachineFuncInfo * >::nodes_begin(), ProfitableToMerge(), RenumberBlocks(), runImpl(), llvm::Legalizer::runOnMachineFunction(), GCEmptyBasicBlocks::runOnMachineFunction(), llvm::XtensaFrameLowering::spillCalleeSavedRegisters(), llvm::LoopTraversal::traverse(), verifyCTRBranch(), and visit().

◆ begin() [2/2] ◆ callsEHReturn() bool llvm::MachineFunction::callsEHReturn ( ) const inline ◆ callsUnwindInit() bool llvm::MachineFunction::callsUnwindInit ( ) const inline ◆ cloneInfo()

template<typename Ty >

Ty * llvm::MachineFunction::cloneInfo ( const Ty &  Old ) inline

Definition at line 840 of file MachineFunction.h.

References Allocator, and assert().

Referenced by llvm::AArch64FunctionInfo::clone(), llvm::SIMachineFunctionInfo::clone(), llvm::ARCFunctionInfo::clone(), llvm::ARMFunctionInfo::clone(), llvm::AVRMachineFunctionInfo::clone(), llvm::CSKYMachineFunctionInfo::clone(), llvm::HexagonMachineFunctionInfo::clone(), llvm::LanaiMachineFunctionInfo::clone(), llvm::LoongArchMachineFunctionInfo::clone(), llvm::M68kMachineFunctionInfo::clone(), llvm::MipsFunctionInfo::clone(), llvm::MSP430MachineFunctionInfo::clone(), llvm::NVPTXMachineFunctionInfo::clone(), llvm::PPCFunctionInfo::clone(), llvm::RISCVMachineFunctionInfo::clone(), llvm::SparcMachineFunctionInfo::clone(), llvm::SystemZMachineFunctionInfo::clone(), llvm::VEMachineFunctionInfo::clone(), llvm::WebAssemblyFunctionInfo::clone(), llvm::X86MachineFunctionInfo::clone(), and llvm::XCoreFunctionInfo::clone().

◆ cloneInfoFrom() ◆ CloneMachineInstr()

Create a new MachineInstr which is a copy of Orig, identical in all ways except the instruction has no parent, prev, or next.

Create a new MachineInstr which is a copy of the 'Orig' instruction, identical in all ways except the instruction has no parent, prev, or next.

Bundling flags are reset.

Note: Clones a single instruction, not whole instruction bundles. Does not perform target specific adjustments; consider using TargetInstrInfo::duplicate() instead.

Definition at line 439 of file MachineFunction.cpp.

Referenced by llvm::SwingSchedulerDAG::applyInstrChange(), cloneCfiPrologue(), cloneInstr(), cloneMachineInstrBundle(), llvm::WebAssemblyDebugValueManager::cloneSink(), llvm::TargetInstrInfo::commuteInstructionImpl(), llvm::SwingSchedulerDAG::fixupRegisterOverlaps(), for(), genAlternativeDpCodeSequence(), llvm::WindowScheduler::generateTripleMBB(), llvm::PeelingModuloScheduleExpander::moveStageBetweenBlocks(), llvm::PeelSingleBlockLoop(), performSink(), llvm::TargetInstrInfo::reMaterialize(), llvm::SIInstrInfo::reMaterialize(), llvm::ARMBaseInstrInfo::reMaterialize(), llvm::X86InstrInfo::reMaterialize(), llvm::RegBankSelect::repairReg(), and llvm::WebAssemblyDebugValueManager::sink().

◆ cloneMachineInstrBundle() ◆ copyAdditionalCallInfo()

Copy the call site info from Old to \ New.

Its usage is when we are making a copy of the instruction that will be inserted at different point of the instruction stream.

Definition at line 957 of file MachineFunction.cpp.

References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), eraseAdditionalCallInfo(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), getCallInstr(), and llvm::MachineInstr::shouldUpdateAdditionalCallInfo().

Referenced by cloneMachineInstrBundle().

◆ createExternalSymbolName() ◆ CreateMachineBasicBlock()

CreateMachineBasicBlock - Allocate a new MachineBasicBlock.

Allocate a new MachineBasicBlock.

Use this instead of ‘new MachineBasicBlock’. Sets MachineBasicBlock::BBID if basic-block-sections is enabled for the function.

Use this instead of ‘new MachineBasicBlock’.

Definition at line 499 of file MachineFunction.cpp.

References llvm::List, MBB, and llvm::MachineBasicBlock::setBBID().

Referenced by addUnreachableAfterTryTables(), llvm::X86FrameLowering::adjustForHiPEPrologue(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::SwitchCG::SwitchLowering::buildJumpTable(), createDedicatedExit(), createFrameHelperMachineFunction(), llvm::PeelingModuloScheduleExpander::CreateLCSSAExitingBlock(), llvm::SystemZ::emitBlockAfter(), llvm::RISCVTargetLowering::emitDynamicProbedAlloc(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::AArch64TargetLowering::EmitF128CSEL(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::AVRTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::emitProbedAlloca(), emitReadCounterWidePseudo(), llvm::VETargetLowering::emitSjLjDispatchBlock(), emitStackProbeInline(), emitXBegin(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::VEInstrInfo::expandExtendStackPseudo(), llvm::SelectionDAGBuilder::FindMergedConditions(), INITIALIZE_PASS(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::SystemZXPLINKFrameLowering::inlineStackProbe(), insertDivByZeroTrap(), llvm::SIInstrInfo::insertSimulatedTrap(), llvm::AMDGPULegalizerInfo::legalizeTrapEndpgm(), loadM0FromVGPR(), loadMBUFScalarOperandsFromVGPR(), llvm::PeelSingleBlockLoop(), llvm::AArch64InstrInfo::probedStackAlloc(), llvm::ARMBlockPlacement::revertWhileToDoLoop(), llvm::IRTranslator::runOnMachineFunction(), llvm::FunctionLoweringInfo::set(), llvm::MachineBasicBlock::splitAt(), splitBlockForLoop(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitEdge(), splitEndLoopBB(), splitMBB(), and tryToSplitRestore().

◆ CreateMachineInstr()

CreateMachineInstr - Allocate a new MachineInstr.

Allocate a new MachineInstr. Use this instead of ‘new MachineInstr’.

Use this instead of ‘new MachineInstr’.

Definition at line 429 of file MachineFunction.cpp.

References DL.

Referenced by llvm::BuildMI(), llvm::HexagonPacketizerList::canPromoteToDotNew(), llvm::HexagonHazardRecognizer::EmitInstruction(), foldPatchpoint(), fuseInst(), fuseTwoAddrInst(), llvm::HexagonHazardRecognizer::getHazardType(), LowerCallResults(), llvm::TargetInstrInfo::reassociateOps(), llvm::HexagonPacketizerList::tryAllocateResourcesForConstExt(), and llvm::X86InstrInfo::unfoldMemoryOperand().

◆ createMIExtraInfo()

Allocate and construct an extra info structure for a MachineInstr.

This is allocated on the function's allocator and so lives the life of the function.

Definition at line 609 of file MachineFunction.cpp.

◆ deallocateOperandArray() ◆ deleteMachineBasicBlock() ◆ deleteMachineInstr() void MachineFunction::deleteMachineInstr ( MachineInstrMI )

DeleteMachineInstr - Delete the given MachineInstr.

Delete the given MachineInstr.

This function also serves as the MachineInstr destructor - the real ~MachineInstr() destructor must be empty.

Definition at line 474 of file MachineFunction.cpp.

References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::contains(), deallocateOperandArray(), and MI.

Referenced by llvm::HexagonPacketizerList::canPromoteToDotNew(), llvm::HexagonHazardRecognizer::EmitInstruction(), llvm::SwingSchedulerDAG::finishBlock(), llvm::HexagonHazardRecognizer::getHazardType(), popRegsFromStack(), and llvm::HexagonPacketizerList::tryAllocateResourcesForConstExt().

◆ dump() ◆ empty() bool llvm::MachineFunction::empty ( ) const inline ◆ end() [1/2]

Definition at line 949 of file MachineFunction.h.

Referenced by assignBeginEndSections(), bbHasFallthrough(), BBHasFallthrough(), canFallThroughTo(), llvm::AVRTargetLowering::EmitInstrWithCustomInserter(), estimateFunctionSizeInBytes(), llvm::SPIRVTargetLowering::finalizeLowering(), findPrologueEndLoc(), FixTail(), llvm::MachineLoop::getBottomBlock(), getNextBlock(), jumpTableFollowsTB(), llvm::GraphTraits< DOTMachineFuncInfo * >::nodes_end(), RenumberBlocks(), runImpl(), llvm::CFIFixup::runOnMachineFunction(), llvm::MachineBasicBlock::SplitCriticalEdge(), tryToSplitRestore(), and verifyCFIntrinsic().

◆ end() [2/2] ◆ ensureAlignment() void llvm::MachineFunction::ensureAlignment ( Align  A ) inline ◆ erase() [1/2] void llvm::MachineFunction::erase ( iterator  MBBI ) inline ◆ erase() [2/2] ◆ eraseAdditionalCallInfo()

Following functions update call site info.

They should be called before removing, replacing or copying call instruction. Erase the call site info for MI. It is used to remove a call instruction from the instruction stream.

Definition at line 941 of file MachineFunction.cpp.

References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::erase(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), getCallInstr(), and MI.

Referenced by copyAdditionalCallInfo(), moveAdditionalCallInfo(), and llvm::TargetInstrInfo::ReplaceTailWithBranchTo().

◆ estimateFunctionSizeInBytes() int64_t MachineFunction::estimateFunctionSizeInBytes ( )

Return an estimate of the function's code size, taking into account block and function alignment.

Offset - Distance from the beginning of the function to the end of the basic block.

Definition at line 381 of file MachineFunction.cpp.

References llvm::alignTo(), begin(), BlockSize, end(), llvm::MachineBasicBlock::getAlignment(), getAlignment(), llvm::TargetSubtargetInfo::getInstrInfo(), getSubtarget(), MBBI, MI, llvm::Offset, TII, and llvm::Align::value().

Referenced by llvm::XtensaFrameLowering::processFunctionBeforeFrameFinalized().

◆ exposesReturnsTwice() bool llvm::MachineFunction::exposesReturnsTwice ( ) const inline ◆ finalizeDebugInstrRefs() void MachineFunction::finalizeDebugInstrRefs ( )

Finalise any partially emitted debug instructions.

These are DBG_INSTR_REF instructions where we only knew the vreg of the value they use, not the instruction that defines that vreg. Once isel finishes, we should have enough information for every DBG_INSTR_REF to point at an instruction (or DBG_PHI).

Definition at line 1218 of file MachineFunction.cpp.

References assert(), llvm::MachineRegisterInfo::def_instr_begin(), DefMI, llvm::TargetSubtargetInfo::getInstrInfo(), getSubtarget(), llvm::MachineRegisterInfo::hasOneDef(), MBB, MI, Reg, salvageCopySSA(), and TII.

Referenced by llvm::SelectionDAGISel::runOnMachineFunction().

◆ front() [1/2] ◆ front() [2/2]

Definition at line 959 of file MachineFunction.h.

Referenced by assignBeginEndSections(), llvm::WinException::beginFunction(), llvm::EHStreamer::computeCallSiteTable(), llvm::rdf::Liveness::computeLiveIns(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::EHStreamer::emitExceptionTable(), llvm::AsmPrinter::emitFunctionBody(), llvm::HexagonDAGToDAGISel::emitFunctionEntryCode(), llvm::X86AsmPrinter::emitInstruction(), llvm::ARMAsmPrinter::emitMachineConstantPoolValue(), llvm::XtensaFrameLowering::emitPrologue(), llvm::HexagonFrameLowering::emitPrologue(), llvm::LanaiFrameLowering::emitPrologue(), llvm::MSP430FrameLowering::emitPrologue(), llvm::NVPTXFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::SystemZXPLINKFrameLowering::emitPrologue(), llvm::VEFrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), ensureEntrySetPrio(), findScratchNonCalleeSaveRegister(), llvm::getEHScopeMembership(), llvm::rdf::FuncNode::getEntryBlock(), llvm::GraphTraits< DOTMachineFuncInfo * >::getEntryNode(), llvm::getFunctionLiveInPhysReg(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::SparcInstrInfo::getGlobalBaseReg(), llvm::VEInstrInfo::getGlobalBaseReg(), llvm::getOpVariableMBBIt(), llvm::MipsFunctionInfo::initGlobalBaseReg(), llvm::SlotIndexes::insertMBBInMaps(), isAlwaysIndirectTarget(), llvm::LiveRangeCalc::isJointlyDominated(), isSignExtendedW(), llvm::LiveVariables::MarkVirtRegAliveInBlock(), PrevCrossBBInst(), llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::ARMBlockPlacement::runOnMachineFunction(), llvm::ErrataWorkaround::runOnMachineFunction(), llvm::sortBasicBlocksAndUpdateBranches(), sortBlocks(), and updateLiveness().

◆ getAlignment() Align llvm::MachineFunction::getAlignment ( ) const inline ◆ getBlockNumbered()

getBlockNumbered - MachineBasicBlocks are automatically numbered when they are inserted into the machine function.

The block number for a machine basic block can be found by using the MBB::getNumber method, this method provides the inverse mapping.

Definition at line 866 of file MachineFunction.h.

References assert(), and N.

Referenced by llvm::ARMBasicBlockUtils::adjustBBOffsetsAfter(), llvm::SplitAnalysis::getFirstSplitPoint(), llvm::SplitAnalysis::getLastSplitPoint(), llvm::WebAssemblyFunctionInfo::initializeBaseYamlFields(), llvm::LiveRangeCalc::isJointlyDominated(), llvm::SPIRVCallLowering::lowerCall(), maybeUpdateTerminator(), llvm::SwiftErrorValueTracking::propagateVRegs(), and llvm::SplitEditor::splitLiveThroughBlock().

◆ getBlockNumberEpoch() unsigned llvm::MachineFunction::getBlockNumberEpoch ( ) const inline

Return the numbering "epoch" of block numbers, incremented after each numbering.

Intended for asserting that no renumbering was performed when used by, e.g., preserved analyses.

Definition at line 881 of file MachineFunction.h.

◆ getCalledGlobals() auto llvm::MachineFunction::getCalledGlobals ( ) const inline

Iterates over the full set of call sites and their associated globals.

Definition at line 1218 of file MachineFunction.h.

References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::begin(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), and llvm::make_range().

Referenced by llvm::MIRPrinter::convertCalledGlobals().

◆ getCallSiteBeginLabel() unsigned llvm::MachineFunction::getCallSiteBeginLabel ( MCSymbolBeginLabel ) const inline ◆ getCallSiteLandingPad() ◆ getCallSitesInfo() ◆ getCatchretTargets() const std::vector< MCSymbol * > & llvm::MachineFunction::getCatchretTargets ( ) const inline ◆ getCodeViewAnnotations() ◆ getConstantPool() [1/2]

getConstantPool - Return the constant pool object for the current function.

Definition at line 765 of file MachineFunction.h.

Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), duplicateCPV(), llvm::AsmPrinter::emitConstantPool(), llvm::WebAssemblyAsmPrinter::emitConstantPool(), llvm::XtensaAsmPrinter::emitConstantPool(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), emitLoadFromConstantPool(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), EstimateFunctionSizeInBytes(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::PPCInstrInfo::getConstantFromConstantPool(), llvm::AsmPrinter::GetCPISymbol(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::XtensaInstrInfo::insertIndirectBranch(), llvm::XtensaInstrInfo::loadImmediate(), llvm::XCoreInstrInfo::loadImmediate(), llvm::MIRPrinter::print(), llvm::ARMBaseInstrInfo::produceSameValue(), llvm::ARMAsmPrinter::runOnMachineFunction(), llvm::CSKYAsmPrinter::runOnMachineFunction(), and llvm::MipsAsmPrinter::runOnMachineFunction().

◆ getConstantPool() [2/2] ◆ getContext() MCContext & llvm::MachineFunction::getContext ( ) const inline

Definition at line 690 of file MachineFunction.h.

Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::MipsTargetLowering::AdjustInstrPostInstrSelection(), llvm::ModuloScheduleTestAnnotater::annotate(), llvm::DwarfCFIException::beginFunction(), buildDefCFAReg(), llvm::MSP430FrameLowering::emitCalleeSavedFrameMoves(), llvm::X86FrameLowering::emitCalleeSavedFrameMoves(), llvm::X86FrameLowering::emitCalleeSavedFrameMovesFullCFA(), llvm::AsmPrinter::emitFunctionBody(), llvm::AMDGPUAsmPrinter::emitFunctionBodyStart(), llvm::MipsAsmPrinter::emitFunctionBodyStart(), llvm::SystemZAsmPrinter::emitInstruction(), llvm::AsmPrinter::emitPCSections(), llvm::AsmPrinter::emitPCSectionsLabel(), llvm::XtensaFrameLowering::emitPrologue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), llvm::X86FrameLowering::enableShrinkWrapping(), llvm::MachineBasicBlock::getEHCatchretSymbol(), llvm::TargetLoweringObjectFileXCOFF::getEHInfoTableSymbol(), llvm::MachineBasicBlock::getEndSymbol(), llvm::PPCFunctionInfo::getGlobalEPSymbol(), llvm::PPCFunctionInfo::getLocalEPSymbol(), getMCSymbolForMBB(), llvm::PPCFunctionInfo::getPICOffsetSymbol(), llvm::X86RegisterInfo::getReservedRegs(), llvm::MachineBasicBlock::getSymbol(), llvm::PPCFunctionInfo::getTOCOffsetSymbol(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::SIInstrInfo::insertIndirectBranch(), LowerCallResults(), llvm::FastISel::lowerCallTo(), llvm::SystemZAsmPrinter::PrintAsmOperand(), recoverFramePointer(), llvm::SIProgramInfo::reset(), llvm::AMDGPUAsmPrinter::runOnMachineFunction(), llvm::X86AsmPrinter::runOnMachineFunction(), and transformCallee().

◆ getDataLayout()

Return the DataLayout attached to the Module associated to this MF.

Definition at line 309 of file MachineFunction.cpp.

References llvm::Function::getDataLayout().

Referenced by llvm::X86TargetLowering::BuildFILD(), llvm::ScheduleDAGInstrs::buildSchedGraph(), llvm::LoongArchTargetLowering::CanLowerReturn(), CC_AArch64_Custom_Block(), CC_ARM_AAPCS_Custom_Aggregate(), llvm::CC_RISCV(), llvm::CallLowering::checkReturnTypeForCallConv(), llvm::FunctionLoweringInfo::ComputePHILiveOutRegInfo(), llvm::SwiftErrorValueTracking::createEntriesInEntryBlock(), llvm::FunctionLoweringInfo::CreateRegs(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::SystemZTargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::MipsAsmPrinter::emitInstruction(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::TargetLoweringBase::emitPatchPoint(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::RISCVInstrInfo::foldMemoryOperandImpl(), llvm::AsmPrinter::GetCPISymbol(), llvm::CombinerHelper::getDataLayout(), llvm::SelectionDAG::getDataLayout(), llvm::PPCFunctionInfo::getGlobalEPSymbol(), getJTISymbol(), llvm::PPCFunctionInfo::getLocalEPSymbol(), llvm::WebAssemblyFrameLowering::getLocalForStackObject(), llvm::SwiftErrorValueTracking::getOrCreateVReg(), llvm::SwiftErrorValueTracking::getOrCreateVRegDefAt(), getPICBaseSymbol(), llvm::PPCFunctionInfo::getPICOffsetSymbol(), llvm::MSP430TargetLowering::getReturnAddressFrameIndex(), llvm::TargetInstrInfo::getStackSlotRange(), llvm::M68kMCInstLower::GetSymbolFromOperand(), llvm::SITargetLowering::getTgtMemIntrinsic(), llvm::PPCFunctionInfo::getTOCOffsetSymbol(), llvm::MachinePointerInfo::getUnknownStack(), llvm::CallLowering::handleAssignments(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::WebAssemblyMCInstLower::lower(), llvm::SystemZTargetLowering::LowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::RISCVCallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCall(), llvm::ARMCallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::RISCVCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::VETargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_64(), lowerFRAMEADDR(), llvm::MipsCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::RISCVCallLowering::lowerReturn(), llvm::X86TargetLowering::markLibCallAttributes(), llvm::CombinerHelper::matchCombineExtractedVectorLoad(), llvm::CombinerHelper::matchLoadOrCombine(), llvm::CombinerHelper::matchPtrAddZero(), llvm::PPCTargetLowering::PerformDAGCombine(), llvm::AsmPrinter::PrintSpecial(), processDbgDeclare(), llvm::SwiftErrorValueTracking::propagateVRegs(), llvm::SITargetLowering::requiresUniformRegister(), llvm::LegalizerHelper::scalarizeVectorBooleanStore(), and llvm::FunctionLoweringInfo::set().

◆ getDenormalMode() ◆ getEntryValueVariableDbgInfo() auto llvm::MachineFunction::getEntryValueVariableDbgInfo ( ) const inline ◆ getFilterIDFor() ◆ getFilterIds() const std::vector< unsigned > & llvm::MachineFunction::getFilterIds ( ) const inline ◆ getFrameInfo() [1/2]

getFrameInfo - Return the frame info object for the current function.

This object contains information about objects allocated on the stack frame of the current function in an abstract way.

Definition at line 749 of file MachineFunction.h.

Referenced by addCalleeSavedRegs(), llvm::addFrameReference(), addFrameReference(), llvm::M68k::addFrameReference(), llvm::RegsForValue::AddInlineAsmOperands(), llvm::LiveRegUnits::addLiveOuts(), llvm::LivePhysRegs::addLiveOutsNoPristines(), llvm::M68k::addMemOperand(), llvm::PPCFrameLowering::addScavengingSpillSlot(), llvm::X86FrameLowering::adjustForHiPEPrologue(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::SIFrameLowering::allocateScavengingFrameIndexesNearIncomingSP(), llvm::SIMachineFunctionInfo::allocateSGPRSpillToVGPRLane(), llvm::StatepointLoweringState::allocateStackSlot(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::SIMachineFunctionInfo::allocateWWMSpill(), allSGPRSpillsAreDead(), llvm::ARCFrameLowering::assignCalleeSavedSpillSlots(), llvm::HexagonFrameLowering::assignCalleeSavedSpillSlots(), llvm::M68kFrameLowering::assignCalleeSavedSpillSlots(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::SystemZELFFrameLowering::assignCalleeSavedSpillSlots(), llvm::SystemZXPLINKFrameLowering::assignCalleeSavedSpillSlots(), llvm::X86FrameLowering::assignCalleeSavedSpillSlots(), llvm::AArch64FrameLowering::assignCalleeSavedSpillSlots(), llvm::RISCVFrameLowering::assignCalleeSavedSpillSlots(), llvm::VirtRegMap::assignVirt2StackSlot(), llvm::CodeViewDebug::beginFunctionImpl(), buildEpilogRestore(), llvm::X86TargetLowering::BuildFILD(), buildPrologSpill(), llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::SIRegisterInfo::buildVGPRSpillLoadStore(), CalculateTailCallArgDest(), llvm::AArch64RegisterInfo::cannotEliminateFrame(), llvm::ARMBaseRegisterInfo::cannotEliminateFrame(), llvm::TargetRegisterInfo::canRealignStack(), llvm::M68kRegisterInfo::canRealignStack(), llvm::X86RegisterInfo::canRealignStack(), llvm::ARMFrameLowering::canSimplifyCallFramePseudos(), llvm::AArch64FrameLowering::canUseRedZone(), llvm::BaseIndexOffset::computeAliasing(), computeCalleeSaveRegisterPairs(), llvm::GISelKnownBits::computeKnownAlignment(), llvm::TargetLowering::computeKnownBitsForFrameIndex(), llvm::MIRPrinter::convertStackObjects(), llvm::MipsFunctionInfo::createEhDataRegsFI(), llvm::XCoreFunctionInfo::createEHSpillSlot(), llvm::XCoreFunctionInfo::createFPSpillSlot(), llvm::MipsFunctionInfo::createISRRegFI(), llvm::XCoreFunctionInfo::createLRSpillSlot(), llvm::SelectionDAG::CreateStackTemporary(), llvm::LegalizerHelper::createStackTemporary(), llvm::TargetInstrInfo::describeLoadedValue(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::MipsSEFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSaves(), llvm::LanaiFrameLowering::determineCalleeSaves(), llvm::M68kFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::PPCFrameLowering::determineFrameLayout(), llvm::SystemZXPLINKFrameLowering::determineFrameLayout(), llvm::PPCFrameLowering::determineFrameLayoutAndUpdate(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), llvm::TargetOptions::DisableFramePointerElim(), llvm::AArch64FrameLowering::eliminateCallFramePseudoInstr(), llvm::AArch64RegisterInfo::eliminateFrameIndex(), llvm::ARCRegisterInfo::eliminateFrameIndex(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), llvm::ThumbRegisterInfo::eliminateFrameIndex(), llvm::LanaiRegisterInfo::eliminateFrameIndex(), llvm::M68kRegisterInfo::eliminateFrameIndex(), llvm::MipsRegisterInfo::eliminateFrameIndex(), llvm::MSP430RegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::SIRegisterInfo::eliminateFrameIndex(), llvm::AVRRegisterInfo::eliminateFrameIndex(), llvm::BPFRegisterInfo::eliminateFrameIndex(), llvm::NVPTXRegisterInfo::eliminateFrameIndex(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::X86RegisterInfo::eliminateFrameIndex(), llvm::XtensaRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Spills(), llvm::AArch64TargetLowering::EmitAllocateSMESaveBuffer(), llvm::AArch64TargetLowering::EmitAllocateZABuffer(), llvm::MSP430FrameLowering::emitCalleeSavedFrameMoves(), llvm::X86FrameLowering::emitCalleeSavedFrameMoves(), emitCalleeSavedRestores(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::SIFrameLowering::emitEpilogue(), llvm::ARCFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::Thumb1FrameLowering::emitEpilogue(), llvm::AVRFrameLowering::emitEpilogue(), llvm::CSKYFrameLowering::emitEpilogue(), llvm::LoongArchFrameLowering::emitEpilogue(), llvm::M68kFrameLowering::emitEpilogue(), llvm::Mips16FrameLowering::emitEpilogue(), llvm::MipsSEFrameLowering::emitEpilogue(), llvm::MSP430FrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::RISCVFrameLowering::emitEpilogue(), llvm::SparcFrameLowering::emitEpilogue(), llvm::SystemZELFFrameLowering::emitEpilogue(), llvm::SystemZXPLINKFrameLowering::emitEpilogue(), llvm::VEFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::XCoreFrameLowering::emitEpilogue(), llvm::XtensaFrameLowering::emitEpilogue(), llvm::MipsAsmPrinter::emitFrameDirective(), llvm::HexagonDAGToDAGISel::emitFunctionEntryCode(), llvm::SystemZAsmPrinter::emitFunctionEntryLabel(), llvm::AArch64TargetLowering::EmitInitTPIDR2Object(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::TargetLoweringBase::emitPatchPoint(), llvm::XtensaFrameLowering::emitPrologue(), llvm::AArch64FrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::AVRFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::HexagonFrameLowering::emitPrologue(), llvm::LanaiFrameLowering::emitPrologue(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::M68kFrameLowering::emitPrologue(), llvm::Mips16FrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::MSP430FrameLowering::emitPrologue(), llvm::NVPTXFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::SystemZXPLINKFrameLowering::emitPrologue(), llvm::VEFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), emitSCSEpilogue(), emitSCSPrologue(), llvm::VETargetLowering::emitSjLjDispatchBlock(), llvm::AsmPrinter::emitStackSizeSection(), llvm::AsmPrinter::emitStackUsage(), EmitTailCallStoreFPAndRetAddr(), EmitTailCallStoreRetAddr(), emitVGSaveRestore(), enableAllocFrameElim(), llvm::CCState::ensureMaxAlignment(), llvm::BaseIndexOffset::equalBaseIndex(), llvm::MipsFrameLowering::estimateStackSize(), llvm::VEInstrInfo::expandGetStackTopPseudo(), llvm::ARMTargetLowering::finalizeLowering(), fixupFuncForFI(), foldInlineAsmMemOperand(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::X86InstrInfo::foldMemoryOperandImpl(), getAddressForMemoryInput(), llvm::TargetFrameLowering::getCalleeSaves(), llvm::X86FrameLowering::getDwarfFrameBase(), llvm::HexagonTargetLowering::GetDynamicTLSAddr(), llvm::LoongArchFrameLowering::getFirstSPAdjustAmount(), llvm::RISCVFrameLowering::getFirstSPAdjustAmount(), getFPOffset(), getFRAMEADDR(), getFrameIndexMMO(), llvm::TargetFrameLowering::getFrameIndexReference(), llvm::R600FrameLowering::getFrameIndexReference(), llvm::SIFrameLowering::getFrameIndexReference(), llvm::CSKYFrameLowering::getFrameIndexReference(), llvm::HexagonFrameLowering::getFrameIndexReference(), llvm::LoongArchFrameLowering::getFrameIndexReference(), llvm::M68kFrameLowering::getFrameIndexReference(), llvm::MipsSEFrameLowering::getFrameIndexReference(), llvm::NVPTXFrameLowering::getFrameIndexReference(), llvm::RISCVFrameLowering::getFrameIndexReference(), llvm::SparcFrameLowering::getFrameIndexReference(), llvm::VEFrameLowering::getFrameIndexReference(), llvm::X86FrameLowering::getFrameIndexReference(), llvm::TargetFrameLowering::getFrameIndexReferenceFromSP(), llvm::AArch64FrameLowering::getFrameIndexReferenceFromSP(), llvm::AArch64FrameLowering::getFrameIndexReferencePreferSP(), llvm::X86FrameLowering::getFrameIndexReferencePreferSP(), llvm::X86FrameLowering::getFrameIndexReferenceSP(), llvm::ARMBankConflictHazardRecognizer::getHazardType(), llvm::R600InstrInfo::getIndirectIndexBegin(), llvm::R600InstrInfo::getIndirectIndexEnd(), llvm::AArch64RegisterInfo::getLocalAddressRegister(), llvm::WebAssemblyFrameLowering::getLocalForStackObject(), getMachineMemOperand(), getMemcpyLoadsAndStores(), getMemmoveLoadsAndStores(), llvm::MipsInstrInfo::GetMemOperand(), getMemsetStores(), llvm::RISCVMachineFunctionInfo::getMoveF64FrameIndex(), llvm::MipsFunctionInfo::getMoveF64ViaSpillFI(), llvm::SystemZELFFrameLowering::getOrCreateFramePointerSaveIndex(), llvm::SystemZXPLINKFrameLowering::getOrCreateFramePointerSaveIndex(), llvm::AArch64InstrInfo::getOutliningTypeImpl(), llvm::ARMBaseInstrInfo::getOutliningTypeImpl(), llvm::ARMSubtarget::getPushPopSplitVariation(), llvm::ARMBaseRegisterInfo::getRegPressureLimit(), llvm::MipsRegisterInfo::getReservedRegs(), llvm::MachineInstr::getRestoreSize(), llvm::MSP430TargetLowering::getReturnAddressFrameIndex(), llvm::X86TargetLowering::getReturnAddressFrameIndex(), getRVVCalleeSavedInfo(), getScavSlotsNumForRVV(), llvm::AArch64FrameLowering::getSEHFrameIndexOffset(), llvm::MachineInstr::getSpillSize(), getStackAlignedMMO(), getStackOffset(), llvm::RISCVFrameLowering::getStackSizeWithRVVPadding(), GetTLSADDR(), getUnmanagedCSI(), getVGPRSpillLaneOrTempRegister(), llvm::X86FrameLowering::getWin64EHFrameIndexRef(), llvm::AArch64FrameLowering::getWinEHFuncletFrameSize(), llvm::CallLowering::handleAssignments(), handleMustTailForwardedRegisters(), llvm::AArch64RegisterInfo::hasBasePointer(), llvm::ARMBaseRegisterInfo::hasBasePointer(), llvm::LanaiRegisterInfo::hasBasePointer(), llvm::M68kRegisterInfo::hasBasePointer(), llvm::X86RegisterInfo::hasBasePointer(), llvm::CSKYFrameLowering::hasBP(), llvm::LoongArchFrameLowering::hasBP(), llvm::MipsFrameLowering::hasBP(), llvm::RISCVFrameLowering::hasBP(), llvm::VEFrameLowering::hasBP(), llvm::AArch64FrameLowering::hasFPImpl(), llvm::SIFrameLowering::hasFPImpl(), llvm::ARCFrameLowering::hasFPImpl(), llvm::ARMFrameLowering::hasFPImpl(), llvm::AVRFrameLowering::hasFPImpl(), llvm::CSKYFrameLowering::hasFPImpl(), llvm::HexagonFrameLowering::hasFPImpl(), llvm::LoongArchFrameLowering::hasFPImpl(), llvm::M68kFrameLowering::hasFPImpl(), llvm::MipsFrameLowering::hasFPImpl(), llvm::MSP430FrameLowering::hasFPImpl(), llvm::PPCFrameLowering::hasFPImpl(), llvm::RISCVFrameLowering::hasFPImpl(), llvm::SparcFrameLowering::hasFPImpl(), llvm::SystemZELFFrameLowering::hasFPImpl(), llvm::SystemZXPLINKFrameLowering::hasFPImpl(), llvm::VEFrameLowering::hasFPImpl(), llvm::WebAssemblyFrameLowering::hasFPImpl(), llvm::X86FrameLowering::hasFPImpl(), llvm::XCoreFrameLowering::hasFPImpl(), llvm::XtensaFrameLowering::hasFPImpl(), llvm::AArch64FrameLowering::hasReservedCallFrame(), llvm::ARMFrameLowering::hasReservedCallFrame(), llvm::Thumb1FrameLowering::hasReservedCallFrame(), llvm::AVRFrameLowering::hasReservedCallFrame(), llvm::CSKYFrameLowering::hasReservedCallFrame(), llvm::LoongArchFrameLowering::hasReservedCallFrame(), llvm::M68kFrameLowering::hasReservedCallFrame(), llvm::Mips16FrameLowering::hasReservedCallFrame(), llvm::MipsSEFrameLowering::hasReservedCallFrame(), llvm::MSP430FrameLowering::hasReservedCallFrame(), llvm::RISCVFrameLowering::hasReservedCallFrame(), llvm::SparcFrameLowering::hasReservedCallFrame(), llvm::WebAssemblyFrameLowering::hasReservedCallFrame(), llvm::X86FrameLowering::hasReservedCallFrame(), llvm::inferAlignFromPtrInfo(), llvm::SelectionDAG::InferPtrAlign(), llvm::ReachingDefAnalysis::init(), llvm::SIMachineFunctionInfo::initializeBaseYamlFields(), llvm::MIRParserImpl::initializeFrameInfo(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::CallLowering::insertSRetOutgoingArgument(), llvm::PPCRegisterInfo::isCallerPreservedPhysReg(), isConsecutiveLSLoc(), llvm::MachineInstr::isDereferenceableInvariantLoad(), llvm::XCoreFunctionInfo::isLargeFrame(), isLRSpilled(), llvm::SelectionDAGISel::isOrEquivalentToAdd(), llvm::TargetInstrInfo::isReallyTriviallyReMaterializable(), isXPLeafCandidate(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::Thumb1InstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::VEInstrInfo::loadRegFromStackSlot(), llvm::LoongArchInstrInfo::loadRegFromStackSlot(), llvm::RISCVInstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::ARCInstrInfo::loadRegFromStackSlot(), llvm::AVRInstrInfo::loadRegFromStackSlot(), llvm::CSKYInstrInfo::loadRegFromStackSlot(), llvm::M68kInstrInfo::loadRegFromStackSlot(), llvm::X86InstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::PPCInstrInfo::loadRegFromStackSlotNoUpd(), llvm::AMDGPUTargetLowering::loadStackInputValue(), LowerAsSplatVectorLoad(), llvm::SITargetLowering::LowerCall(), llvm::HexagonTargetLowering::LowerCall(), llvm::LoongArchTargetLowering::LowerCall(), llvm::RISCVTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::TargetLowering::LowerCallTo(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::PPCRegisterInfo::lowerDynamicAreaOffset(), llvm::SparcTargetLowering::LowerF128_LibCallArg(), llvm::SparcTargetLowering::LowerF128Op(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::VETargetLowering::LowerFormalArguments(), llvm::XtensaTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerFRAMEADDR(), llvm::LanaiTargetLowering::LowerFRAMEADDR(), llvm::MSP430TargetLowering::LowerFRAMEADDR(), lowerFRAMEADDR(), llvm::SparcTargetLowering::LowerGlobalTLSAddress(), LowerINTRINSIC_W_CHAIN(), llvm::HexagonTargetLowering::LowerRETURNADDR(), llvm::LanaiTargetLowering::LowerRETURNADDR(), llvm::MSP430TargetLowering::LowerRETURNADDR(), LowerRETURNADDR(), lowerRETURNADDR(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::TargetLowering::LowerToTLSEmulatedModel(), llvm::VETargetLowering::lowerToTLSGeneralDynamicModel(), llvm::VETargetLowering::lowerVASTART(), LowerVASTART(), llvm::SparcTargetLowering::makeAddress(), llvm::Mips16InstrInfo::makeFrame(), llvm::MachineInstr::mayAlias(), llvm::AArch64Subtarget::mirFileLoaded(), llvm::HexagonFrameLowering::needsAligna(), llvm::PPCFrameLowering::needsFP(), llvm::AArch64RegisterInfo::needsFrameBaseReg(), llvm::ARMBaseRegisterInfo::needsFrameBaseReg(), llvm::RISCVRegisterInfo::needsFrameBaseReg(), llvm::TargetFrameLowering::needsFrameIndexResolution(), llvm::M68kFrameLowering::needsFrameIndexResolution(), llvm::X86FrameLowering::needsFrameIndexResolution(), llvm::WebAssemblyFrameLowering::needsPrologForEH(), llvm::AArch64FrameLowering::orderFrameObjects(), llvm::HexagonFrameLowering::orderFrameObjects(), llvm::SystemZELFFrameLowering::orderFrameObjects(), llvm::X86FrameLowering::orderFrameObjects(), llvm::SGPRSpillBuilder::prepare(), llvm::PPCRegisterInfo::prepareDynamicAlloca(), llvm::MIRPrinter::print(), llvm::MIPrinter::print(), llvm::MachineInstr::print(), printMemOperand(), llvm::MipsAsmPrinter::printSavedRegsBitmask(), llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized(), llvm::ARCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::LoongArchFrameLowering::processFunctionBeforeFrameFinalized(), llvm::RISCVFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZXPLINKFrameLowering::processFunctionBeforeFrameFinalized(), llvm::X86FrameLowering::processFunctionBeforeFrameFinalized(), llvm::XtensaFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::HexagonFrameLowering::processFunctionBeforeFrameFinalized(), llvm::MSP430FrameLowering::processFunctionBeforeFrameFinalized(), llvm::PPCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::XCoreFrameLowering::processFunctionBeforeFrameFinalized(), llvm::recomputeLivenessFlags(), llvm::PPCFrameLowering::replaceFPWithRealFP(), llvm::SIRegisterInfo::requiresFrameIndexReplacementScavenging(), llvm::PPCRegisterInfo::requiresFrameIndexScavenging(), llvm::SIRegisterInfo::requiresRegisterScavenging(), llvm::SIFrameLowering::requiresStackPointerReference(), reservePrivateMemoryRegs(), llvm::AArch64FrameLowering::resetCFIToInitialState(), llvm::AArch64FrameLowering::resolveFrameIndexReference(), llvm::ARMFrameLowering::ResolveFrameIndexReference(), llvm::AArch64FrameLowering::resolveFrameOffsetReference(), llvm::Mips16InstrInfo::restoreFrame(), llvm::X86FrameLowering::restoreWin32EHStackPointers(), runImpl(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::AVRFrameAnalyzer::runOnMachineFunction(), ScopedScavengeOrSpill::ScopedScavengeOrSpill(), llvm::HexagonDAGToDAGISel::SelectAddrFI(), llvm::HexagonDAGToDAGISel::SelectFrameIndex(), llvm::InstructionSelect::selectMachineFunction(), llvm::FastISel::selectPatchpoint(), llvm::FastISel::selectStackmap(), llvm::FunctionLoweringInfo::set(), setAlignFlagsForFI(), llvm::AsmPrinter::SetupMachineFunction(), llvm::AArch64InstrInfo::shouldClusterMemOps(), llvm::TargetRegisterInfo::shouldRealignStack(), llvm::yaml::SIMachineFunctionInfo::SIMachineFunctionInfo(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::LoongArchFrameLowering::spillCalleeSavedRegisters(), llvm::Mips16FrameLowering::spillCalleeSavedRegisters(), llvm::MipsSEFrameLowering::spillCalleeSavedRegisters(), llvm::XtensaFrameLowering::spillCalleeSavedRegisters(), spillIncomingStatepointValue(), llvm::AggressiveAntiDepBreaker::StartBlock(), llvm::CriticalAntiDepBreaker::StartBlock(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), llvm::Thumb1InstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), llvm::LoongArchInstrInfo::storeRegToStackSlot(), llvm::RISCVInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::VEInstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::ARCInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::CSKYInstrInfo::storeRegToStackSlot(), llvm::M68kInstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::X86InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::PPCInstrInfo::storeRegToStackSlotNoUpd(), tryToElideArgumentCopy(), unpack64(), unpackF64OnRV32DSoftABI(), unpackFromMemLoc(), updateLiveness(), llvm::ARMFrameLowering::updateLRRestored(), llvm::HexagonPacketizerList::useCalleesSP(), llvm::HexagonPacketizerList::useCallersSP(), llvm::SIMachineFunctionInfo::usesAGPRs(), llvm::RISCVMachineFunctionInfo::useSaveRestoreLibCalls(), llvm::SelectionDAGBuilder::visitSPDescriptorParent(), and WindowsRequiresStackProbe().

◆ getFrameInfo() [2/2] ◆ getFrameInstructions() ◆ getFunction() [1/2] Function & llvm::MachineFunction::getFunction ( ) inline

Return the LLVM function that this machine code represents.

Definition at line 704 of file MachineFunction.h.

References F.

Referenced by llvm::X86FrameLowering::adjustForHiPEPrologue(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), AlignBlocks(), llvm::SITargetLowering::allocatePreloadKernArgSGPRs(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::MachineOptimizationRemarkEmitter::allowExtraAnalysis(), llvm::NVPTXTargetLowering::allowUnsafeFPMath(), llvm::LiveDebugVariables::analyze(), llvm::AMDGPUTargetLowering::analyzeFormalArgumentsCompute(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::SystemZELFFrameLowering::assignCalleeSavedSpillSlots(), llvm::AArch64FrameLowering::assignCalleeSavedSpillSlots(), llvm::DwarfCFIException::beginBasicBlockSection(), llvm::DwarfDebug::beginCodeAlignment(), llvm::WinException::beginFunclet(), llvm::DebugHandlerBase::beginFunction(), llvm::DwarfCFIException::beginFunction(), llvm::WinException::beginFunction(), llvm::CodeViewDebug::beginFunctionImpl(), llvm::DwarfDebug::beginFunctionImpl(), llvm::BTFDebug::beginFunctionImpl(), llvm::DwarfDebug::beginInstruction(), llvm::MachineIRBuilder::buildFConstant(), llvm::SPIRVGlobalRegistry::buildGlobalVariable(), llvm::buildNDRange(), llvm::TargetLowering::BuildSDIVPow2(), llvm::TargetLowering::BuildSREMPow2(), llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::AArch64CallLowering::canLowerReturn(), llvm::RISCVCallLowering::canLowerReturn(), llvm::X86CallLowering::canLowerReturn(), llvm::AArch64TargetLowering::canMergeStoresTo(), llvm::X86TargetLowering::canMergeStoresTo(), llvm::AArch64FrameLowering::canUseRedZone(), CC_X86_Intr(), checkNumAlignedDPRCS2Regs(), llvm::MipsCCState::CheckReturn(), llvm::CallLowering::checkReturnTypeForCallConv(), collectCallSiteParameters(), combineFMA(), combineFMADDSUB(), combineFMinNumFMaxNum(), combineFneg(), combineMul(), combineStore(), combineVectorSizedSetCCEquality(), computeCalleeSaveRegisterPairs(), llvm::SITargetLowering::computeKnownAlignForTargetInstr(), llvm::SelectionDAG::computeKnownBits(), llvm::AMDGPUTargetLowering::computeKnownBitsForTargetNode(), convertImplicitDefToConstZero(), llvm::MIRPrinter::convertMachineMetadataNodes(), createAtomicLibcall(), llvm::createLibcall(), llvm::XCoreFunctionInfo::createLRSpillSlot(), llvm::createMemLibcall(), llvm::MCResourceInfo::createTotalNumSGPRs(), llvm::MCResourceInfo::createTotalNumVGPRs(), llvm::TargetInstrInfo::describeLoadedValue(), llvm::CallLowering::determineAndHandleAssignments(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineFrameLayout(), llvm::TargetOptions::DisableFramePointerElim(), llvm::AMDGPUCallLowering::doCallerAndCalleePassArgsTheSameWay(), duplicateCPV(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::MachineOptimizationRemarkEmitter::emit(), llvm::AsmPrinter::emitBasicBlockStart(), llvm::AsmPrinter::emitBBAddrMapSection(), EmitCmp(), llvm::XtensaAsmPrinter::emitConstantPool(), emitConstantSizeRepmov(), emitConstantSizeRepstos(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::ARCFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::LoongArchFrameLowering::emitEpilogue(), llvm::MipsSEFrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::RISCVFrameLowering::emitEpilogue(), llvm::SystemZELFFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::XCoreFrameLowering::emitEpilogue(), emitErrorMsg(), llvm::EHStreamer::emitExceptionTable(), llvm::emitFrameOffset(), llvm::AsmPrinter::emitFunctionBody(), llvm::AMDGPUAsmPrinter::emitFunctionBodyEnd(), llvm::AMDGPUAsmPrinter::emitFunctionBodyStart(), llvm::MipsAsmPrinter::emitFunctionBodyStart(), llvm::WebAssemblyAsmPrinter::emitFunctionBodyStart(), llvm::AsmPrinter::emitFunctionEntryLabel(), llvm::AMDGPUAsmPrinter::emitFunctionEntryLabel(), llvm::ARMAsmPrinter::emitFunctionEntryLabel(), llvm::SystemZAsmPrinter::emitFunctionEntryLabel(), llvm::MachineInstr::emitGenericError(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::emitHiddenKernelArgs(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV5::emitHiddenKernelArgs(), llvm::DwarfDebug::emitInitialLocDirective(), llvm::AsmPrinter::emitInitialRawDwarfLocDirective(), llvm::MachineInstr::emitInlineAsmError(), llvm::AsmPrinter::emitJumpTableInfo(), llvm::AsmPrinter::emitKCFITypeId(), llvm::X86AsmPrinter::emitKCFITypeId(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::emitKernel(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::emitKernelArgs(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), llvm::AArch64TargetLowering::EmitLoweredCatchRet(), emitNonHSAIntrinsicError(), llvm::AsmPrinter::emitPatchableFunctionEntries(), llvm::AsmPrinter::emitPCSections(), llvm::AArch64FrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::SystemZXPLINKFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), emitRemovedIntrinsicError(), emitReservedArgRegCallError(), llvm::AArch64RegisterInfo::emitReservedArgRegCallError(), emitSCSEpilogue(), emitSCSPrologue(), llvm::AsmPrinter::emitStackUsage(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemmove(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemset(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), emitVGSaveRestore(), llvm::AsmPrinter::emitXRayTable(), enableAllocFrameElim(), llvm::TargetFrameLowering::enableCalleeSaveSkip(), llvm::ARMFrameLowering::enableCalleeSaveSkip(), llvm::HexagonFrameLowering::enableCalleeSaveSkip(), enableMultiVectorSpillFill(), llvm::LoongArchFrameLowering::enableShrinkWrapping(), llvm::RISCVFrameLowering::enableShrinkWrapping(), llvm::X86FrameLowering::enableShrinkWrapping(), llvm::ARMException::endFunction(), llvm::WinException::endFunction(), llvm::AIXException::endFunction(), llvm::CodeViewDebug::endFunctionImpl(), llvm::DwarfDebug::endFunctionImpl(), errorUnsupported(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::X86TargetLowering::expandIndirectJTBranch(), llvm::ARMBaseInstrInfo::expandLoadStackGuardBase(), expandMul(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::PPCInstrInfo::expandPostRAPseudo(), llvm::TargetLowering::expandVectorFindLastActive(), fail(), llvm::AArch64CallLowering::fallBackToDAGISel(), findPrologueEndLoc(), findScratchNonCalleeSaveRegister(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::TargetOptions::FramePointerIsReserved(), llvm::MCResourceInfo::gatherResourceInfo(), getArgBaseReg(), llvm::AArch64Subtarget::getAuthenticatedLRCheckMethod(), getBBAddrMapFeature(), llvm::SystemZELFRegisters::getCalleeSavedRegs(), llvm::AArch64RegisterInfo::getCalleeSavedRegs(), llvm::SIRegisterInfo::getCalleeSavedRegs(), llvm::ARMBaseRegisterInfo::getCalleeSavedRegs(), llvm::CSKYRegisterInfo::getCalleeSavedRegs(), llvm::LoongArchRegisterInfo::getCalleeSavedRegs(), llvm::MipsRegisterInfo::getCalleeSavedRegs(), llvm::MSP430RegisterInfo::getCalleeSavedRegs(), llvm::PPCRegisterInfo::getCalleeSavedRegs(), llvm::RISCVRegisterInfo::getCalleeSavedRegs(), llvm::VERegisterInfo::getCalleeSavedRegs(), llvm::X86RegisterInfo::getCalleeSavedRegs(), llvm::AArch64RegisterInfo::getCalleeSavedRegsViaCopy(), llvm::ARMBaseRegisterInfo::getCalleeSavedRegsViaCopy(), llvm::X86RegisterInfo::getCalleeSavedRegsViaCopy(), llvm::SystemZELFRegisters::getCallPreservedMask(), llvm::AArch64RegisterInfo::getCallPreservedMask(), llvm::ARMBaseRegisterInfo::getCallPreservedMask(), llvm::X86RegisterInfo::getCallPreservedMask(), llvm::MachineIRBuilder::getContext(), getCopyFromParts(), llvm::AArch64RegisterInfo::getDarwinCalleeSavedRegs(), llvm::AArch64RegisterInfo::getDarwinCallPreservedMask(), llvm::MachineIRBuilder::getDataLayout(), llvm::SIInstrInfo::getDSShaderTypeValue(), llvm::getEHScopeMembership(), llvm::RegAllocBase::getErrorAssignment(), getFixedObjectSize(), getFPOffset(), llvm::AArch64FrameLowering::getFrameIndexReference(), llvm::X86FrameLowering::getFrameIndexReference(), llvm::AsmPrinter::getFunctionCFISectionType(), llvm::SIMachineFunctionInfo::getGITPtrLoReg(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::ARMSubtarget::getGPRAllocationOrder(), llvm::X86RegisterInfo::getGPRsForTailCall(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::getHSAKernelProps(), llvm::AArch64InstrInfo::getInstSizeInBytes(), llvm::RISCVInstrInfo::getInstSizeInBytes(), llvm::PerFunctionMIParsingState::getIRValue(), getLayoutSuccessorProbThreshold(), getLoadStackGuard(), llvm::GCNSubtarget::getMaxNumSGPRs(), llvm::GCNSubtarget::getMaxNumVGPRs(), getMCSymbolForMBB(), getMemcpyLoadsAndStores(), getMemmoveLoadsAndStores(), getMemsetStores(), getName(), llvm::GCNSubtarget::getNSAThreshold(), llvm::AMDGPUSubtarget::getOccupancyWithWorkGroupSizes(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVBoolType(), llvm::getOrCreateSPIRVDeviceEventPointer(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVFloatType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVIntegerType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVTypeByName(), llvm::VETargetLowering::getPICJumpTableRelocBase(), llvm::ARMSubtarget::getPushPopSplitVariation(), getRecipEstimateForFunc(), getRegistersForValue(), llvm::SystemZELFFrameLowering::getRegSpillOffset(), llvm::M68kRegisterInfo::getReservedRegs(), llvm::MipsRegisterInfo::getReservedRegs(), llvm::RISCVRegisterInfo::getReservedRegs(), llvm::X86RegisterInfo::getReservedRegs(), GetScratchRegister(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::PPCTargetLowering::getStackProbeSize(), llvm::SystemZTargetLowering::getStackProbeSize(), llvm::X86TargetLowering::getStackProbeSize(), llvm::RISCVTargetLowering::getStackProbeSize(), llvm::X86TargetLowering::getStackProbeSymbolName(), llvm::AArch64RegisterInfo::getStrictlyReservedRegs(), llvm::SelectionDAG::getSymbolFunctionGlobalAddress(), GetSymbolRef(), llvm::SelectionDAG::getVScale(), llvm::CallLowering::handleAssignments(), handleMustTailForwardedRegisters(), llvm::X86FrameLowering::has128ByteRedZone(), hasDebugInfo(), llvm::TargetFrameLowering::hasFP(), llvm::PPCTargetLowering::hasInlineStackProbe(), llvm::RISCVTargetLowering::hasInlineStackProbe(), llvm::SystemZTargetLowering::hasInlineStackProbe(), llvm::X86TargetLowering::hasInlineStackProbe(), llvm::hasInstrProfHashMismatch(), HasNestArgument(), hasReturnsTwiceAttr(), llvm::HexagonEvaluator::HexagonEvaluator(), llvm::ARMSubtarget::ignoreCSRForAllocationOrder(), llvm::inferAlignFromPtrInfo(), llvm::SelectionDAGBuilder::init(), llvm::SelectionDAG::init(), llvm::MipsFunctionInfo::initGlobalBaseReg(), llvm::LexicalScopes::initialize(), INITIALIZE_PASS(), llvm::SelectionDAGISel::initializeAnalysisResults(), llvm::MIRParserImpl::initializeConstantPool(), llvm::MIRParserImpl::initializeFrameInfo(), llvm::XtensaInstrInfo::insertIndirectBranch(), insertInlineAsmProcess(), interpretValues(), llvm::AArch64RegisterInfo::isArgumentRegister(), llvm::X86RegisterInfo::isArgumentRegister(), llvm::AArch64RegisterInfo::isAsmClobberable(), isCallableFunction(), llvm::TargetRegisterInfo::isCalleeSavedPhysReg(), isCandidatePatchable(), llvm::SparcTargetLowering::IsEligibleForTailCallOptimization(), llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), llvm::AMDGPUCallLowering::isEligibleForTailCallOptimization(), llvm::HexagonTargetLowering::IsEligibleForTailCallOptimization(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), llvm::PPCTargetLowering::isFMAFasterThanFMulAndFAdd(), llvm::AArch64InstrInfo::isFunctionSafeToOutlineFrom(), llvm::ARMBaseInstrInfo::isFunctionSafeToOutlineFrom(), llvm::RISCVInstrInfo::isFunctionSafeToOutlineFrom(), llvm::X86InstrInfo::isFunctionSafeToOutlineFrom(), llvm::TargetInstrInfo::isFunctionSafeToSplit(), llvm::TargetLowering::isInTailCallPosition(), llvm::SelectionDAG::isKnownNeverZero(), isLibCallInTailPosition(), isMinSize(), isNoReturnDef(), isOptNone(), isOptSize(), llvm::ARMBaseInstrInfo::isProfitableToIfCvt(), llvm::PPCInstrInfo::isSignOrZeroExtended(), knownBitsForWorkitemID(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::ARMLegalizerInfo::legalizeCustom(), llvm::RISCVLegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::RISCVLegalizerInfo::legalizeIntrinsic(), llvm::SIInstrInfo::legalizeOperands(), llvm::AMDGPULegalizerInfo::legalizeSBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::LegalizerHelper::libcall(), llvm::MachineBasicBlock::liveout_begin(), llvm::XtensaInstrInfo::loadImmediate(), llvm::XCoreInstrInfo::loadImmediate(), llvm::MipsSEInstrInfo::loadRegFromStack(), LowerATOMIC_STORE(), llvm::SystemZTargetLowering::LowerCall(), llvm::FastISel::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::M68kCallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::RISCVCallLowering::lowerCall(), llvm::SPIRVCallLowering::lowerCall(), llvm::X86CallLowering::lowerCall(), llvm::CallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCall(), llvm::RISCVTargetLowering::LowerCall(), llvm::AMDGPUCallLowering::lowerChainCall(), llvm::AsmPrinter::lowerConstant(), llvm::AMDGPUTargetLowering::LowerDYNAMIC_STACKALLOC(), llvm::NVPTXTargetLowering::LowerDYNAMIC_STACKALLOC(), llvm::HexagonTargetLowering::LowerFDIV(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::NVPTXTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), LowerFPToInt(), llvm::AMDGPUTargetLowering::LowerGlobalAddress(), llvm::InlineAsmLowering::lowerInlineAsm(), LowerInterruptReturn(), llvm::LegalizerHelper::lowerLoad(), llvm::LoongArchAsmPrinter::LowerPATCHABLE_FUNCTION_ENTER(), llvm::MipsCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::M68kCallLowering::lowerReturn(), llvm::PPCCallLowering::lowerReturn(), llvm::RISCVCallLowering::lowerReturn(), llvm::SPIRVCallLowering::lowerReturn(), llvm::NVPTXTargetLowering::LowerReturn(), llvm::RISCVTargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), llvm::NVPTXTargetLowering::LowerSTACKRESTORE(), llvm::NVPTXTargetLowering::LowerSTACKSAVE(), llvm::LegalizerHelper::lowerStore(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::LegalizerHelper::lowerThreewayCompare(), llvm::AMDGPUTargetLowering::lowerUnhandledCall(), llvm::LegalizerHelper::lowerVAArg(), LowerVACOPY(), llvm::SparcTargetLowering::makeAddress(), llvm::X86TargetLowering::markLibCallAttributes(), llvm::CombinerHelper::matchCombineExtractedVectorLoad(), llvm::CombinerHelper::matchHoistLogicOpWithSameOpcodeHands(), llvm::CombinerHelper::matchLoadOrCombine(), llvm::TargetInstrInfo::mergeOutliningCandidateAttributes(), needFuncLabels(), llvm::AArch64FunctionInfo::needsAsyncDwarfUnwindInfo(), llvm::PPCFrameLowering::needsFP(), llvm::WebAssemblyFrameLowering::needsPrologForEH(), needsPrologueENDBR(), llvm::AsmPrinter::needsSEHMoves(), llvm::AArch64FunctionInfo::needsShadowCallStackPrologueEpilogue(), needsWinCFI(), llvm::OptLevelChanger::OptLevelChanger(), llvm::MIRParserImpl::parseCalledGlobals(), parseGlobalValue(), parseIRConstant(), parseIRValue(), llvm::SITargetLowering::passSpecialInputs(), llvm::AMDGPUCallLowering::passSpecialInputs(), performBRCONDCombine(), llvm::MipsCCState::PreAnalyzeReturn(), llvm::AArch64TargetLowering::preferredShiftLegalizationStrategy(), llvm::RISCVTargetLowering::preferredShiftLegalizationStrategy(), llvm::X86TargetLowering::preferredShiftLegalizationStrategy(), llvm::SGPRSpillBuilder::prepare(), llvm::MIRPrinter::print(), llvm::MIPrinter::print(), llvm::MachineInstr::print(), print(), llvm::MachineBasicBlock::print(), printMemOperand(), llvm::printMIR(), processBlockAddr(), llvm::X86FrameLowering::processFunctionBeforeFrameFinalized(), produceCompactUnwindFrame(), promoteToConstantPool(), llvm::SGPRSpillBuilder::readWriteTmpVGPR(), reduceVMULWidth(), llvm::VerifyInstrumentation::registerCallbacks(), llvm::RISCVTargetLowering::ReplaceNodeResults(), llvm::X86TargetLowering::ReplaceNodeResults(), reportIllegalCopy(), reservePrivateMemoryRegs(), llvm::AArch64FrameLowering::resolveFrameOffsetReference(), llvm::PPCFrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreWinEHStackPointersInParent(), llvm::CallLowering::resultsCompatible(), llvm::SIShrinkInstructionsPass::run(), llvm::LiveStacksPrinterPass::run(), llvm::GCNDPPCombinePass::run(), llvm::MachineOptimizationRemarkEmitterAnalysis::run(), llvm::PrintMIRPass::run(), llvm::RegUsageInfoCollectorPass::run(), llvm::RegUsageInfoPropagationPass::run(), llvm::SelectionDAGISelPass::run(), llvm::TailDuplicatePassBase< DerivedT, PreRegAlloc >::run(), llvm::TwoAddressInstructionPass::run(), llvm::AMDGPUISelDAGToDAGPass::run(), llvm::SILoadStoreOptimizerPass::run(), llvm::SIPeepholeSDWAPass::run(), llvm::MIRProfileLoader::runOnFunction(), llvm::ARMAsmPrinter::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::InstructionSelect::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::Legalizer::runOnMachineFunction(), llvm::RegBankSelect::runOnMachineFunction(), llvm::MachineOptimizationRemarkEmitterPass::runOnMachineFunction(), llvm::SelectionDAGISelLegacy::runOnMachineFunction(), llvm::BreakFalseDeps::runOnMachineFunction(), llvm::AMDGPUAsmPrinter::runOnMachineFunction(), llvm::AMDGPUDAGToDAGISel::runOnMachineFunction(), llvm::AMDGPUResourceUsageAnalysis::runOnMachineFunction(), llvm::ARMBlockPlacement::runOnMachineFunction(), llvm::HexagonMask::runOnMachineFunction(), llvm::NVPTXDAGToDAGISel::runOnMachineFunction(), llvm::X86AsmPrinter::runOnMachineFunction(), llvm::InstructionSelect::selectMachineFunction(), llvm::RAGreedy::selectOrSplit(), llvm::SwiftErrorValueTracking::setFunction(), llvm::AsmPrinter::SetupMachineFunction(), llvm::AMDGPUInstructionSelector::setupMF(), llvm::TargetLoweringObjectFileXCOFF::ShouldEmitEHBlock(), shouldGenerateInlineTPLoop(), shouldLowerMemFuncForSize(), llvm::FastISel::shouldOptForSize(), llvm::GIMatchTableExecutor::shouldOptForSize(), llvm::shouldOptimizeForSize(), llvm::AArch64InstrInfo::shouldOutlineFromFunctionByDefault(), llvm::ARMBaseInstrInfo::shouldOutlineFromFunctionByDefault(), llvm::RISCVInstrInfo::shouldOutlineFromFunctionByDefault(), llvm::X86RegisterInfo::shouldRealignStack(), llvm::TargetLoweringObjectFileXCOFF::ShouldSetSSPCanaryBitInTB(), shouldSplitStack(), llvm::TargetLowering::SimplifySetCC(), llvm::SystemZELFFrameLowering::spillCalleeSavedRegisters(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::MipsSEFrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), splitStores(), llvm::MipsSEInstrInfo::storeRegToStack(), llvm::AArch64TargetLowering::supportSplitCSR(), transformCallee(), unpackFromRegLoc(), updateForAIXShLibTLSModelOpt(), llvm::SystemZELFFrameLowering::usePackedStack(), llvm::SIMachineFunctionInfo::usesAGPRs(), llvm::RISCVMachineFunctionInfo::useSaveRestoreLibCalls(), llvm::R600InstrInfo::usesTextureCache(), llvm::R600InstrInfo::usesVertexCache(), validateGroupWaitEventsPtr(), validateLifetimeStart(), llvm::SelectionDAGBuilder::visitSPDescriptorParent(), WarnSize(), llvm::LegalizerHelper::widenScalar(), WindowsRequiresStackProbe(), and llvm::OptLevelChanger::~OptLevelChanger().

◆ getFunction() [2/2]

Return the LLVM function that this machine code represents.

Definition at line 707 of file MachineFunction.h.

References F.

◆ getFunctionNumber() unsigned llvm::MachineFunction::getFunctionNumber ( ) const inline

getFunctionNumber - Return a unique ID for the current function.

Definition at line 713 of file MachineFunction.h.

Referenced by llvm::NVPTXFrameLowering::emitPrologue(), llvm::MachineBasicBlock::getEHCatchretSymbol(), llvm::TargetLoweringObjectFileXCOFF::getEHInfoTableSymbol(), llvm::MachineBasicBlock::getEndSymbol(), llvm::AsmPrinter::getFunctionNumber(), llvm::PPCFunctionInfo::getGlobalEPSymbol(), getJTISymbol(), llvm::PPCFunctionInfo::getLocalEPSymbol(), getPICBaseSymbol(), llvm::PPCFunctionInfo::getPICOffsetSymbol(), llvm::MachineBasicBlock::getSymbol(), llvm::PPCFunctionInfo::getTOCOffsetSymbol(), and llvm::VETargetLowering::lowerINTRINSIC_WO_CHAIN().

◆ getInfo() [1/2]

template<typename Ty >

Ty * llvm::MachineFunction::getInfo ( ) inline

getInfo - Keep track of various per-function pieces of information for backends that would like to do so.

Definition at line 831 of file MachineFunction.h.

Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::SITargetLowering::AdjustInstrPostInstrSelection(), allSGPRSpillsAreDead(), llvm::WebAssemblyInstrInfo::analyzeBranch(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::AMDGPURegisterBankInfo::applyMappingImpl(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::ARMBasicBlockUtils::ARMBasicBlockUtils(), llvm::SIFrameLowering::assignCalleeSavedSpillSlots(), llvm::ARMFrameLowering::assignCalleeSavedSpillSlots(), llvm::HexagonFrameLowering::assignCalleeSavedSpillSlots(), llvm::M68kFrameLowering::assignCalleeSavedSpillSlots(), llvm::SystemZELFFrameLowering::assignCalleeSavedSpillSlots(), llvm::SystemZXPLINKFrameLowering::assignCalleeSavedSpillSlots(), llvm::X86FrameLowering::assignCalleeSavedSpillSlots(), llvm::AArch64FrameLowering::assignCalleeSavedSpillSlots(), llvm::RISCVFrameLowering::assignCalleeSavedSpillSlots(), llvm::X86FrameLowering::BuildCFI(), buildGitPtr(), llvm::AArch64InstrInfo::buildOutlinedFrame(), llvm::ARMBaseInstrInfo::buildOutlinedFrame(), BuildPACM(), buildScratchExecCopy(), llvm::SIRegisterInfo::buildSpillLoadStore(), CalculateTailCallSPDiff(), llvm::X86InstrInfo::canMakeTailCallConditional(), llvm::X86FrameLowering::canSimplifyCallFramePseudos(), canSpillOnFrameIndexAccess(), llvm::RISCVFrameLowering::canUseAsEpilogue(), llvm::X86FrameLowering::canUseAsEpilogue(), llvm::AArch64FrameLowering::canUseAsPrologue(), llvm::RISCVFrameLowering::canUseAsPrologue(), llvm::X86FrameLowering::canUseAsPrologue(), llvm::AArch64FrameLowering::canUseRedZone(), llvm::AArch64TargetLowering::changeStreamingMode(), checkNumAlignedDPRCS2Regs(), computeCalleeSaveRegisterPairs(), llvm::AArch64TargetMachine::convertFuncInfoToYAML(), llvm::GCNTargetMachine::convertFuncInfoToYAML(), llvm::ARMBaseTargetMachine::convertFuncInfoToYAML(), llvm::RISCVTargetMachine::convertFuncInfoToYAML(), llvm::WebAssemblyTargetMachine::convertFuncInfoToYAML(), llvm::X86TargetMachine::convertFuncInfoToYAML(), denormalModeIsFlushAllF32(), denormalModeIsFlushAllF64F16(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::MipsSEFrameLowering::determineCalleeSaves(), llvm::RISCVFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSaves(), llvm::M68kFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::SparcFrameLowering::determineCalleeSaves(), llvm::VEFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::PPCFrameLowering::determineFrameLayout(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), duplicateCPV(), llvm::ARCFrameLowering::eliminateCallFramePseudoInstr(), llvm::SIFrameLowering::eliminateCallFramePseudoInstr(), llvm::M68kFrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::AArch64RegisterInfo::eliminateFrameIndex(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), llvm::ThumbRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::SIRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), llvm::AArch64TargetLowering::EmitAllocateSMESaveBuffer(), llvm::AArch64TargetLowering::EmitAllocateZABuffer(), emitBuildPairF64Pseudo(), llvm::X86FrameLowering::emitCalleeSavedFrameMoves(), llvm::SIFrameLowering::emitCSRSpillRestores(), llvm::SIFrameLowering::emitCSRSpillStores(), emitDefineCFAWithFP(), llvm::RISCVTargetLowering::emitDynamicProbedAlloc(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::SIFrameLowering::emitEpilogue(), llvm::ARCFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::Thumb1FrameLowering::emitEpilogue(), llvm::AVRFrameLowering::emitEpilogue(), llvm::CSKYFrameLowering::emitEpilogue(), llvm::LoongArchFrameLowering::emitEpilogue(), llvm::M68kFrameLowering::emitEpilogue(), llvm::MipsSEFrameLowering::emitEpilogue(), llvm::MSP430FrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::RISCVFrameLowering::emitEpilogue(), llvm::SparcFrameLowering::emitEpilogue(), llvm::SystemZELFFrameLowering::emitEpilogue(), llvm::SystemZXPLINKFrameLowering::emitEpilogue(), llvm::VEFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::XCoreFrameLowering::emitEpilogue(), llvm::VEFrameLowering::emitEpilogueInsns(), llvm::AMDGPUAsmPrinter::emitFunctionBodyEnd(), llvm::AMDGPUAsmPrinter::emitFunctionBodyStart(), llvm::X86AsmPrinter::emitFunctionBodyStart(), llvm::HexagonDAGToDAGISel::emitFunctionEntryCode(), llvm::AMDGPUAsmPrinter::emitFunctionEntryLabel(), llvm::AArch64TargetLowering::EmitGetSMESaveSize(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV5::emitHiddenKernelArgs(), llvm::AArch64TargetLowering::EmitInitTPIDR2Object(), llvm::X86AsmPrinter::emitInstruction(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::LoongArchAsmPrinter::emitJumpTableInfo(), emitPACCFI(), llvm::AArch64FrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::AVRFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::M68kFrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::MSP430FrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::SystemZXPLINKFrameLowering::emitPrologue(), llvm::VEFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), llvm::VEFrameLowering::emitPrologueInsns(), emitShadowCallStackEpilogue(), emitSMEStateSaveRestore(), emitSplitF64Pseudo(), emitVGSaveRestore(), llvm::AArch64FrameLowering::enableCFIFixup(), llvm::ARMFrameLowering::enableShrinkWrapping(), llvm::PPCFrameLowering::enableShrinkWrapping(), llvm::AArch64FrameLowering::enableStackSlotScavenging(), estimateRSStackSizeLimit(), ExpandMOVImmSExti8(), llvm::SITargetLowering::finalizeLowering(), fixupFuncForFI(), getADAEntry(), getArgumentStackToRestore(), llvm::AArch64RegisterInfo::getCalleeSavedRegs(), llvm::ARMBaseRegisterInfo::getCalleeSavedRegs(), llvm::HexagonRegisterInfo::getCalleeSavedRegs(), llvm::X86RegisterInfo::getCalleeSavedRegs(), llvm::AVRRegisterInfo::getCalleeSavedRegs(), llvm::AArch64RegisterInfo::getCalleeSavedRegsViaCopy(), llvm::ARMBaseRegisterInfo::getCalleeSavedRegsViaCopy(), llvm::X86RegisterInfo::getCalleeSavedRegsViaCopy(), llvm::ARMFrameLowering::getCalleeSaves(), getCallOpcode(), llvm::AArch64RegisterInfo::getDarwinCalleeSavedRegs(), llvm::WebAssemblyFrameLowering::getDwarfFrameBase(), llvm::X86FrameLowering::getDwarfFrameBase(), llvm::RISCVFrameLowering::getFirstSPAdjustAmount(), getFPOffset(), llvm::CSKYFrameLowering::getFrameIndexReference(), llvm::HexagonFrameLowering::getFrameIndexReference(), llvm::LoongArchFrameLowering::getFrameIndexReference(), llvm::M68kFrameLowering::getFrameIndexReference(), llvm::RISCVFrameLowering::getFrameIndexReference(), llvm::SparcFrameLowering::getFrameIndexReference(), llvm::X86FrameLowering::getFrameIndexReference(), llvm::AArch64FrameLowering::getFrameIndexReferenceFromSP(), llvm::AArch64FrameLowering::getFrameIndexReferencePreferSP(), llvm::X86FrameLowering::getFrameIndexReferencePreferSP(), llvm::SIRegisterInfo::getFrameRegister(), llvm::WebAssemblyRegisterInfo::getFrameRegister(), llvm::MipsDAGToDAGISel::getGlobalBaseReg(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::M68kInstrInfo::getGlobalBaseReg(), llvm::SparcInstrInfo::getGlobalBaseReg(), llvm::VEInstrInfo::getGlobalBaseReg(), llvm::X86InstrInfo::getGlobalBaseReg(), llvm::MipsTargetLowering::getGlobalReg(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::getHSAKernelProps(), llvm::AMDGPUTargetLowering::getImplicitParameterOffset(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::AArch64InstrInfo::getInstSizeInBytes(), llvm::ARMBaseInstrInfo::getInstSizeInBytes(), getLibCallID(), llvm::SIInstrInfo::getLiveRangeSplitOpcode(), llvm::WebAssemblyFrameLowering::getLocalForStackObject(), llvm::GCNSubtarget::getMaxNumSGPRs(), llvm::SIRegisterInfo::getMaxNumVectorRegs(), llvm::GCNSubtarget::getMaxNumVGPRs(), llvm::AMDGPUSubtarget::getOccupancyWithWorkGroupSizes(), llvm::SystemZELFFrameLowering::getOrCreateFramePointerSaveIndex(), llvm::SystemZXPLINKFrameLowering::getOrCreateFramePointerSaveIndex(), llvm::AArch64InstrInfo::getOutliningTypeImpl(), getPushOrLibCallsSavedInfo(), llvm::ARMSubtarget::getPushPopSplitVariation(), llvm::GCNSubtarget::getReservedNumSGPRs(), llvm::SIRegisterInfo::getReservedRegs(), llvm::HexagonRegisterInfo::getReservedRegs(), llvm::MipsRegisterInfo::getReservedRegs(), llvm::PPCRegisterInfo::getReservedRegs(), llvm::X86RegisterInfo::getReservedRegs(), llvm::MSP430TargetLowering::getReturnAddressFrameIndex(), llvm::X86TargetLowering::getReturnAddressFrameIndex(), llvm::RISCVFrameLowering::getStackSizeWithRVVPadding(), getSVEStackSize(), GetSymbolRef(), llvm::SITargetLowering::getTgtMemIntrinsic(), getVGPRSpillLaneOrTempRegister(), llvm::SIRegisterInfo::getVRegFlagsOfReg(), llvm::X86FrameLowering::getWin64EHFrameIndexRef(), llvm::AArch64FrameLowering::getWinEHFuncletFrameSize(), llvm::X86FrameLowering::getWinEHParentFrameOffset(), getzOSCalleeAndADA(), handleMustTailForwardedRegisters(), llvm::AArch64RegisterInfo::hasBasePointer(), llvm::ARMBaseRegisterInfo::hasBasePointer(), llvm::X86RegisterInfo::hasBasePointer(), llvm::SIFrameLowering::hasFPImpl(), llvm::AVRFrameLowering::hasFPImpl(), llvm::HexagonFrameLowering::hasFPImpl(), llvm::X86FrameLowering::hasFPImpl(), llvm::VEFrameLowering::hasGOT(), llvm::AArch64TargetLowering::hasInlineStackProbe(), hasNonRISpills(), llvm::M68kFrameLowering::hasReservedCallFrame(), llvm::X86FrameLowering::hasReservedCallFrame(), llvm::PPCRegisterInfo::hasReservedSpillSlot(), hasSpills(), indirectCopyToAGPR(), llvm::GCNSchedStrategy::initialize(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::XtensaInstrInfo::insertIndirectBranch(), llvm::AArch64InstrInfo::insertIndirectBranch(), llvm::SIInstrInfo::insertIndirectBranch(), llvm::LoongArchInstrInfo::insertIndirectBranch(), llvm::RISCVInstrInfo::insertIndirectBranch(), llvm::SIInstrInfo::isBasicBlockPrologue(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), llvm::AArch64InstrInfo::isFunctionSafeToOutlineFrom(), llvm::ARMBaseInstrInfo::isFunctionSafeToOutlineFrom(), llvm::X86InstrInfo::isFunctionSafeToOutlineFrom(), llvm::AArch64InstrInfo::isFunctionSafeToSplit(), llvm::SITargetLowering::isKnownNeverNaNForTargetNode(), llvm::ARMBaseInstrInfo::isPredicable(), isSignExtendedW(), llvm::PPCInstrInfo::isSignOrZeroExtended(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeFMad(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AMDGPULegalizerInfo::legalizeMinNumMaxNum(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::CSKYInstrInfo::loadRegFromStackSlot(), llvm::SITargetLowering::LowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::AMDGPUTargetLowering::LowerDIVREM24(), llvm::SITargetLowering::LowerDYNAMIC_STACKALLOC(), llvm::HexagonTargetLowering::LowerEH_RETURN(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::VETargetLowering::LowerFormalArguments(), llvm::XtensaTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), llvm::HexagonTargetLowering::LowerINLINEASM(), LowerINTRINSIC_W_CHAIN(), llvm::R600TargetLowering::LowerOperation(), llvm::SITargetLowering::LowerOperation(), llvm::AMDGPUCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::SITargetLowering::LowerReturn(), llvm::RISCVTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), llvm::AArch64MCInstLower::lowerSymbolOperandELF(), llvm::AMDGPUCallLowering::lowerTailCall(), LowerToTLSLocalDynamicModel(), llvm::AMDGPUTargetLowering::LowerUDIVREM64(), LowerVASTART(), llvm::HexagonTargetLowering::LowerVASTART(), llvm::LanaiTargetLowering::LowerVASTART(), llvm::MSP430TargetLowering::LowerVASTART(), llvm::VETargetLowering::lowerVASTART(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), MustSaveLR(), llvm::AArch64FunctionInfo::needsAsyncDwarfUnwindInfo(), llvm::PPCFrameLowering::needsFP(), llvm::ARMBaseRegisterInfo::needsFrameBaseReg(), llvm::M68kFrameLowering::needsFrameIndexResolution(), llvm::X86FrameLowering::needsFrameIndexResolution(), llvm::AArch64FrameLowering::orderFrameObjects(), outliningCandidatesSigningKeyConsensus(), outliningCandidatesSigningScopeConsensus(), llvm::AMDGPUMIRFormatter::parseCustomPseudoSourceValue(), llvm::AArch64TargetMachine::parseMachineFunctionInfo(), llvm::GCNTargetMachine::parseMachineFunctionInfo(), llvm::ARMBaseTargetMachine::parseMachineFunctionInfo(), llvm::RISCVTargetMachine::parseMachineFunctionInfo(), llvm::WebAssemblyTargetMachine::parseMachineFunctionInfo(), llvm::X86TargetMachine::parseMachineFunctionInfo(), llvm::AMDGPUCallLowering::passSpecialInputs(), popRegsFromStack(), llvm::AArch64InstrInfo::probedStackAlloc(), llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized(), llvm::LoongArchFrameLowering::processFunctionBeforeFrameFinalized(), llvm::RISCVFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::XtensaFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::HexagonFrameLowering::processFunctionBeforeFrameFinalized(), llvm::PPCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::XCoreFrameLowering::processFunctionBeforeFrameFinalized(), llvm::X86FrameLowering::processFunctionBeforeFrameIndicesReplaced(), llvm::SIFrameLowering::processFunctionBeforeFrameIndicesReplaced(), produceCompactUnwindFrame(), promoteToConstantPool(), llvm::GCNTargetMachine::registerMachineRegisterInfoCallback(), llvm::Thumb2InstrInfo::ReplaceTailWithBranchTo(), requiresGetVGCall(), llvm::SIRegisterInfo::requiresRegisterScavenging(), requiresSaveVG(), llvm::SIFrameLowering::requiresStackPointerReference(), llvm::AArch64FrameLowering::resetCFIToInitialState(), llvm::ARMBaseRegisterInfo::resolveFrameIndex(), llvm::ARMFrameLowering::ResolveFrameIndexReference(), llvm::AArch64FrameLowering::resolveFrameOffsetReference(), llvm::SystemZELFFrameLowering::restoreCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::restoreCalleeSavedRegisters(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::ARMFrameLowering::restoreCalleeSavedRegisters(), llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters(), llvm::PPCFrameLowering::restoreCalleeSavedRegisters(), llvm::RISCVFrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreCalleeSavedRegisters(), llvm::restoreStatusRegister(), llvm::X86FrameLowering::restoreWin32EHStackPointers(), llvm::ARMAsmPrinter::runOnMachineFunction(), llvm::AMDGPUAsmPrinter::runOnMachineFunction(), llvm::R600AsmPrinter::runOnMachineFunction(), llvm::AVRFrameAnalyzer::runOnMachineFunction(), llvm::M68kAsmPrinter::runOnMachineFunction(), llvm::MipsAsmPrinter::runOnMachineFunction(), llvm::WebAssemblyAsmPrinter::runOnMachineFunction(), llvm::GCNIterativeScheduler::scheduleILP(), llvm::GCNIterativeScheduler::scheduleLegacyMaxOccupancy(), llvm::GCNIterativeScheduler::scheduleMinReg(), llvm::HexagonDAGToDAGISel::SelectFrameIndex(), setUsesTOCBasePtr(), llvm::SIInstrInfo::shouldClusterMemOps(), llvm::SIRegisterInfo::shouldRealignStack(), llvm::SystemZELFFrameLowering::spillCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::spillCalleeSavedRegisters(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::ARMFrameLowering::spillCalleeSavedRegisters(), llvm::AVRFrameLowering::spillCalleeSavedRegisters(), llvm::MSP430FrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), llvm::RISCVFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), llvm::XCoreFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillFPBP(), spillsCR(), spillVGPRtoAGPR(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::CSKYInstrInfo::storeRegToStackSlot(), llvm::AMDGPUTargetLowering::storeStackInputValue(), llvm::SITargetLowering::supportSplitCSR(), llvm::GCNIterativeScheduler::tryMaximizeOccupancy(), unpackFromRegLoc(), unstackifyVRegsUsedInSplitBB(), updateForAIXShLibTLSModelOpt(), llvm::AArch64RegisterInfo::useFPForScavengingIndex(), and windowsRequiresStackProbe().

◆ getInfo() [2/2]

template<typename Ty >

const Ty * llvm::MachineFunction::getInfo ( ) const inline

Definition at line 836 of file MachineFunction.h.

◆ getInStackSlotVariableDbgInfo() [1/2] auto llvm::MachineFunction::getInStackSlotVariableDbgInfo ( ) inline ◆ getInStackSlotVariableDbgInfo() [2/2] auto llvm::MachineFunction::getInStackSlotVariableDbgInfo ( ) const inline ◆ getInstructionCount() unsigned llvm::MachineFunction::getInstructionCount ( ) const inline ◆ getJTISymbol()

getJTISymbol - Return the MCSymbol for the specified non-empty jump table.

Return the MCSymbol for the specified non-empty jump table.

If isLinkerPrivate is specified, an 'l' label is returned, otherwise a normal 'L' label is returned.

Definition at line 787 of file MachineFunction.cpp.

References assert(), DL, getDataLayout(), getFunctionNumber(), llvm::MCContext::getOrCreateSymbol(), Name, and size().

Referenced by llvm::AsmPrinter::GetJTISymbol(), llvm::TargetLowering::getPICJumpTableRelocBaseExpr(), and llvm::M68kTargetLowering::getPICJumpTableRelocBaseExpr().

◆ getJumpTableInfo() [1/2] ◆ getJumpTableInfo() [2/2]

getJumpTableInfo - Return the jump table info object for the current function.

This object contains information about jump tables in the current function. If the current function has no jump tables, this will return null.

Definition at line 756 of file MachineFunction.h.

Referenced by llvm::ARMAsmPrinter::emitJumpTableAddrs(), llvm::AsmPrinter::emitJumpTableInfo(), llvm::ARMAsmPrinter::emitJumpTableInsts(), llvm::ARMAsmPrinter::emitJumpTableTBInst(), EstimateFunctionSizeInBytes(), forEachJumpTableBranch(), llvm::AArch64InstrInfo::isMBBSafeToSplitToCold(), jumpTableHasOtherUses(), llvm::BranchFolder::OptimizeFunction(), llvm::MIRPrinter::print(), GCEmptyBasicBlocks::runOnMachineFunction(), and llvm::MachineBasicBlock::SplitCriticalEdge().

◆ getLandingPads()

Return a reference to the landing pad info for the current function.

Definition at line 1250 of file MachineFunction.h.

Referenced by llvm::SystemZXPLINKFrameLowering::assignCalleeSavedSpillSlots(), llvm::DwarfCFIException::beginFunction(), llvm::WinException::beginFunction(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::M68kFrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::EHStreamer::emitExceptionTable(), llvm::ARMException::endFunction(), llvm::WasmException::endFunction(), needFuncLabels(), and llvm::TargetLoweringObjectFileXCOFF::ShouldEmitEHBlock().

◆ getLongjmpTargets() const std::vector< MCSymbol * > & llvm::MachineFunction::getLongjmpTargets ( ) const inline

Returns a reference to a list of symbols immediately following calls to _setjmp in the function.

Used to construct the longjmp target table used by Windows Control Flow Guard.

Definition at line 1184 of file MachineFunction.h.

Referenced by llvm::WinCFGuard::endFunction().

◆ getMachineMemOperand() [1/11]

Allocate a new MachineMemOperand by copying an existing one, replacing only AliasAnalysis information.

MachineMemOperands are owned by the MachineFunction and need not be explicitly deallocated.

Definition at line 588 of file MachineFunction.cpp.

References llvm::MachineMemOperand::getBaseAlign(), llvm::MachineMemOperand::getFailureOrdering(), llvm::MachineMemOperand::getFlags(), llvm::MachineMemOperand::getOffset(), llvm::MachineMemOperand::getPseudoValue(), llvm::MachineMemOperand::getRanges(), llvm::MachineMemOperand::getSize(), llvm::MachineMemOperand::getSuccessOrdering(), llvm::MachineMemOperand::getSyncScopeID(), and llvm::MachineMemOperand::getValue().

◆ getMachineMemOperand() [2/11] ◆ getMachineMemOperand() [3/11] ◆ getMachineMemOperand() [4/11] ◆ getMachineMemOperand() [5/11]

getMachineMemOperand - Allocate a new MachineMemOperand by copying an existing one, adjusting by an offset and using the given size.

MachineMemOperands are owned by the MachineFunction and need not be explicitly deallocated.

Definition at line 569 of file MachineFunction.cpp.

References llvm::commonAlignment(), llvm::MachineMemOperand::getAAInfo(), llvm::MachineMemOperand::getBaseAlign(), llvm::MachineMemOperand::getFailureOrdering(), llvm::MachineMemOperand::getFlags(), llvm::MachineMemOperand::getPointerInfo(), llvm::MachineMemOperand::getSuccessOrdering(), llvm::MachineMemOperand::getSyncScopeID(), llvm::MachinePointerInfo::getWithOffset(), llvm::PointerUnion< PTs >::isNull(), llvm::Offset, and llvm::MachinePointerInfo::V.

◆ getMachineMemOperand() [6/11] ◆ getMachineMemOperand() [7/11] ◆ getMachineMemOperand() [8/11] ◆ getMachineMemOperand() [9/11]

getMachineMemOperand - Allocate a new MachineMemOperand.

MachineMemOperands are owned by the MachineFunction and need not be explicitly deallocated.

Definition at line 536 of file MachineFunction.cpp.

Referenced by llvm::addFrameReference(), addFrameReference(), llvm::M68k::addFrameReference(), llvm::M68k::addMemOperand(), llvm::AMDGPURegisterBankInfo::applyMappingSBufferLoad(), llvm::CombinerHelper::applySextInRegOfLoad(), M68kOutgoingArgHandler::assignValueToAddress(), buildEpilogRestore(), llvm::X86TargetLowering::BuildFILD(), llvm::MachineIRBuilder::buildLoad(), llvm::MachineIRBuilder::buildLoadFromOffset(), buildPrologSpill(), llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::MachineIRBuilder::buildStore(), llvm::SIRegisterInfo::buildVGPRSpillLoadStore(), combineI8TruncStore(), combineV3I8LoadExt(), llvm::CallLowering::ValueHandler::copyArgumentMemory(), llvm::FastISel::createMachineMemOperandFor(), emitBuildPairF64Pseudo(), emitLoadFromConstantPool(), llvm::AArch64SelectionDAGInfo::EmitMOPS(), llvm::TargetLoweringBase::emitPatchPoint(), llvm::X86FrameLowering::emitPrologue(), emitSplitF64Pseudo(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForSetTag(), EmitUnrolledSetTag(), expandLoadStackGuard(), llvm::ARMBaseInstrInfo::expandLoadStackGuardBase(), llvm::HexagonInstrInfo::expandPostRAPseudo(), extractLoadMMOs(), extractStoreMMOs(), foldInlineAsmMemOperand(), llvm::TargetInstrInfo::foldMemoryOperand(), getBROADCAST_LOAD(), getFrameIndexMMO(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::SelectionDAG::getLoad(), getLoadStackGuard(), llvm::SelectionDAG::getLoadVP(), getMachineMemOperand(), llvm::SelectionDAG::getMemIntrinsicNode(), llvm::MipsInstrInfo::GetMemOperand(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), getStackAlignedMMO(), llvm::SelectionDAG::getStore(), llvm::SelectionDAG::getTruncStore(), llvm::SelectionDAG::getTruncStoreVP(), llvm::SystemZELFFrameLowering::inlineStackProbe(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::MipsLegalizerInfo::legalizeCustom(), llvm::AMDGPULegalizerInfo::legalizeGlobalValue(), llvm::AArch64LegalizerInfo::legalizeIntrinsic(), llvm::RISCVLegalizerInfo::legalizeIntrinsic(), llvm::AMDGPULegalizerInfo::legalizeLoad(), llvm::AMDGPULegalizerInfo::legalizeSBufferLoad(), llvm::AMDGPULegalizerInfo::legalizeTrapHsaQueuePtr(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::ARMBaseInstrInfo::loadRegFromStackSlot(), llvm::Thumb1InstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::HexagonInstrInfo::loadRegFromStackSlot(), llvm::SparcInstrInfo::loadRegFromStackSlot(), llvm::VEInstrInfo::loadRegFromStackSlot(), llvm::LoongArchInstrInfo::loadRegFromStackSlot(), llvm::RISCVInstrInfo::loadRegFromStackSlot(), llvm::MSP430InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::ARCInstrInfo::loadRegFromStackSlot(), llvm::AVRInstrInfo::loadRegFromStackSlot(), llvm::CSKYInstrInfo::loadRegFromStackSlot(), llvm::XCoreInstrInfo::loadRegFromStackSlot(), llvm::PPCInstrInfo::loadRegFromStackSlotNoUpd(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::LegalizerHelper::lowerLoad(), lowerShuffleAsBroadcast(), llvm::LegalizerHelper::lowerStore(), llvm::HexagonTargetLowering::LowerUnalignedLoad(), llvm::LegalizerHelper::lowerVAArg(), lowerVECTOR_SHUFFLE(), llvm::CombinerHelper::matchCombineExtractedVectorLoad(), llvm::CombinerHelper::matchLoadOrCombine(), narrowExtractedVectorLoad(), performCONCAT_VECTORSCombine(), llvm::PPCTargetLowering::PerformDAGCombine(), performVP_REVERSECombine(), performVP_STORECombine(), llvm::LegalizerHelper::reduceLoadStoreWidth(), llvm::SIInstrInfo::reMaterialize(), llvm::SITargetLowering::ReplaceNodeResults(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::LegalizerHelper::scalarizeVectorBooleanStore(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::ARMBaseInstrInfo::storeRegToStackSlot(), llvm::Thumb1InstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::HexagonInstrInfo::storeRegToStackSlot(), llvm::LoongArchInstrInfo::storeRegToStackSlot(), llvm::RISCVInstrInfo::storeRegToStackSlot(), llvm::SparcInstrInfo::storeRegToStackSlot(), llvm::VEInstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::ARCInstrInfo::storeRegToStackSlot(), llvm::AVRInstrInfo::storeRegToStackSlot(), llvm::CSKYInstrInfo::storeRegToStackSlot(), llvm::MSP430InstrInfo::storeRegToStackSlot(), llvm::XCoreInstrInfo::storeRegToStackSlot(), llvm::PPCInstrInfo::storeRegToStackSlotNoUpd(), tryMemPairCombine(), and llvm::LegalizerHelper::widenScalar().

◆ getMachineMemOperand() [10/11] ◆ getMachineMemOperand() [11/11] ◆ getName()

getName - Return the name of the corresponding LLVM function.

Definition at line 645 of file MachineFunction.cpp.

References getFunction(), and llvm::Value::getName().

Referenced by llvm::ARMBasicBlockUtils::adjustBBOffsetsAfter(), llvm::HexagonFrameLowering::assignCalleeSavedSpillSlots(), llvm::DebugHandlerBase::beginFunction(), llvm::VirtRegAuxInfo::calculateSpillWeightsAndHints(), llvm::Combiner::combineMachineInstrs(), llvm::ARCFrameLowering::determineCalleeSaves(), llvm::ARCFrameLowering::eliminateCallFramePseudoInstr(), llvm::ARCRegisterInfo::eliminateFrameIndex(), llvm::MipsRegisterInfo::eliminateFrameIndex(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::ARCFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), emitErrorMsg(), llvm::AsmPrinter::emitFunctionBody(), llvm::AMDGPUAsmPrinter::emitFunctionBodyStart(), llvm::AMDGPUAsmPrinter::emitFunctionEntryLabel(), llvm::X86AsmPrinter::emitKCFITypeId(), llvm::ARCFrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::VEFrameLowering::emitPrologue(), llvm::VETargetLowering::emitSjLjDispatchBlock(), llvm::AsmPrinter::emitStackUsage(), llvm::MachineBasicBlock::getFullName(), llvm::DOTGraphTraits< DOTMachineFuncInfo * >::getGraphName(), getIRFileDisplayName(), llvm::TargetLoweringObjectFileELF::getSectionForMachineBasicBlock(), llvm::MachineBasicBlock::getSymbol(), llvm::GCNSchedStage::initGCNRegion(), INITIALIZE_PASS(), llvm::MIRParserImpl::initializeCallSiteInfo(), llvm::AArch64InstrInfo::insertOutlinedCall(), llvm::ARMBaseInstrInfo::insertOutlinedCall(), llvm::RISCVInstrInfo::insertOutlinedCall(), llvm::X86InstrInfo::insertOutlinedCall(), llvm::VETargetLowering::LowerCustomJumpTableEntry(), llvm::MLPriorityAdvisor::MLPriorityAdvisor(), llvm::MIRParserImpl::parseCalledGlobals(), llvm::MIRPrinter::print(), llvm::MachineCycleInfoWrapperPass::print(), print(), llvm::ReachingDefAnalysis::printAllReachingDefs(), llvm::ARCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::VerifyInstrumentation::registerCallbacks(), reportFastISelFailure(), reportGISelDiagnostic(), llvm::PPCRegisterInfo::requiresFrameIndexScavenging(), llvm::ARCFrameLowering::restoreCalleeSavedRegisters(), llvm::LiveIntervalsPrinterPass::run(), llvm::LiveVariablesPrinterPass::run(), llvm::MachineBlockFrequencyPrinterPass::run(), llvm::MachineBranchProbabilityPrinterPass::run(), llvm::MachineDominatorTreePrinterPass::run(), llvm::MachineLoopPrinterPass::run(), llvm::MachinePostDominatorTreePrinterPass::run(), llvm::SlotIndexesPrinterPass::run(), llvm::ThunkInserter< Derived, InsertedThunksTy >::run(), llvm::Legalizer::runOnMachineFunction(), llvm::LoadStoreOpt::runOnMachineFunction(), llvm::Localizer::runOnMachineFunction(), llvm::RegBankSelect::runOnMachineFunction(), GCEmptyBasicBlocks::runOnMachineFunction(), llvm::RAGreedy::runOnMachineFunction(), llvm::GCNRegPressurePrinter::runOnMachineFunction(), llvm::ARMBlockPlacement::runOnMachineFunction(), llvm::LiveDebugVariables::LDVImpl::runOnMachineFunction(), llvm::VLIWMachineScheduler::schedule(), llvm::InstructionSelect::selectMachineFunction(), llvm::MIRParserImpl::setupRegisterInfo(), shouldGenerateData(), llvm::ARCFrameLowering::spillCalleeSavedRegisters(), llvm::DbgValueHistoryMap::trimLocationRanges(), updateForAIXShLibTLSModelOpt(), viewCFG(), viewCFGOnly(), writeGadgetGraph(), and writeMCFGToDotFile().

◆ getNewDebugInstrNum() unsigned llvm::MachineFunction::getNewDebugInstrNum ( ) inline ◆ getNumBlockIDs() unsigned llvm::MachineFunction::getNumBlockIDs ( ) const inline

getNumBlockIDs - Return the number of MBB ID's allocated.

Definition at line 876 of file MachineFunction.h.

Referenced by llvm::ARMBasicBlockUtils::adjustBBOffsetsAfter(), llvm::ARMBasicBlockUtils::computeAllBlockSizes(), computeBlockInfo(), llvm::HexagonFrameLowering::emitPrologue(), llvm::ReachingDefAnalysis::init(), llvm::MachineTraceMetrics::init(), llvm::LiveRangeCalc::isJointlyDominated(), maybeUpdateTerminator(), llvm::LiveRangeCalc::resetLiveOutMap(), llvm::CFIFixup::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::sortBasicBlocksAndUpdateBranches(), sortBlocks(), llvm::ReachingDefAnalysis::traverse(), llvm::LoopTraversal::traverse(), and llvm::MachineTraceMetrics::verifyAnalysis().

◆ getObserver() ◆ getOrCreateJumpTableInfo() ◆ getOrCreateLandingPadInfo() ◆ getPICBaseSymbol() MCSymbol * MachineFunction::getPICBaseSymbol ( ) const ◆ getProperties() [1/2] ◆ getProperties() [2/2]

Get the function properties.

Definition at line 824 of file MachineFunction.h.

Referenced by llvm::VirtRegMap::assignVirt2Phys(), llvm::Combiner::combineMachineInstrs(), createFrameHelperMachineFunction(), createPHIsForSelects(), llvm::ThunkInserter< Derived, InsertedThunksTy >::createThunkFunction(), llvm::TargetInstrInfo::describeLoadedValue(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::RegAllocBase::getErrorAssignment(), llvm::AArch64RegisterInfo::getReservedRegs(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::MachineRegisterInfo::invalidateLiveness(), llvm::MachineRegisterInfo::isSSA(), llvm::MachineRegisterInfo::leaveSSA(), llvm::MachineBasicBlock::liveout_begin(), llvm::MIRPrinter::print(), print(), llvm::reportGISelFailure(), llvm::MachineVerifierPass::run(), llvm::SelectionDAGISelPass::run(), runFixI1Copies(), llvm::InstructionSelect::runOnMachineFunction(), llvm::Legalizer::runOnMachineFunction(), llvm::LoadStoreOpt::runOnMachineFunction(), llvm::Localizer::runOnMachineFunction(), llvm::RegBankSelect::runOnMachineFunction(), llvm::SelectionDAGISelLegacy::runOnMachineFunction(), llvm::scavengeFrameVirtualRegs(), llvm::InstructionSelect::selectMachineFunction(), and llvm::MachineRegisterInfo::tracksLiveness().

◆ getPSVManager() ◆ getRegInfo() [1/2]

getRegInfo - Return information about the registers currently in use.

Definition at line 743 of file MachineFunction.h.

Referenced by addCalleeSavedRegs(), addConstantsToTrack(), addImplicitDefs(), llvm::RegsForValue::AddInlineAsmOperands(), addLiveIn(), llvm::MachineBasicBlock::addLiveIn(), addLiveIn(), llvm::addLiveIns(), llvm::ilist_callback_traits< MachineBasicBlock >::addNodeToList(), AdjustBaseAndOffset(), llvm::X86FrameLowering::adjustForHiPEPrologue(), llvm::X86FrameLowering::adjustForSegmentedStacks(), llvm::SITargetLowering::AdjustInstrPostInstrSelection(), llvm::RISCVRegisterInfo::adjustReg(), llvm::XtensaInstrInfo::adjustStackPtr(), llvm::SITargetLowering::allocateHSAUserSGPRs(), allocateHSAUserSGPRs(), llvm::SITargetLowering::allocateSpecialEntryInputVGPRs(), allocateVGPR32Input(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::ARMBaseInstrInfo::analyzeLoopForPipelining(), llvm::PPCInstrInfo::analyzeLoopForPipelining(), llvm::RISCVInstrInfo::analyzeLoopForPipelining(), llvm::MipsRegisterBankInfo::applyMappingImpl(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::PPCFrameLowering::assignCalleeSavedSpillSlots(), llvm::VirtRegMap::assignVirt2StackSlot(), attachMEMCPYScratchRegs(), attemptDebugCopyProp(), llvm::buildAtomicRMWInst(), buildGitPtr(), buildScratchExecCopy(), llvm::SIRegisterInfo::buildSpillLoadStore(), llvm::VirtRegAuxInfo::calculateSpillWeightsAndHints(), llvm::ModuloScheduleExpanderMVE::canApply(), canCombine(), canCombineFPFusedMultiply(), canCompareBeNewValueJump(), llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::canInsertSelect(), llvm::PPCInstrInfo::canInsertSelect(), llvm::SystemZInstrInfo::canInsertSelect(), llvm::X86InstrInfo::canInsertSelect(), llvm::SIInstrInfo::canInsertSelect(), llvm::ARMBaseRegisterInfo::canRealignStack(), llvm::LoongArchRegisterInfo::canRealignStack(), llvm::M68kRegisterInfo::canRealignStack(), llvm::MipsRegisterInfo::canRealignStack(), llvm::X86RegisterInfo::canRealignStack(), llvm::AArch64FrameLowering::canUseAsPrologue(), llvm::checkVOPDRegConstraints(), llvm::X86InstrInfo::classifyLEAReg(), cloneInstr(), combineFPFusedMultiply(), llvm::HexagonBlockRanges::computeDeadMap(), llvm::computeLiveIns(), computeLiveOuts(), llvm::constrainSelectedInstRegOperands(), llvm::PPCInstrInfo::convertToImmediateForm(), llvm::SIInstrInfo::convertToThreeAddress(), llvm::X86InstrInfo::convertToThreeAddress(), llvm::NVPTXInstrInfo::copyPhysReg(), llvm::WebAssemblyInstrInfo::copyPhysReg(), llvm::AllocationOrder::create(), llvm::SwiftErrorValueTracking::createEntriesInEntryBlock(), createFrameHelperMachineFunction(), llvm::AMDGPUTargetLowering::CreateLiveInRegister(), createPostIncLoadStore(), createTypeVReg(), llvm::HexagonInstrInfo::createVR(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::XCoreFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), llvm::AArch64FrameLowering::eliminateCallFramePseudoInstr(), llvm::AArch64RegisterInfo::eliminateFrameIndex(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), llvm::ThumbRegisterInfo::eliminateFrameIndex(), llvm::HexagonRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::SIRegisterInfo::eliminateFrameIndex(), llvm::CSKYRegisterInfo::eliminateFrameIndex(), llvm::SystemZRegisterInfo::eliminateFrameIndex(), llvm::LoongArchRegisterInfo::eliminateFrameIndex(), llvm::RISCVRegisterInfo::eliminateFrameIndex(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::AArch64TargetLowering::EmitAllocateZABuffer(), llvm::LiveDebugVariables::LDVImpl::emitDebugValues(), llvm::RISCVTargetLowering::emitDynamicProbedAlloc(), llvm::PPCTargetLowering::emitEHSjLjLongJmp(), llvm::SystemZTargetLowering::emitEHSjLjLongJmp(), llvm::VETargetLowering::emitEHSjLjLongJmp(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::SIFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), emitFrameOffsetAdj(), emitFROUND(), llvm::SITargetLowering::emitGWSMemViolTestLoop(), emitIndirectDst(), emitIndirectSrc(), llvm::R600TargetLowering::EmitInstrWithCustomInserter(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::X86TargetLowering::EmitInstrWithCustomInserter(), llvm::AArch64InstrInfo::emitLdStWithAddr(), llvm::PPCTargetLowering::emitProbedAlloca(), llvm::SIFrameLowering::emitPrologue(), llvm::AVRFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::NVPTXFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), emitPseudoCTPOP(), emitPseudoXVINSGR2VR(), emitQuietFCMP(), emitReadCounterWidePseudo(), llvm::VETargetLowering::emitSjLjDispatchBlock(), emitThumbRegPlusImmInReg(), emitVecCondBranchPseudo(), emitVFROUND_NOEXCEPT_MASK(), emitXBegin(), llvm::SIInstrInfo::enforceOperandRCAlignment(), llvm::GIMatchTableExecutor::executeMatchTable(), llvm::SIInstrInfo::expandMovDPP64(), llvm::SIInstrInfo::expandPostRAPseudo(), llvm::HexagonInstrInfo::expandPostRAPseudo(), extractRsrcPtr(), llvm::PPCInstrInfo::finalizeInsInstrs(), llvm::TargetLoweringBase::finalizeLowering(), llvm::SITargetLowering::finalizeLowering(), llvm::SPIRVTargetLowering::finalizeLowering(), llvm::findPHICopyInsertPoint(), findRenameRegForSameLdStRegPair(), findScratchNonCalleeSaveRegister(), foldConstantsIntoIntrinsics(), llvm::PPCInstrInfo::foldFrameOffset(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SIInstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), foldPatchpoint(), forceReg(), llvm::GCNHazardRecognizer::GCNHazardRecognizer(), llvm::TargetInstrInfo::genAlternativeCodeSequence(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), llvm::RISCVInstrInfo::genAlternativeCodeSequence(), genAlternativeDpCodeSequence(), generateAssignInstrs(), llvm::generateAsyncCopy(), llvm::generateGroupInst(), llvm::generateImageSizeQueryInst(), genIndexedMultiply(), genShXAddAddShift(), llvm::SIInstrInfo::getAddNoCarry(), llvm::TargetRegisterInfo::getAllocatableSet(), getArgBaseReg(), llvm::MachineRegisterInfo::getCalleeSavedRegs(), llvm::PPCRegisterInfo::getCalleeSavedRegs(), llvm::FunctionLoweringInfo::getCatchPadExceptionPointerVReg(), llvm::PPCInstrInfo::getConstantFromConstantPool(), GetCostForDef(), llvm::AMDGPURegisterBankInfo::getDefaultMappingAllVGPR(), llvm::AMDGPURegisterBankInfo::getDefaultMappingSOP(), llvm::AMDGPURegisterBankInfo::getDefaultMappingVOP(), llvm::PPCInstrInfo::getFMAPatterns(), getFMULPatterns(), getFNEGPatterns(), getFoldableImm(), llvm::getFunctionLiveInPhysReg(), llvm::MipsFunctionInfo::getGlobalBaseReg(), llvm::CSKYInstrInfo::getGlobalBaseReg(), llvm::M68kInstrInfo::getGlobalBaseReg(), llvm::SparcInstrInfo::getGlobalBaseReg(), llvm::X86InstrInfo::getGlobalBaseReg(), llvm::R600InstrInfo::getIndirectIndexBegin(), getIndVarInfo(), GetInitialOffset(), llvm::AArch64RegisterBankInfo::getInstrAlternativeMappings(), llvm::AMDGPURegisterBankInfo::getInstrAlternativeMappings(), llvm::X86RegisterBankInfo::getInstrAlternativeMappings(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMapping(), llvm::ARMRegisterBankInfo::getInstrMapping(), llvm::MipsRegisterBankInfo::getInstrMapping(), llvm::PPCRegisterBankInfo::getInstrMapping(), llvm::RISCVRegisterBankInfo::getInstrMapping(), llvm::X86RegisterBankInfo::getInstrMapping(), llvm::AMDGPURegisterBankInfo::getInstrMappingForLoad(), llvm::RegisterBankInfo::getInstrMappingImpl(), llvm::X86InstrInfo::getJumpTableIndex(), getLiveRegsForEntryMBB(), LiveDebugValues::MLocTracker::getLocSizeInBits(), llvm::SPIRVGlobalRegistry::getOrCreateConstNullPtr(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeByOpcode(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeCoopMatr(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeSampledImage(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVArrayType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVBoolType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVPointerType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVVectorType(), llvm::SPIRVGlobalRegistry::getOrCreateUndef(), llvm::SwiftErrorValueTracking::getOrCreateVReg(), llvm::SwiftErrorValueTracking::getOrCreateVRegDefAt(), llvm::AArch64InstrInfo::getOutlinableRanges(), llvm::MachineFrameInfo::getPristineRegs(), getPrologueDeath(), llvm::AArch64RegisterInfo::getRegAllocationHints(), llvm::ARMBaseRegisterInfo::getRegAllocationHints(), llvm::PPCRegisterInfo::getRegAllocationHints(), llvm::RISCVRegisterInfo::getRegAllocationHints(), llvm::SystemZRegisterInfo::getRegAllocationHints(), llvm::X86RegisterInfo::getRegAllocationHints(), llvm::TargetRegisterInfo::getRegAllocationHints(), getRegClass(), llvm::SIInstrInfo::getRegClass(), getRegistersForValue(), getRegTy(), llvm::SPIRVGlobalRegistry::getResultType(), getVGPRSpillLaneOrTempRegister(), llvm::PerFunctionMIParsingState::getVRegInfo(), llvm::PerFunctionMIParsingState::getVRegInfoNamed(), llvm::VirtRegMap::grow(), llvm::CallLowering::handleAssignments(), llvm::TargetInstrInfo::hasReassociableOperands(), llvm::RISCVInstrInfo::hasReassociableOperands(), llvm::TargetInstrInfo::hasReassociableSibling(), llvm::RISCVInstrInfo::hasReassociableSibling(), llvm::SIInstrInfo::hasVGPRUses(), indirectCopyToAGPR(), llvm::RegPressureTracker::init(), llvm::MachineTraceMetrics::init(), llvm::RegBankSelect::init(), llvm::MipsFunctionInfo::initGlobalBaseReg(), INITIALIZE_PASS(), llvm::SelectionDAGISel::initializeAnalysisResults(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::TailDuplicator::initMF(), llvm::VEInstrInfo::insertBranch(), insertCSRSaves(), llvm::SIInstrInfo::insertEQ(), llvm::XtensaInstrInfo::insertIndirectBranch(), llvm::SIInstrInfo::insertIndirectBranch(), llvm::LoongArchInstrInfo::insertIndirectBranch(), llvm::RISCVInstrInfo::insertIndirectBranch(), insertInlineAsmProcess(), llvm::insertMultibyteShift(), llvm::SIInstrInfo::insertNE(), llvm::SIInstrInfo::insertSelect(), llvm::AArch64InstrInfo::insertSelect(), llvm::PPCInstrInfo::insertSelect(), llvm::SystemZInstrInfo::insertSelect(), llvm::X86InstrInfo::insertSelect(), llvm::CallLowering::insertSRetLoads(), llvm::CallLowering::insertSRetStores(), llvm::SIInstrInfo::insertVectorSelect(), isACalleeSavedRegister(), llvm::SIRegisterInfo::isAsmClobberable(), llvm::SIInstrInfo::isBasicBlockPrologue(), isCallerPreservedOrConstPhysReg(), llvm::SITargetLowering::isCanonicalized(), llvm::isCycleInvariant(), isDefinedOutside(), llvm::SITargetLowering::isEligibleForTailCallOptimization(), llvm::MachineLoop::isLoopInvariant(), llvm::ARMBaseInstrInfo::isMBBSafeToOutlineFrom(), isNonFoldablePartialRegisterLoad(), llvm::SIInstrInfo::isOperandLegal(), llvm::TargetInstrInfo::isReallyTriviallyReMaterializable(), llvm::X86InstrInfo::isReallyTriviallyReMaterializable(), llvm::AMDGPURegisterBankInfo::isSALUMapping(), isSignExtendedW(), llvm::PPCInstrInfo::isSignOrZeroExtended(), isSSA(), llvm::SIInstrInfo::isVGPRCopy(), isXPLeafCandidate(), llvm::AArch64LegalizerInfo::legalizeIntrinsic(), llvm::Legalizer::legalizeMachineFunction(), llvm::SIInstrInfo::legalizeOperands(), llvm::SIInstrInfo::legalizeOpWithMove(), llvm::SITargetLowering::legalizeTargetIndependentNode(), llvm::MipsSEInstrInfo::loadImmediate(), llvm::XtensaInstrInfo::loadImmediate(), llvm::SystemZInstrInfo::loadImmediate(), loadM0FromVGPR(), loadMBUFScalarOperandsFromVGPR(), llvm::AArch64InstrInfo::loadRegFromStackSlot(), llvm::Thumb2InstrInfo::loadRegFromStackSlot(), llvm::SIInstrInfo::loadRegFromStackSlot(), llvm::X86InstrInfo::loadStoreTileReg(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::M68kCallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::RISCVCallLowering::lowerCall(), llvm::X86CallLowering::lowerCall(), llvm::CallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCallResult(), LowerCallResults(), llvm::PPCRegisterInfo::lowerCRBitRestore(), llvm::PPCRegisterInfo::lowerCRBitSpilling(), llvm::PPCRegisterInfo::lowerCRRestore(), llvm::PPCRegisterInfo::lowerCRSpilling(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::ARMCallLowering::lowerFormalArguments(), llvm::M68kCallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::PPCCallLowering::lowerFormalArguments(), llvm::RISCVCallLowering::lowerFormalArguments(), llvm::X86CallLowering::lowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::RISCVTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::XtensaTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), LowerFPToInt(), LowerMemcpy(), LowerMemset(), llvm::MipsCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::M68kCallLowering::lowerReturn(), llvm::PPCCallLowering::lowerReturn(), llvm::RISCVCallLowering::lowerReturn(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::RISCVRegisterInfo::lowerVRELOAD(), llvm::RISCVRegisterInfo::lowerVSPILL(), llvm::PPCRegisterInfo::lowerWACCRestore(), llvm::PPCRegisterInfo::lowerWACCSpilling(), lowerWaveReduce(), llvm::machineFunctionIsIllegal(), llvm::CombinerHelper::matchCombineConstPtrAddToI2P(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::SIRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::RISCVRegisterInfo::materializeFrameBaseRegister(), llvm::SIInstrInfo::materializeImmediate(), llvm::PPCInstrInfo::materializeImmPostRA(), llvm::SIInstrInfo::moveFlatAddrToVGPR(), llvm::SIInstrInfo::moveToVALUImpl(), llvm::CSKYInstrInfo::movImm(), llvm::RISCVInstrInfo::mulImm(), MustSaveLR(), needsDenormHandlingF32(), llvm::RISCVRegisterInfo::needsFrameBaseReg(), needToReserveScavengingSpillSlots(), llvm::PPCInstrInfo::optimizeCmpPostRA(), llvm::AArch64InstrInfo::optimizeCondBranch(), llvm::RISCVInstrInfo::optimizeCondBranch(), llvm::BranchFolder::OptimizeFunction(), llvm::MIRParserImpl::parseRegisterInfo(), llvm::AMDGPUCallLowering::passSpecialInputs(), llvm::PhiLoweringHelper::PhiLoweringHelper(), llvm::SITargetLowering::PostISelFolding(), llvm::PPCRegisterInfo::prepareDynamicAlloca(), llvm::VETargetLowering::prepareMBB(), llvm::VETargetLowering::prepareSymbol(), llvm::MIPrinter::print(), llvm::MIRPrinter::print(), llvm::MachineBasicBlock::print(), PrintNodeInfo(), llvm::AArch64InstrInfo::probedStackAlloc(), processBlockAddr(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameIndicesReplaced(), processInstrsWithTypeFolding(), processNewInstrs(), processSwitchesConstants(), propagateLocalCopies(), llvm::SwiftErrorValueTracking::propagateVRegs(), pushRegsToStack(), llvm::TargetInstrInfo::reassociateOps(), llvm::recomputeLivenessFlags(), llvm::GCNTargetMachine::registerMachineRegisterInfoCallback(), llvm::SIInstrInfo::reMaterialize(), rescheduleCanonically(), reservePrivateMemoryRegs(), llvm::LiveRangeCalc::reset(), llvm::GCNRPTracker::reset(), llvm::SIRegisterInfo::resolveFrameIndex(), llvm::PPCRegisterInfo::resolveFrameIndex(), llvm::restoreStatusRegister(), llvm::ThumbRegisterInfo::rewriteFrameIndex(), llvm::rewriteT2FrameIndex(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::GCNRegPressurePrinter::runOnMachineFunction(), llvm::WebAssemblyAsmPrinter::runOnMachineFunction(), llvm::scavengeFrameVirtualRegs(), llvm::InstructionSelect::selectInstr(), llvm::InstructionSelect::selectMachineFunction(), llvm::FunctionLoweringInfo::set(), llvm::GISelCSEInfo::setMF(), llvm::MachineIRBuilder::setMF(), llvm::X86MachineFunctionInfo::setRestoreBasePointer(), llvm::AMDGPUInstructionSelector::setupMF(), llvm::MIRParserImpl::setupRegisterInfo(), llvm::SIMachineFunctionInfo::shiftWwmVGPRsToLowestRange(), shouldPreventUndefRegUpdateMemFold(), llvm::PPCInstrInfo::shouldReduceRegisterPressure(), llvm::TargetRegisterInfo::shouldRegionSplitForVirtReg(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::M68kFrameLowering::spillCalleeSavedRegisters(), llvm::PPCFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), spillVGPRtoAGPR(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitMBB(), llvm::SIMachineFunctionInfo::splitWWMSpillRegisters(), llvm::stableHashValue(), llvm::AggressiveAntiDepBreaker::StartBlock(), llvm::CriticalAntiDepBreaker::StartBlock(), llvm::AArch64InstrInfo::storeRegToStackSlot(), llvm::Thumb2InstrInfo::storeRegToStackSlot(), llvm::SIInstrInfo::storeRegToStackSlot(), llvm::tryFoldSPUpdateIntoPushPop(), tryToFindRegisterToRename(), unpack64(), unpackF64OnRV32DSoftABI(), unpackFromRegLoc(), unstackifyVRegsUsedInSplitBB(), llvm::AArch64RegisterInfo::UpdateCustomCalleeSavedRegs(), updateLiveness(), UpdateOperandRegClass(), updateOperandRegConstraints(), llvm::ARMBaseRegisterInfo::updateRegAllocHint(), llvm::SIMachineFunctionInfo::usesAGPRs(), validateFunCall(), llvm::RegisterBankInfo::InstructionMapping::verify(), llvm::SIInstrInfo::verifyInstruction(), and llvm::VirtRegAuxInfo::weightCalcHelper().

◆ getRegInfo() [2/2] ◆ getSection() MCSection * llvm::MachineFunction::getSection ( ) const inline ◆ getSublistAccess() ◆ getSubtarget() [1/2]

getSubtarget - Return the subtarget for which this machine code is being compiled.

Definition at line 733 of file MachineFunction.h.

Referenced by llvm::DwarfCompileUnit::addAddress(), llvm::DwarfCompileUnit::addComplexAddress(), addImplicitDefs(), llvm::MachineBasicBlock::addLiveIn(), addLiveInRegs(), llvm::ScheduleDAGInstrs::addPhysRegDataDeps(), llvm::ScheduleDAGInstrs::addPhysRegDeps(), addSavedGPR(), llvm::ScheduleDAGInstrs::addVRegDefDeps(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::RISCVRegisterInfo::adjustReg(), allocateRegMask(), llvm::TargetFrameLowering::allocateScavengingFrameIndexesNearIncomingSP(), llvm::SIFrameLowering::allocateScavengingFrameIndexesNearIncomingSP(), llvm::SIMachineFunctionInfo::allocateSGPRSpillToVGPRLane(), llvm::SIMachineFunctionInfo::allocateVGPRSpillToAGPR(), llvm::ARMBaseInstrInfo::analyzeBranch(), analyzeCompressibleUses(), llvm::CCState::analyzeMustTailForwardedRegisters(), llvm::A57ChainingConstraint::apply(), llvm::HexagonSubtarget::CallMutation::apply(), llvm::AMDGPURegisterBankInfo::applyMappingDynStackAlloc(), llvm::MipsRegisterBankInfo::applyMappingImpl(), llvm::AMDGPUCallLowering::areCalleeOutgoingArgsTailCallable(), llvm::ARMBasicBlockUtils::ARMBasicBlockUtils(), llvm::SIFrameLowering::assignCalleeSavedSpillSlots(), llvm::SystemZXPLINKFrameLowering::assignCalleeSavedSpillSlots(), llvm::RISCVFrameLowering::assignCalleeSavedSpillSlots(), assignSections(), attemptDebugCopyProp(), llvm::avoidZeroOffsetLandingPad(), llvm::DebugHandlerBase::beginFunction(), llvm::CodeViewDebug::beginFunctionImpl(), llvm::DwarfDebug::beginInstruction(), buildAnyextOrCopy(), llvm::buildBarrierInst(), llvm::MachineIRBuilder::buildBoolExtInReg(), llvm::AArch64InstrInfo::buildClearRegister(), llvm::X86InstrInfo::buildClearRegister(), llvm::SPIRVGlobalRegistry::buildConstantInt(), buildDefaultVLOps(), llvm::MachineIRBuilder::buildExtractVectorElementConstant(), llvm::SPIRVGlobalRegistry::buildGlobalVariable(), llvm::buildNDRange(), llvm::AArch64InstrInfo::buildOutlinedFrame(), llvm::ScheduleDAGInstrs::buildSchedGraph(), buildScratchExecCopy(), llvm::calculateDbgEntityHistory(), llvm::calculateRegAllocScore(), llvm::LiveRangeEdit::calculateRegClassAndHint(), llvm::HexagonTargetLowering::CanLowerReturn(), llvm::LoongArchTargetLowering::CanLowerReturn(), llvm::RISCVCallLowering::canLowerReturn(), cannotCoexistAsymm(), cannotInsertTailCall(), llvm::HexagonPacketizerList::canPromoteToDotCur(), llvm::ARMBaseRegisterInfo::canRealignStack(), llvm::MipsRegisterInfo::canRealignStack(), canSpillOnFrameIndexAccess(), llvm::MachineBasicBlock::canSplitCriticalEdge(), llvm::AArch64FrameLowering::canUseAsPrologue(), llvm::X86FrameLowering::canUseAsPrologue(), llvm::AArch64FrameLowering::canUseRedZone(), CC_AArch64_Custom_Block(), CC_AIX(), CC_ARM_AAPCS_Custom_Aggregate(), CC_MipsO32(), llvm::CC_RISCV(), llvm::CC_RISCV_FastCC(), llvm::CC_RISCV_GHC(), CC_RISCVAssign2XLen(), llvm::CC_SystemZ_I128Indirect(), CC_X86_64_VectorCall(), CC_X86_Intr(), CC_X86_VectorCallAssignRegister(), checkNumAlignedDPRCS2Regs(), llvm::checkVOPDRegConstraints(), cloneInstr(), combineFPFusedMultiply(), computeFPBPAlignmentGap(), llvm::SITargetLowering::computeKnownBitsForTargetNode(), computeLiveOuts(), llvm::MachineFrameInfo::computeMaxCallFrameSize(), llvm::TargetSchedModel::computeOutputLatency(), llvm::MIRPrinter::convertCallSiteObjects(), llvm::MIRPrinter::convertEntryValueObjects(), llvm::GCNTargetMachine::convertFuncInfoToYAML(), llvm::MIRPrinter::convertStackObjects(), llvm::Thumb1InstrInfo::copyPhysReg(), createAtomicLibcall(), llvm::createBURRListDAGScheduler(), createDedicatedExit(), llvm::createDefaultScheduler(), llvm::MipsFunctionInfo::createEhDataRegsFI(), llvm::XCoreFunctionInfo::createEHSpillSlot(), llvm::ARM::createFastISel(), llvm::PPC::createFastISel(), llvm::XCoreFunctionInfo::createFPSpillSlot(), llvm::createHybridListDAGScheduler(), llvm::createILPListDAGScheduler(), llvm::MipsFunctionInfo::createISRRegFI(), llvm::createLibcall(), llvm::XCoreFunctionInfo::createLRSpillSlot(), llvm::createMemLibcall(), createPHIsForCMOVsInSinkBB(), createPHIsForSelects(), llvm::createSourceListDAGScheduler(), llvm::SelectionDAG::CreateStackTemporary(), llvm::PPCInstrInfo::CreateTargetPostRAHazardRecognizer(), createTuple(), llvm::TargetInstrInfo::describeLoadedValue(), llvm::AArch64InstrInfo::describeLoadedValue(), llvm::MipsInstrInfo::describeLoadedValue(), llvm::AArch64FrameLowering::determineCalleeSaves(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::CSKYFrameLowering::determineCalleeSaves(), llvm::HexagonFrameLowering::determineCalleeSaves(), llvm::MipsSEFrameLowering::determineCalleeSaves(), llvm::SystemZELFFrameLowering::determineCalleeSaves(), llvm::SystemZXPLINKFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSaves(), llvm::SIFrameLowering::determineCalleeSavesSGPR(), llvm::SystemZXPLINKFrameLowering::determineFrameLayout(), llvm::SIFrameLowering::determinePrologEpilogSGPRSaves(), llvm::AMDGPUCallLowering::doCallerAndCalleePassArgsTheSameWay(), llvm::AArch64FrameLowering::eliminateCallFramePseudoInstr(), llvm::ARCFrameLowering::eliminateCallFramePseudoInstr(), llvm::MSP430FrameLowering::eliminateCallFramePseudoInstr(), llvm::WebAssemblyFrameLowering::eliminateCallFramePseudoInstr(), llvm::XCoreFrameLowering::eliminateCallFramePseudoInstr(), llvm::XtensaFrameLowering::eliminateCallFramePseudoInstr(), llvm::SIFrameLowering::eliminateCallFramePseudoInstr(), llvm::AVRFrameLowering::eliminateCallFramePseudoInstr(), llvm::AArch64RegisterInfo::eliminateFrameIndex(), llvm::ARCRegisterInfo::eliminateFrameIndex(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), llvm::ThumbRegisterInfo::eliminateFrameIndex(), llvm::HexagonRegisterInfo::eliminateFrameIndex(), llvm::LanaiRegisterInfo::eliminateFrameIndex(), llvm::MSP430RegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::SparcRegisterInfo::eliminateFrameIndex(), llvm::VERegisterInfo::eliminateFrameIndex(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::CSKYRegisterInfo::eliminateFrameIndex(), llvm::SystemZRegisterInfo::eliminateFrameIndex(), llvm::AVRRegisterInfo::eliminateFrameIndex(), llvm::BPFRegisterInfo::eliminateFrameIndex(), llvm::LoongArchRegisterInfo::eliminateFrameIndex(), llvm::WebAssemblyRegisterInfo::eliminateFrameIndex(), llvm::XtensaRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), emitAligningInstructions(), llvm::AArch64TargetLowering::EmitAllocateSMESaveBuffer(), llvm::AArch64TargetLowering::EmitAllocateZABuffer(), emitBuildPairF64Pseudo(), emitCalleeSavedRestores(), emitComments(), llvm::SIFrameLowering::emitCSRSpillRestores(), llvm::SIFrameLowering::emitCSRSpillStores(), llvm::DwarfDebug::emitDebugLocValue(), emitDebugValueComment(), llvm::LiveDebugVariables::LDVImpl::emitDebugValues(), emitDefineCFAWithFP(), llvm::AArch64TargetLowering::EmitDynamicProbedAlloc(), llvm::SystemZTargetLowering::emitEHSjLjLongJmp(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::SIFrameLowering::emitEntryFunctionPrologue(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::SIFrameLowering::emitEpilogue(), llvm::ARCFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitEpilogue(), llvm::AVRFrameLowering::emitEpilogue(), llvm::MSP430FrameLowering::emitEpilogue(), llvm::SparcFrameLowering::emitEpilogue(), llvm::SystemZELFFrameLowering::emitEpilogue(), llvm::SystemZXPLINKFrameLowering::emitEpilogue(), llvm::WebAssemblyFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::XCoreFrameLowering::emitEpilogue(), emitFakeUse(), llvm::MipsAsmPrinter::emitFrameDirective(), emitFrameOffsetAdj(), llvm::AsmPrinter::emitFunctionBody(), llvm::AMDGPUAsmPrinter::emitFunctionBodyEnd(), llvm::AMDGPUAsmPrinter::emitFunctionBodyStart(), llvm::HexagonDAGToDAGISel::emitFunctionEntryCode(), llvm::AMDGPUAsmPrinter::emitFunctionEntryLabel(), llvm::SystemZAsmPrinter::emitFunctionEntryLabel(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::emitHiddenKernelArgs(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV5::emitHiddenKernelArgs(), llvm::AsmPrinter::emitImplicitDef(), llvm::AMDGPUAsmPrinter::emitImplicitDef(), llvm::AMDGPUAsmPrinter::emitInstruction(), llvm::R600AsmPrinter::emitInstruction(), llvm::ARMAsmPrinter::emitInstruction(), llvm::HexagonAsmPrinter::emitInstruction(), llvm::SystemZAsmPrinter::emitInstruction(), llvm::X86AsmPrinter::emitInstruction(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::BPFTargetLowering::EmitInstrWithCustomInserter(), llvm::MSP430TargetLowering::EmitInstrWithCustomInserter(), emitKill(), llvm::ARMBaseRegisterInfo::emitLoadConstPool(), llvm::ThumbRegisterInfo::emitLoadConstPool(), emitLoadM0FromVGPRLoop(), emitLoadScalarOpsFromVGPRLoop(), llvm::PPCDispatchGroupSBHazardRecognizer::EmitNoop(), llvm::AsmPrinter::emitNops(), llvm::AArch64FrameLowering::emitPrologue(), llvm::SIFrameLowering::emitPrologue(), llvm::ARCFrameLowering::emitPrologue(), llvm::AVRFrameLowering::emitPrologue(), llvm::CSKYFrameLowering::emitPrologue(), llvm::HexagonFrameLowering::emitPrologue(), llvm::M68kFrameLowering::emitPrologue(), llvm::MSP430FrameLowering::emitPrologue(), llvm::NVPTXFrameLowering::emitPrologue(), llvm::RISCVFrameLowering::emitPrologue(), llvm::SparcFrameLowering::emitPrologue(), llvm::SystemZELFFrameLowering::emitPrologue(), llvm::SystemZXPLINKFrameLowering::emitPrologue(), llvm::WebAssemblyFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::XCoreFrameLowering::emitPrologue(), emitPrologueEpilogueSPUpdate(), emitQuietFCMP(), emitReadCounterWidePseudo(), emitSCSEpilogue(), emitSCSPrologue(), emitSelectPseudo(), llvm::ARMSelectionDAGInfo::EmitSpecializedLibcall(), emitSplitF64Pseudo(), llvm::X86FrameLowering::emitSPUpdate(), llvm::X86FrameLowering::emitStackProbe(), emitStackProbeInline(), llvm::AArch64SelectionDAGInfo::EmitStreamingCompatibleMemLibCall(), EmitTailCallStoreFPAndRetAddr(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::ARMSelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::HexagonSelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::X86SelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::WebAssemblySelectionDAGInfo::EmitTargetCodeForMemcpy(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemmove(), llvm::AArch64SelectionDAGInfo::EmitTargetCodeForMemset(), llvm::X86SelectionDAGInfo::EmitTargetCodeForMemset(), llvm::ARMSelectionDAGInfo::EmitTargetCodeForMemset(), llvm::WebAssemblySelectionDAGInfo::EmitTargetCodeForMemset(), emitThumb1LoadConstPool(), emitThumb2LoadConstPool(), emitThumbRegPlusImmInReg(), emitVFROUND_NOEXCEPT_MASK(), emitVGSaveRestore(), llvm::AsmPrinter::emitXRayTable(), enableAllocFrameElim(), llvm::HexagonFrameLowering::enableCalleeSaveSkip(), llvm::PPCFrameLowering::enableShrinkWrapping(), estimateFunctionSizeInBytes(), estimateFunctionSizeInBytes(), estimateRSStackSizeLimit(), llvm::MachineFrameInfo::estimateStackSize(), llvm::VEInstrInfo::expandExtendStackPseudo(), expandFillPPRFromZPRSlotPseudo(), llvm::VEInstrInfo::expandGetStackTopPseudo(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::SIInstrInfo::expandPostRAPseudo(), expandSpillPPRToZPRSlotPseudo(), expandXorFP(), llvm::AArch64RegisterInfo::explainReservedReg(), llvm::AArch64CallLowering::fallBackToDAGISel(), llvm::finalizeBundle(), finalizeDebugInstrRefs(), llvm::SITargetLowering::finalizeLowering(), findJumpTableIndex(), findPrologueEndLoc(), findScratchNonCalleeSaveRegister(), finishStackBlock(), fixupBlock(), llvm::TargetInstrInfo::foldMemoryOperand(), llvm::AArch64InstrInfo::foldMemoryOperandImpl(), llvm::SystemZInstrInfo::foldMemoryOperandImpl(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::AArch64InstrInfo::genAlternativeCodeSequence(), generateAssignInstrs(), llvm::generateConvertInst(), generateEndPgm(), llvm::generateGroupUniformInst(), llvm::generateIntelSubgroupsInst(), llvm::generateKernelClockInst(), genIndexedMultiply(), genShXAddAddShift(), llvm::AMDGPUSubtarget::get(), getAddressForMemoryInput(), getArgBaseReg(), llvm::PPCRegisterInfo::getBaseRegister(), getBBAddrMapMetadata(), llvm::getBLRCallOpcode(), llvm::getBLXOpcode(), llvm::getBLXpredOpcode(), llvm::MachineIRBuilder::getBoolExtOp(), llvm::MachineRegisterInfo::getCalleeSavedRegs(), llvm::SystemZXPLINK64Registers::getCalleeSavedRegs(), llvm::SystemZELFRegisters::getCalleeSavedRegs(), llvm::AArch64RegisterInfo::getCalleeSavedRegs(), llvm::ARMBaseRegisterInfo::getCalleeSavedRegs(), llvm::CSKYRegisterInfo::getCalleeSavedRegs(), llvm::LoongArchRegisterInfo::getCalleeSavedRegs(), llvm::MipsRegisterInfo::getCalleeSavedRegs(), llvm::PPCRegisterInfo::getCalleeSavedRegs(), llvm::RISCVRegisterInfo::getCalleeSavedRegs(), llvm::SystemZRegisterInfo::getCalleeSavedRegs(), llvm::X86RegisterInfo::getCalleeSavedRegs(), llvm::AVRRegisterInfo::getCalleeSavedRegs(), llvm::TargetFrameLowering::getCalleeSaves(), llvm::SystemZXPLINK64Registers::getCallPreservedMask(), llvm::SystemZELFRegisters::getCallPreservedMask(), llvm::AVRRegisterInfo::getCallPreservedMask(), llvm::PPCRegisterInfo::getCallPreservedMask(), llvm::SystemZRegisterInfo::getCallPreservedMask(), llvm::CSKYRegisterInfo::getCallPreservedMask(), llvm::AArch64RegisterInfo::getCallPreservedMask(), llvm::ARMBaseRegisterInfo::getCallPreservedMask(), llvm::LoongArchRegisterInfo::getCallPreservedMask(), llvm::MipsRegisterInfo::getCallPreservedMask(), llvm::RISCVRegisterInfo::getCallPreservedMask(), llvm::X86RegisterInfo::getCallPreservedMask(), llvm::AsmPrinter::getCodeViewJumpTableInfo(), llvm::AArch64RegisterInfo::getCustomEHPadPreservedMask(), llvm::AArch64RegisterInfo::getDarwinCalleeSavedRegs(), llvm::AArch64RegisterInfo::getDarwinCallPreservedMask(), llvm::TargetFrameLowering::getDwarfFrameBase(), llvm::X86FrameLowering::getDwarfFrameBase(), llvm::getEHScopeMembership(), llvm::MachineBasicBlock::getFallThrough(), getFPOffset(), llvm::WebAssemblyFrameLowering::getFPReg(), llvm::TargetFrameLowering::getFrameIndexReference(), llvm::R600FrameLowering::getFrameIndexReference(), llvm::SIFrameLowering::getFrameIndexReference(), llvm::CSKYFrameLowering::getFrameIndexReference(), llvm::HexagonFrameLowering::getFrameIndexReference(), llvm::LoongArchFrameLowering::getFrameIndexReference(), llvm::RISCVFrameLowering::getFrameIndexReference(), llvm::SparcFrameLowering::getFrameIndexReference(), llvm::AArch64FrameLowering::getFrameIndexReferencePreferSP(), llvm::ARMBaseRegisterInfo::getFrameRegister(), llvm::AVRRegisterInfo::getFrameRegister(), llvm::M68kRegisterInfo::getFrameRegister(), llvm::MipsRegisterInfo::getFrameRegister(), llvm::SystemZRegisterInfo::getFrameRegister(), llvm::XtensaRegisterInfo::getFrameRegister(), llvm::SIMachineFunctionInfo::getGITPtrLoReg(), getGlobalBaseRegClass(), llvm::ARMHazardRecognizerFPMLx::getHazardType(), llvm::AMDGPU::HSAMD::MetadataStreamerMsgPackV4::getHSAKernelProps(), llvm::R600InstrInfo::getIndirectIndexEnd(), GetInitialOffset(), llvm::AArch64RegisterBankInfo::getInstrAlternativeMappings(), llvm::X86RegisterBankInfo::getInstrAlternativeMappings(), llvm::AArch64RegisterBankInfo::getInstrMapping(), llvm::ARMRegisterBankInfo::getInstrMapping(), llvm::PPCRegisterBankInfo::getInstrMapping(), llvm::RISCVRegisterBankInfo::getInstrMapping(), llvm::X86RegisterBankInfo::getInstrMapping(), llvm::RegisterBankInfo::getInstrMappingImpl(), llvm::AArch64InstrInfo::getInstSizeInBytes(), llvm::MSP430InstrInfo::getInstSizeInBytes(), llvm::ARMBaseRegisterInfo::getLargestLegalSuperClass(), llvm::ThumbRegisterInfo::getLargestLegalSuperClass(), llvm::AVRRegisterInfo::getLargestLegalSuperClass(), llvm::PPCRegisterInfo::getLargestLegalSuperClass(), llvm::X86RegisterInfo::getLargestLegalSuperClass(), getLoadStoreOffsetSizeInBits(), llvm::WebAssemblyFrameLowering::getLocalForStackObject(), getMemcpyLoadsAndStores(), getMemmoveLoadsAndStores(), getMemsetStores(), llvm::MipsFunctionInfo::getMoveF64ViaSpillFI(), getMSAMapping(), llvm::X86RegisterInfo::getNumSupportedRegs(), llvm::WebAssemblyFrameLowering::getOpcAdd(), llvm::WebAssemblyFrameLowering::getOpcAnd(), llvm::WebAssemblyFrameLowering::getOpcConst(), llvm::WebAssemblyFrameLowering::getOpcGlobGet(), llvm::WebAssemblyFrameLowering::getOpcGlobSet(), llvm::WebAssemblyFrameLowering::getOpcSub(), llvm::SPIRVGlobalRegistry::getOrCreateConstFP(), llvm::SPIRVGlobalRegistry::getOrCreateConstInt(), getOrCreateFrameHelper(), llvm::SPIRVGlobalRegistry::getOrCreateUndef(), llvm::RISCVInstrInfo::getOutliningCandidateInfo(), llvm::RISCVInstrInfo::getOutliningTypeImpl(), llvm::X86GenRegisterBankInfo::getPartialMappingIdx(), llvm::HexagonEvaluator::getPhysRegBitWidth(), llvm::MipsRegisterInfo::getPointerRegClass(), llvm::SparcRegisterInfo::getPointerRegClass(), llvm::ThumbRegisterInfo::getPointerRegClass(), llvm::WebAssemblyRegisterInfo::getPointerRegClass(), llvm::X86RegisterInfo::getPointerRegClass(), llvm::MachineFrameInfo::getPristineRegs(), llvm::X86RegisterInfo::getPtrSizedFrameRegister(), llvm::X86RegisterInfo::getPtrSizedStackRegister(), llvm::SelectionDAG::getReducedAlign(), llvm::AArch64RegisterInfo::getRegAllocationHints(), llvm::PPCRegisterInfo::getRegAllocationHints(), llvm::RISCVRegisterInfo::getRegAllocationHints(), llvm::SystemZRegisterInfo::getRegAllocationHints(), llvm::X86RegisterInfo::getRegAllocationHints(), llvm::RISCVRegisterInfo::getRegisterCostTableIndex(), getRegistersForValue(), llvm::AArch64RegisterInfo::getRegPressureLimit(), llvm::ARMBaseRegisterInfo::getRegPressureLimit(), llvm::MipsRegisterInfo::getRegPressureLimit(), llvm::PPCRegisterInfo::getRegPressureLimit(), llvm::SystemZELFFrameLowering::getRegSpillOffset(), getRegTy(), llvm::AArch64RegisterInfo::getReservedRegs(), llvm::R600RegisterInfo::getReservedRegs(), llvm::ARMBaseRegisterInfo::getReservedRegs(), llvm::AVRRegisterInfo::getReservedRegs(), llvm::CSKYRegisterInfo::getReservedRegs(), llvm::HexagonRegisterInfo::getReservedRegs(), llvm::M68kRegisterInfo::getReservedRegs(), llvm::MipsRegisterInfo::getReservedRegs(), llvm::PPCRegisterInfo::getReservedRegs(), llvm::RISCVRegisterInfo::getReservedRegs(), llvm::SparcRegisterInfo::getReservedRegs(), llvm::SystemZRegisterInfo::getReservedRegs(), llvm::X86RegisterInfo::getReservedRegs(), llvm::XtensaRegisterInfo::getReservedRegs(), getScavSlotsNumForRVV(), getSchedRegions(), llvm::AMDGPULegalizerInfo::getSegmentAperture(), llvm::AArch64FrameLowering::getSEHFrameIndexOffset(), llvm::ARMBaseRegisterInfo::getSjLjDispatchPreservedMask(), llvm::TargetInstrInfo::getSPAdjust(), llvm::X86InstrInfo::getSPAdjust(), llvm::WebAssemblyFrameLowering::getSPReg(), getStackHazardSize(), llvm::TargetInstrInfo::getStackSlotRange(), llvm::AArch64RegisterInfo::getStrictlyReservedRegs(), llvm::SelectionDAG::getSubtarget(), llvm::AsmPrinter::getSubtargetInfo(), GetSymbolRef(), getTargetIndexName(), llvm::CombinerHelper::getTargetLowering(), llvm::MachineRegisterInfo::getTargetRegisterInfo(), llvm::gettBLXrOpcode(), llvm::AArch64RegisterInfo::getThisReturnPreservedMask(), llvm::ARMBaseRegisterInfo::getThisReturnPreservedMask(), llvm::ARMBaseRegisterInfo::getTLSCallPreservedMask(), getVCIXISDNodeWCHAIN(), getVGPRSpillLaneOrTempRegister(), llvm::CCState::HandleByVal(), llvm::X86FrameLowering::has128ByteRedZone(), llvm::AArch64RegisterInfo::hasBasePointer(), llvm::AArch64FrameLowering::hasFPImpl(), llvm::SIFrameLowering::hasFPImpl(), llvm::ARCFrameLowering::hasFPImpl(), llvm::ARMFrameLowering::hasFPImpl(), llvm::CSKYFrameLowering::hasFPImpl(), llvm::HexagonFrameLowering::hasFPImpl(), llvm::LoongArchFrameLowering::hasFPImpl(), llvm::RISCVFrameLowering::hasFPImpl(), llvm::VEFrameLowering::hasFPImpl(), hasRVVFrameObject(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), llvm::RegPressureTracker::init(), llvm::MachineTraceMetrics::init(), llvm::RegBankSelect::init(), llvm::LiveStacks::init(), llvm::LiveRegMatrix::init(), llvm::PreRARematStage::initGCNSchedStage(), llvm::MipsFunctionInfo::initGlobalBaseReg(), llvm::ConvergingVLIWScheduler::initialize(), llvm::GCNSchedStrategy::initialize(), llvm::R600SchedStrategy::initialize(), INITIALIZE_PASS(), llvm::SelectionDAGISel::initializeAnalysisResults(), llvm::MIRParserImpl::initializeFrameInfo(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::TailDuplicator::initMF(), llvm::GenericScheduler::initPolicy(), llvm::PostGenericScheduler::initPolicy(), llvm::SystemZELFFrameLowering::inlineStackProbe(), llvm::SystemZXPLINKFrameLowering::inlineStackProbe(), insertBitcasts(), insertCSRRestores(), insertCSRSaves(), insertDivByZeroTrap(), llvm::SIInstrInfo::insertIndirectBranch(), llvm::LoongArchInstrInfo::insertIndirectBranch(), llvm::RISCVInstrInfo::insertIndirectBranch(), llvm::insertMultibyteShift(), insertRememberRestorePair(), llvm::SIInstrInfo::insertScratchExecCopy(), InsertSEH(), insertSEH(), insertUndefLaneMask(), interpretValues(), llvm::AArch64RegisterInfo::isArgumentRegister(), llvm::X86RegisterInfo::isArgumentRegister(), llvm::RISCVRegisterInfo::isAsmClobberable(), llvm::PPCRegisterInfo::isCallerPreservedPhysReg(), llvm::isCycleInvariant(), llvm::AMDGPUCallLowering::isEligibleForTailCallOptimization(), isEligibleToFoldADDIForFasterLocalAccesses(), llvm::X86RegisterInfo::isFixedRegister(), llvm::ARMBaseRegisterInfo::isInlineAsmReadOnlyReg(), llvm::HexagonPacketizerList::isLegalToPacketizeTogether(), llvm::SwingSchedulerDAG::isLoopCarriedDep(), llvm::MachineLoop::isLoopInvariant(), isNonFoldablePartialRegisterLoad(), llvm::ARMBaseInstrInfo::isPredicable(), llvm::RISCVMachineFunctionInfo::isPushable(), isRegOtherThanSPAndFP(), llvm::TargetInstrInfo::isSchedulingBoundary(), llvm::LoongArchInstrInfo::isSchedulingBoundary(), llvm::PPCInstrInfo::isSignOrZeroExtended(), isTargetWindows(), isThreadPointerAcquisitionNode(), isXPLeafCandidate(), jumpTableHasOtherUses(), llvm::ARMFrameLowering::keepFramePointer(), legalizeScatterGatherIndexType(), llvm::GCNRegPressure::less(), llvm::SIMachineFunctionInfo::limitOccupancy(), llvm::MachineBasicBlock::liveout_begin(), loadM0FromVGPR(), loadMBUFScalarOperandsFromVGPR(), llvm::WebAssemblyMCInstLower::lower(), llvm::PPCRegisterInfo::lowerACCRestore(), llvm::PPCRegisterInfo::lowerACCSpilling(), llvm::AArch64CallLowering::lowerCall(), llvm::AMDGPUCallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::M68kCallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::RISCVCallLowering::lowerCall(), llvm::SPIRVCallLowering::lowerCall(), llvm::X86CallLowering::lowerCall(), llvm::HexagonTargetLowering::LowerCall(), llvm::RISCVTargetLowering::LowerCall(), llvm::PPCRegisterInfo::lowerCRBitRestore(), llvm::PPCRegisterInfo::lowerCRBitSpilling(), llvm::PPCRegisterInfo::lowerCRRestore(), llvm::PPCRegisterInfo::lowerCRSpilling(), llvm::PPCRegisterInfo::lowerDynamicAlloc(), llvm::PPCRegisterInfo::lowerDynamicAreaOffset(), llvm::AMDGPUCallLowering::lowerFormalArguments(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::RISCVCallLowering::lowerFormalArguments(), llvm::SPIRVCallLowering::lowerFormalArguments(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::AMDGPUCallLowering::lowerFormalArgumentsKernel(), llvm::InlineAsmLowering::lowerInlineAsm(), llvm::PPCRegisterInfo::lowerOctWordSpilling(), llvm::AMDGPUAsmPrinter::lowerOperand(), llvm::PPCRegisterInfo::lowerPrepareProbedAlloca(), llvm::PPCRegisterInfo::lowerQuadwordRestore(), llvm::PPCRegisterInfo::lowerQuadwordSpilling(), llvm::ARMCallLowering::lowerReturn(), llvm::X86CallLowering::lowerReturn(), llvm::AArch64CallLowering::lowerReturn(), llvm::RISCVCallLowering::lowerReturn(), llvm::SPIRVCallLowering::lowerReturn(), llvm::RISCVTargetLowering::LowerReturn(), lowerRISCVVMachineInstrToMCInst(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::RISCVRegisterInfo::lowerVRELOAD(), llvm::RISCVRegisterInfo::lowerVSPILL(), llvm::PPCRegisterInfo::lowerWACCRestore(), llvm::PPCRegisterInfo::lowerWACCSpilling(), llvm::machineFunctionIsIllegal(), llvm::CombinerHelper::matchNotCmp(), llvm::AArch64RegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::PPCRegisterInfo::materializeFrameBaseRegister(), llvm::RISCVRegisterInfo::materializeFrameBaseRegister(), llvm::MachineInstr::mayAlias(), needScavSlotForCFR(), llvm::RISCVRegisterInfo::needsFrameBaseReg(), llvm::AArch64FunctionInfo::needsShadowCallStackPrologueEpilogue(), llvm::SystemZELFFrameLowering::orderFrameObjects(), outliningCandidatesV8_3OpsConsensus(), llvm::GCNTargetMachine::parseMachineFunctionInfo(), llvm::AMDGPUCallLowering::passSpecialInputs(), performMemPairCombine(), llvm::PhiLoweringHelper::PhiLoweringHelper(), llvm::PPCDispatchGroupSBHazardRecognizer::PreEmitNoops(), llvm::SystemZInstrInfo::prepareCompareSwapOperands(), llvm::PPCRegisterInfo::prepareDynamicAlloca(), llvm::MIRPrinter::print(), llvm::MachineFrameInfo::print(), llvm::MIPrinter::print(), llvm::MachineInstr::print(), print(), llvm::MachineBasicBlock::print(), llvm::AMDGPUAsmPrinter::PrintAsmOperand(), llvm::HexagonAsmPrinter::PrintAsmOperand(), llvm::ARMAsmPrinter::PrintAsmOperand(), llvm::AVRAsmPrinter::PrintAsmOperand(), llvm::ARMAsmPrinter::printOperand(), llvm::GCNIterativeScheduler::printRegions(), llvm::MipsAsmPrinter::printSavedRegsBitmask(), llvm::GCNIterativeScheduler::printSchedRP(), llvm::MachineOperand::printTargetFlags(), llvm::AArch64InstrInfo::probedStackAlloc(), llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized(), llvm::ARCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::RISCVFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZELFFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SystemZXPLINKFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameFinalized(), llvm::XCoreFrameLowering::processFunctionBeforeFrameFinalized(), llvm::SIFrameLowering::processFunctionBeforeFrameIndicesReplaced(), processVCIXOperands(), produceCompactUnwindFrame(), llvm::PPCInstrInfo::promoteInstr32To64ForElimEXTSW(), promoteVCIXScalar(), llvm::SwiftErrorValueTracking::propagateVRegs(), llvm::TargetInstrInfo::reassociateOps(), llvm::MachineRegisterInfo::recomputeRegClass(), reduceDbgValsForwardScan(), replaceDominatedUses(), replaceFI(), replaceFrameIndex(), llvm::ARMFrameLowering::requiresAAPCSFrameRecord(), llvm::PPCRegisterInfo::requiresFrameIndexScavenging(), requiresGetVGCall(), requiresSaveVG(), llvm::PPCRegisterInfo::requiresVirtualBaseRegisters(), llvm::R600InstrInfo::reserveIndirectRegisters(), reservePrivateMemoryRegs(), llvm::AArch64FrameLowering::resetCFIToInitialState(), llvm::MipsTargetMachine::resetSubtarget(), llvm::AArch64RegisterInfo::resolveFrameIndex(), llvm::ARMBaseRegisterInfo::resolveFrameIndex(), llvm::ThumbRegisterInfo::resolveFrameIndex(), llvm::PPCRegisterInfo::resolveFrameIndex(), llvm::ARMFrameLowering::ResolveFrameIndexReference(), llvm::AArch64FrameLowering::resolveFrameOffsetReference(), llvm::ResourcePriorityQueue::ResourcePriorityQueue(), llvm::SystemZELFFrameLowering::restoreCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::restoreCalleeSavedRegisters(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::Thumb1FrameLowering::restoreCalleeSavedRegisters(), llvm::AVRFrameLowering::restoreCalleeSavedRegisters(), llvm::CSKYFrameLowering::restoreCalleeSavedRegisters(), llvm::MSP430FrameLowering::restoreCalleeSavedRegisters(), llvm::RISCVFrameLowering::restoreCalleeSavedRegisters(), llvm::XCoreFrameLowering::restoreCalleeSavedRegisters(), restoreCRs(), llvm::restoreStatusRegister(), llvm::ThumbRegisterInfo::rewriteFrameIndex(), runImpl(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::ARMAsmPrinter::runOnMachineFunction(), llvm::HexagonAsmPrinter::runOnMachineFunction(), llvm::SelectionDAGISel::runOnMachineFunction(), llvm::CFIFixup::runOnMachineFunction(), llvm::ExecutionDomainFix::runOnMachineFunction(), llvm::InstructionSelect::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::Legalizer::runOnMachineFunction(), llvm::ReachingDefAnalysis::runOnMachineFunction(), llvm::BreakFalseDeps::runOnMachineFunction(), llvm::AMDGPUAsmPrinter::runOnMachineFunction(), llvm::AMDGPUDAGToDAGISel::runOnMachineFunction(), llvm::ARMBlockPlacement::runOnMachineFunction(), llvm::CSKYAsmPrinter::runOnMachineFunction(), llvm::HexagonDAGToDAGISel::runOnMachineFunction(), llvm::HexagonMask::runOnMachineFunction(), llvm::LoongArchDAGToDAGISel::runOnMachineFunction(), llvm::MipsAsmPrinter::runOnMachineFunction(), llvm::MipsDAGToDAGISel::runOnMachineFunction(), llvm::NVPTXDAGToDAGISel::runOnMachineFunction(), llvm::RISCVDAGToDAGISel::runOnMachineFunction(), llvm::ErrataWorkaround::runOnMachineFunction(), llvm::InsertNOPLoad::runOnMachineFunction(), llvm::DetectRoundChange::runOnMachineFunction(), llvm::FixAllFDIVSQRT::runOnMachineFunction(), llvm::WebAssemblyAsmPrinter::runOnMachineFunction(), llvm::X86AsmPrinter::runOnMachineFunction(), llvm::LiveDebugVariables::LDVImpl::runOnMachineFunction(), llvm::Mips16RegisterInfo::saveScavengerRegister(), llvm::ScheduleDAGInstrs::ScheduleDAGInstrs(), llvm::GCNIterativeScheduler::scheduleILP(), llvm::GCNIterativeScheduler::scheduleLegacyMaxOccupancy(), llvm::GCNIterativeScheduler::scheduleRegion(), llvm::HexagonConvergingVLIWScheduler::SchedulingCost(), selectI64Imm(), llvm::InstructionSelect::selectMachineFunction(), llvm::FunctionLoweringInfo::set(), setAliasRegs(), setCallTargetReg(), llvm::SwiftErrorValueTracking::setFunction(), llvm::MachineIRBuilder::setMF(), llvm::X86MachineFunctionInfo::setRestoreBasePointer(), llvm::AMDGPUInstructionSelector::setupMF(), llvm::MIRParserImpl::setupRegisterInfo(), llvm::SIMachineFunctionInfo::shiftWwmVGPRsToLowestRange(), llvm::HexagonRegisterInfo::shouldCoalesce(), llvm::TargetRegisterInfo::shouldRegionSplitForVirtReg(), shouldUseFrameHelper(), llvm::MachineBasicBlock::SkipPHIsAndLabels(), llvm::MachineBasicBlock::SkipPHIsLabelsAndDebug(), llvm::SystemZELFFrameLowering::spillCalleeSavedRegisters(), llvm::SystemZXPLINKFrameLowering::spillCalleeSavedRegisters(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::Thumb1FrameLowering::spillCalleeSavedRegisters(), llvm::AVRFrameLowering::spillCalleeSavedRegisters(), llvm::CSKYFrameLowering::spillCalleeSavedRegisters(), llvm::LoongArchFrameLowering::spillCalleeSavedRegisters(), llvm::MSP430FrameLowering::spillCalleeSavedRegisters(), llvm::RISCVFrameLowering::spillCalleeSavedRegisters(), llvm::XCoreFrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillFPBP(), llvm::MachineBasicBlock::splitAt(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitMBB(), TransferTracker::TransferTracker(), llvm::AArch64GISelUtils::tryEmitBZero(), llvm::GCNIterativeScheduler::tryMaximizeOccupancy(), tryMemPairCombine(), llvm::X86InstrInfo::unfoldMemoryOperand(), unstackifyVRegsUsedInSplitBB(), llvm::AArch64RegisterInfo::UpdateCustomCalleeSavedRegs(), llvm::AArch64RegisterInfo::UpdateCustomCallPreservedMask(), updateLiveIn(), UpdateOperandRegClass(), llvm::DwarfCompileUnit::updateSubprogramScopeDIE(), llvm::MachineBasicBlock::updateTerminator(), llvm::AArch64RegisterInfo::useFPForScavengingIndex(), llvm::ThumbRegisterInfo::useFPForScavengingIndex(), llvm::HexagonRegisterInfo::useFPForScavengingIndex(), llvm::SystemZELFFrameLowering::usePackedStack(), llvm::RISCVMachineFunctionInfo::useSaveRestoreLibCalls(), llvm::RegisterBankInfo::InstructionMapping::verify(), llvm::VLIWPacketizerList::VLIWPacketizerList(), llvm::VirtRegAuxInfo::weightCalcHelper(), windowsRequiresStackProbe(), and llvm::WebAssemblyFrameLowering::writeSPToGlobal().

◆ getSubtarget() [2/2]

template<typename STC >

const STC & llvm::MachineFunction::getSubtarget ( ) const inline

getSubtarget - This method returns a pointer to the specified type of TargetSubtargetInfo.

In debug builds, it verifies that the object being returned is of the correct type.

Definition at line 738 of file MachineFunction.h.

◆ getTarget()

getTarget - Return the target machine this machine code is compiled with

Definition at line 729 of file MachineFunction.h.

Referenced by llvm::ARMFrameLowering::adjustForSegmentedStacks(), llvm::X86FrameLowering::adjustForSegmentedStacks(), AlignBlocks(), allowApproxFunc(), llvm::NVPTXTargetLowering::allowFMA(), llvm::NVPTXTargetLowering::allowUnsafeFPMath(), llvm::ARMFrameLowering::assignCalleeSavedSpillSlots(), assignSections(), llvm::X86InstrInfo::canMakeTailCallConditional(), llvm::AArch64RegisterInfo::cannotEliminateFrame(), llvm::ARMBaseRegisterInfo::cannotEliminateFrame(), llvm::MachineBasicBlock::canSplitCriticalEdge(), llvm::X86FrameLowering::canUseLEAForSPInEpilogue(), llvm::MipsFunctionInfo::createEhDataRegsFI(), llvm::MipsTargetLowering::createFastISel(), llvm::MCResourceInfo::createTotalNumSGPRs(), llvm::MCResourceInfo::createTotalNumVGPRs(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::TargetFrameLowering::determineCalleeSaves(), llvm::PPCFrameLowering::determineCalleeSaves(), llvm::TargetInstrInfo::duplicate(), llvm::PPCFrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::AVRRegisterInfo::eliminateFrameIndex(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::PPCFrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitEpilogue(), llvm::AsmPrinter::emitFunctionBody(), LiveDebugValues::MLocTracker::emitLoc(), llvm::AsmPrinter::emitPCSections(), llvm::AArch64FrameLowering::emitPrologue(), llvm::ARMFrameLowering::emitPrologue(), llvm::NVPTXFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::AsmPrinter::emitStackSizeSection(), llvm::AsmPrinter::emitStackUsage(), llvm::TargetFrameLowering::enableCFIFixup(), ExpandMOVImmSExti8(), llvm::AArch64InstrInfo::expandPostRAPseudo(), llvm::HexagonInstrInfo::expandPostRAPseudo(), llvm::X86InstrInfo::foldMemoryOperandImpl(), llvm::MCResourceInfo::gatherResourceInfo(), llvm::AMDGPUSubtarget::get(), llvm::GISelKnownBitsAnalysis::get(), llvm::HexagonFrameLowering::getFrameIndexReference(), llvm::X86FrameLowering::getFrameIndexReference(), llvm::NVPTXRegisterInfo::getFrameLocalRegister(), llvm::MipsRegisterInfo::getFrameRegister(), llvm::NVPTXRegisterInfo::getFrameRegister(), getGlobalBaseRegClass(), llvm::AArch64InstrInfo::getInstSizeInBytes(), llvm::SIInstrInfo::getInstSizeInBytes(), llvm::ARCInstrInfo::getInstSizeInBytes(), llvm::ARMBaseInstrInfo::getInstSizeInBytes(), llvm::AVRInstrInfo::getInstSizeInBytes(), llvm::CSKYInstrInfo::getInstSizeInBytes(), llvm::LoongArchInstrInfo::getInstSizeInBytes(), llvm::MipsInstrInfo::getInstSizeInBytes(), llvm::MSP430InstrInfo::getInstSizeInBytes(), llvm::PPCInstrInfo::getInstSizeInBytes(), llvm::RISCVInstrInfo::getInstSizeInBytes(), llvm::SparcInstrInfo::getInstSizeInBytes(), llvm::SystemZInstrInfo::getInstSizeInBytes(), llvm::XtensaInstrInfo::getInstSizeInBytes(), llvm::ARMSubtarget::getPushPopSplitVariation(), llvm::HexagonInstrInfo::getSize(), llvm::AArch64FrameLowering::hasFPImpl(), llvm::SIFrameLowering::hasFPImpl(), llvm::ARCFrameLowering::hasFPImpl(), llvm::ARMFrameLowering::hasFPImpl(), llvm::CSKYFrameLowering::hasFPImpl(), llvm::HexagonFrameLowering::hasFPImpl(), llvm::LoongArchFrameLowering::hasFPImpl(), llvm::M68kFrameLowering::hasFPImpl(), llvm::MipsFrameLowering::hasFPImpl(), llvm::MSP430FrameLowering::hasFPImpl(), llvm::RISCVFrameLowering::hasFPImpl(), llvm::SparcFrameLowering::hasFPImpl(), llvm::SystemZELFFrameLowering::hasFPImpl(), llvm::VEFrameLowering::hasFPImpl(), llvm::X86FrameLowering::hasFPImpl(), llvm::XCoreFrameLowering::hasFPImpl(), llvm::XtensaFrameLowering::hasFPImpl(), llvm::MipsFunctionInfo::initGlobalBaseReg(), llvm::MIRParserImpl::initializeCallSiteInfo(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::AArch64InstrInfo::isAssociativeAndCommutative(), isCombineInstrCandidateFP(), llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), llvm::AMDGPUCallLowering::isEligibleForTailCallOptimization(), llvm::X86::isExtendedSwiftAsyncFrameSupported(), llvm::ARMFrameLowering::isFPReserved(), llvm::AArch64InstrInfo::isFunctionSafeToOutlineFrom(), llvm::isKnownNeverNaN(), isOptNone(), llvm::RISCVMachineFunctionInfo::isPushable(), llvm::AMDGPULegalizerInfo::legalizeAddrSpaceCast(), llvm::AMDGPULegalizerInfo::legalizeFastUnsafeFDIV(), llvm::AMDGPULegalizerInfo::legalizeFastUnsafeFDIV64(), llvm::AMDGPULegalizerInfo::legalizeFExp(), llvm::AMDGPULegalizerInfo::legalizeFlogCommon(), llvm::SITargetLowering::LowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::CallLowering::lowerCall(), llvm::AArch64CallLowering::lowerFormalArguments(), llvm::MipsCallLowering::lowerFormalArguments(), llvm::LegalizerHelper::lowerFPTRUNC_F64_TO_F16(), llvm::AMDGPUCallLowering::lowerTailCall(), llvm::AArch64FunctionInfo::needsDwarfUnwindInfo(), llvm::PPCFrameLowering::needsFP(), needsFrameMoves(), llvm::WebAssemblyFrameLowering::needsPrologForEH(), needsPrologueENDBR(), needsWinCFI(), llvm::AMDGPUMIRFormatter::parseCustomPseudoSourceValue(), llvm::MIRPrinter::print(), llvm::X86FrameLowering::processFunctionBeforeFrameFinalized(), llvm::PPCFrameLowering::processFunctionBeforeFrameFinalized(), promoteToConstantPool(), llvm::ARMAsmPrinter::runOnMachineFunction(), llvm::InstructionSelect::runOnMachineFunction(), llvm::IRTranslator::runOnMachineFunction(), llvm::AsmPrinter::SetupMachineFunction(), shouldLowerMemFuncForSize(), llvm::TailDuplicator::shouldTailDuplicate(), shouldUseDebugInstrRef(), and llvm::DwarfCompileUnit::updateSubprogramScopeDIE().

◆ getTypeIDFor() ◆ getTypeInfos() ◆ getVariableDbgInfo() [1/2] ◆ getVariableDbgInfo() [2/2] ◆ getWasmEHFuncInfo() [1/2] ◆ getWasmEHFuncInfo() [2/2] ◆ getWasmLandingPadIndex() ◆ getWinEHFuncInfo() [1/2] ◆ getWinEHFuncInfo() [2/2] ◆ handleChangeDesc() ◆ hasAnyCallSiteLabel() bool llvm::MachineFunction::hasAnyCallSiteLabel ( ) const inline ◆ hasAnyCallSiteLandingPad() bool llvm::MachineFunction::hasAnyCallSiteLandingPad ( ) const inline ◆ hasAnyWasmLandingPadIndex() bool llvm::MachineFunction::hasAnyWasmLandingPadIndex ( ) const inline ◆ hasBBSections() bool llvm::MachineFunction::hasBBSections ( ) const inline ◆ hasCallSiteBeginLabel() bool llvm::MachineFunction::hasCallSiteBeginLabel ( MCSymbolBeginLabel ) const inline ◆ hasCallSiteLandingPad() bool llvm::MachineFunction::hasCallSiteLandingPad ( MCSymbolSym ) inline ◆ hasEHCatchret() bool llvm::MachineFunction::hasEHCatchret ( ) const inline ◆ hasEHFunclets() bool llvm::MachineFunction::hasEHFunclets ( ) const inline

Definition at line 1237 of file MachineFunction.h.

Referenced by llvm::X86FrameLowering::assignCalleeSavedSpillSlots(), llvm::WinException::beginFunction(), llvm::AArch64FrameLowering::emitEpilogue(), llvm::X86FrameLowering::emitPrologue(), llvm::WinException::endFunction(), getFixedObjectSize(), llvm::AArch64RegisterInfo::getLocalAddressRegister(), llvm::AArch64RegisterInfo::hasBasePointer(), llvm::AArch64FrameLowering::hasFPImpl(), llvm::X86FrameLowering::hasFPImpl(), needFuncLabels(), llvm::MIRPrinter::print(), llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized(), llvm::X86FrameLowering::processFunctionBeforeFrameFinalized(), llvm::X86FrameLowering::processFunctionBeforeFrameIndicesReplaced(), and llvm::AArch64FrameLowering::resolveFrameOffsetReference().

◆ hasEHScopes() bool llvm::MachineFunction::hasEHScopes ( ) const inline ◆ hasFakeUses() bool llvm::MachineFunction::hasFakeUses ( ) const inline ◆ hasInlineAsm() bool llvm::MachineFunction::hasInlineAsm ( ) const inline ◆ hasWasmLandingPadIndex() ◆ hasWinCFI() bool llvm::MachineFunction::hasWinCFI ( ) const inline ◆ initTargetMachineFunctionInfo() ◆ insert()

Definition at line 966 of file MachineFunction.h.

References llvm::iplist_impl< IntrusiveListT, TraitsT >::insert(), MBB, and MBBI.

Referenced by addUnreachableAfterTryTables(), llvm::ARMFrameLowering::adjustForSegmentedStacks(), createDedicatedExit(), createFrameHelperMachineFunction(), llvm::PeelingModuloScheduleExpander::CreateLCSSAExitingBlock(), llvm::SystemZ::emitBlockAfter(), llvm::RISCVTargetLowering::emitDynamicProbedAlloc(), llvm::PPCTargetLowering::emitEHSjLjSetJmp(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::AArch64TargetLowering::EmitF128CSEL(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::AVRTargetLowering::EmitInstrWithCustomInserter(), llvm::PPCTargetLowering::emitProbedAlloca(), emitReadCounterWidePseudo(), emitStackProbeInline(), emitXBegin(), llvm::AMDGPURegisterBankInfo::executeInWaterfallLoop(), llvm::VEInstrInfo::expandExtendStackPseudo(), llvm::SelectionDAGBuilder::FindMergedConditions(), INITIALIZE_PASS(), llvm::PPCFrameLowering::inlineStackProbe(), insertDivByZeroTrap(), loadM0FromVGPR(), loadMBUFScalarOperandsFromVGPR(), llvm::PeelSingleBlockLoop(), llvm::AArch64InstrInfo::probedStackAlloc(), llvm::ARMBlockPlacement::revertWhileToDoLoop(), llvm::MachineBasicBlock::splitAt(), splitBlockForLoop(), llvm::MachineBasicBlock::SplitCriticalEdge(), splitEdge(), splitEndLoopBB(), splitMBB(), and tryToSplitRestore().

◆ isOutlined() bool llvm::MachineFunction::isOutlined ( ) const inline ◆ makeDebugValueSubstitution() ◆ moveAdditionalCallInfo()

Move the call site info from Old to \New call site info.

This function is used when we are replacing one call instruction with another one to the same callee.

Definition at line 980 of file MachineFunction.cpp.

References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::erase(), eraseAdditionalCallInfo(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), getCallInstr(), and llvm::MachineInstr::shouldUpdateAdditionalCallInfo().

Referenced by llvm::X86TargetLowering::EmitKCFICheck().

◆ needsFrameMoves() bool MachineFunction::needsFrameMoves ( ) const

True if this function needs frame moves for debug or exceptions.

Definition at line 691 of file MachineFunction.cpp.

References llvm::Module::debug_compile_units(), llvm::TargetOptions::ForceDwarfFrameSection, llvm::GlobalValue::getParent(), getTarget(), llvm::Function::needsUnwindTableEntry(), and llvm::TargetMachine::Options.

Referenced by llvm::M68kFrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::eliminateCallFramePseudoInstr(), llvm::X86FrameLowering::emitEpilogue(), llvm::M68kFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::TargetFrameLowering::enableCFIFixup(), ExpandMOVImmSExti8(), llvm::PPCFrameLowering::inlineStackProbe(), llvm::AArch64FunctionInfo::needsDwarfUnwindInfo(), llvm::ARCRegisterInfo::needsFrameMoves(), and llvm::XCoreRegisterInfo::needsFrameMoves().

◆ operator=() ◆ print()

print - Print out the MachineFunction in a format suitable for debugging to the specified stream.

Definition at line 649 of file MachineFunction.cpp.

References getFunction(), getName(), getParent(), getProperties(), llvm::TargetSubtargetInfo::getRegisterInfo(), getSubtarget(), I, llvm::ModuleSlotTracker::incorporateFunction(), llvm::MachineRegisterInfo::livein_begin(), llvm::MachineRegisterInfo::livein_empty(), llvm::MachineRegisterInfo::livein_end(), OS, llvm::MachineFrameInfo::print(), llvm::MachineFunctionProperties::print(), llvm::MachineJumpTableInfo::print(), llvm::printReg(), and TRI.

Referenced by dump(), and llvm::SelectionDAGISel::runOnMachineFunction().

◆ push_back()

Definition at line 964 of file MachineFunction.h.

References MBB, and llvm::iplist_impl< IntrusiveListT, TraitsT >::push_back().

Referenced by llvm::AsmPrinter::doFinalization(), llvm::SystemZTargetLowering::emitEHSjLjSetJmp(), llvm::VETargetLowering::emitEHSjLjSetJmp(), llvm::SITargetLowering::EmitInstrWithCustomInserter(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::VETargetLowering::emitSjLjDispatchBlock(), llvm::SystemZXPLINKFrameLowering::inlineStackProbe(), llvm::SIInstrInfo::insertSimulatedTrap(), llvm::AMDGPULegalizerInfo::legalizeTrapEndpgm(), llvm::IRTranslator::runOnMachineFunction(), and llvm::FunctionLoweringInfo::set().

◆ push_front() ◆ rbegin() [1/2] ◆ rbegin() [2/2] ◆ remove() [1/2] void llvm::MachineFunction::remove ( iterator  MBBI ) inline ◆ remove() [2/2] ◆ removeFromMBBNumbering() void llvm::MachineFunction::removeFromMBBNumbering ( unsigned  N ) inline ◆ rend() [1/2] ◆ rend() [2/2] ◆ RenumberBlocks()

RenumberBlocks - This discards all of the MachineBasicBlock numbers and recomputes them.

This discards all of the MachineBasicBlock numbers and recomputes them.

This guarantees that the MBB numbers are sequential, dense, and match the ordering of the blocks within the function. If a specific MachineBasicBlock is specified, only that block and those after it are renumbered.

Definition at line 343 of file MachineFunction.cpp.

References assert(), begin(), empty(), end(), llvm::ilist_node_impl< OptionsT >::getIterator(), llvm::MachineBasicBlock::getNumber(), MBB, MBBI, and llvm::MachineBasicBlock::setNumber().

Referenced by llvm::ARMBlockPlacement::revertWhileToDoLoop(), llvm::ARMBlockPlacement::runOnMachineFunction(), and sortBlocks().

◆ reset() void llvm::MachineFunction::reset ( ) inline ◆ resetDelegate() void llvm::MachineFunction::resetDelegate ( Delegatedelegate ) inline ◆ salvageCopySSA()

Find the underlying defining instruction / operand for a COPY instruction while in SSA form.

Copies do not actually define values – they move them between registers. Labelling a COPY-like instruction with an instruction number is to be avoided as it makes value numbers non-unique later in compilation. This method follows the definition chain for any sequence of COPY-like instructions to find whatever non-COPY-like instruction defines the copied value; or for parameters, creates a DBG_PHI on entry. May insert instructions into the entry block! MI The copy-like instruction to salvage. DbgPHICache A container to cache already-solved COPYs.

Returns
An instruction/operand pair identifying the defining value.

Definition at line 1049 of file MachineFunction.cpp.

References assert(), MI, and TII.

Referenced by finalizeDebugInstrRefs().

◆ salvageCopySSAImpl() auto MachineFunction::salvageCopySSAImpl ( MachineInstrMI )

Definition at line 1074 of file MachineFunction.cpp.

References llvm::MachineInstr::all_defs(), assert(), llvm::BuildMI(), llvm::MachineInstr::getDebugInstrNum(), llvm::MachineBasicBlock::getFirstNonPHI(), llvm::ilist_node_impl< OptionsT >::getIterator(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getReg(), llvm::MachineInstr::isCopyLike(), llvm_unreachable, llvm::make_range(), MI, MRI, P, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::reverse(), SubReg, TII, and TRI.

◆ setAlignment() void llvm::MachineFunction::setAlignment ( Align  A ) inline ◆ setBBSectionsType() ◆ setCallsEHReturn() void llvm::MachineFunction::setCallsEHReturn ( bool  b ) inline ◆ setCallSiteBeginLabel() void llvm::MachineFunction::setCallSiteBeginLabel ( MCSymbolBeginLabel, unsigned  Site  ) inline ◆ setCallSiteLandingPad() ◆ setCallsUnwindInit() void llvm::MachineFunction::setCallsUnwindInit ( bool  b ) inline ◆ setDebugInstrNumberingCount() void MachineFunction::setDebugInstrNumberingCount ( unsigned  Num ) ◆ setDelegate() void llvm::MachineFunction::setDelegate ( Delegatedelegate ) inline ◆ setExposesReturnsTwice() void llvm::MachineFunction::setExposesReturnsTwice ( bool  B ) inline ◆ setHasEHCatchret() void llvm::MachineFunction::setHasEHCatchret ( bool  V ) inline ◆ setHasEHFunclets() void llvm::MachineFunction::setHasEHFunclets ( bool  V ) inline ◆ setHasEHScopes() void llvm::MachineFunction::setHasEHScopes ( bool  V ) inline ◆ setHasFakeUses() void llvm::MachineFunction::setHasFakeUses ( bool  V ) inline ◆ setHasInlineAsm() void llvm::MachineFunction::setHasInlineAsm ( bool  B ) inline ◆ setHasWinCFI() void llvm::MachineFunction::setHasWinCFI ( bool  v ) inline ◆ setIsOutlined() void llvm::MachineFunction::setIsOutlined ( bool  V ) inline ◆ setObserver() ◆ setSection() void llvm::MachineFunction::setSection ( MCSectionS ) inline ◆ setUseDebugInstrRef() void MachineFunction::setUseDebugInstrRef ( bool  UseInstrRef ) ◆ setVariableDbgInfo() [1/2] ◆ setVariableDbgInfo() [2/2] ◆ setWasmLandingPadIndex() ◆ shouldSplitStack() bool MachineFunction::shouldSplitStack ( ) const ◆ shouldUseDebugInstrRef() bool MachineFunction::shouldUseDebugInstrRef ( ) const ◆ size() unsigned llvm::MachineFunction::size ( ) const inline ◆ sort()

template<typename Comp >

void llvm::MachineFunction::sort ( Comp  comp ) inline ◆ splice() [1/3] ◆ splice() [2/3] ◆ splice() [3/3] ◆ substituteDebugValuesForInst()

Create substitutions for any tracked values in Old, to point at New.

Needed when we re-create an instruction during optimization, which has the same signature (i.e., def operands in the same place) but a modified instruction type, flags, or otherwise. An example: X86 moves are sometimes transformed into equivalent LEAs. If the two instructions are not the same opcode, limit which operands to examine for substitutions to the first N operands by setting MaxOperand.

Definition at line 1020 of file MachineFunction.cpp.

References assert(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOperand(), I, makeDebugValueSubstitution(), and llvm::MachineInstr::peekDebugInstrNum().

◆ tryGetCalledGlobal() ◆ useDebugInstrRef() bool MachineFunction::useDebugInstrRef ( ) const ◆ verify() [1/2]

Run the current MachineFunction through the machine code verifier, useful for debugger use.

Returns
true if no problems were found.

Definition at line 434 of file MachineVerifier.cpp.

References OS.

◆ verify() [2/2] ◆ viewCFG() void MachineFunction::viewCFG ( ) const

viewCFG - This function is meant for use from the debugger.

You can just say 'call F->viewCFG()' and a ghostview window should pop up from the program, displaying the CFG of the current function with the code for each basic block inside. This depends on there being a 'dot' and 'gv' program in your path.

Definition at line 740 of file MachineFunction.cpp.

References llvm::errs(), getName(), and llvm::ViewGraph().

◆ viewCFGOnly() void MachineFunction::viewCFGOnly ( ) const

viewCFGOnly - This function is meant for use from the debugger.

It works just like viewCFG, but it does not include the contents of basic blocks into the nodes, just the label. If you are only interested in the CFG this can make the graph smaller.

Definition at line 750 of file MachineFunction.cpp.

References llvm::errs(), getName(), and llvm::ViewGraph().

◆ ilist_traits< MachineInstr > ◆ DebugInstrNumberingCount unsigned llvm::MachineFunction::DebugInstrNumberingCount = 0

A count of how many instructions in the function have had numbers assigned to them.

Used for debug value tracking, to determine the next instruction number.

Definition at line 538 of file MachineFunction.h.

Referenced by setDebugInstrNumberingCount().

◆ DebugOperandMemNumber ◆ DebugPHIPositions ◆ DebugValueSubstitutions ◆ UseDebugInstrRef bool llvm::MachineFunction::UseDebugInstrRef = false ◆ VariableDbgInfos

The documentation for this class was generated from the following files:


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4