struct Candidate
Declaration
struct Candidate { /* full declaration omitted */ };
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:37
Member Variables
- public unsigned int FunctionIdx = 0
- The index of this \p Candidate's \p OutlinedFunction in the list of\p OutlinedFunctions.
- public unsigned int CallConstructionID = 0
- Identifier denoting the instructions to emit to call an outlined function from this point. Defined by the target.
- public llvm::LiveRegUnits LRU
- public llvm::LiveRegUnits UsedInSequence
- public unsigned int Flags = 0
- Target-specific flags for this Candidate's MBB.
- public bool LRUWasSet = false
- True if initLRU has been called on this Candidate.
- public unsigned int Benefit = 0
- This is a fixed value which is not updated during the candidate pruning process. It is only used for deciding which candidate to keep if two candidates overlap. The true benefit is stored in the OutlinedFunction for some given candidate.
Method Overview
- public Candidate(unsigned int StartIdx, unsigned int Len, int & FirstInst, int & LastInst, llvm::MachineBasicBlock * MBB, unsigned int FunctionIdx, unsigned int Flags)
- public Candidate()
- public int & back()
- public int & front()
- public unsigned int getCallOverhead() const
- public unsigned int getEndIdx() const
- public unsigned int getLength() const
- public llvm::MachineBasicBlock * getMBB() const
- public llvm::MachineFunction * getMF() const
- public unsigned int getStartIdx() const
- public void initLRU(const llvm::TargetRegisterInfo & TRI)
- public void setCallInfo(unsigned int CID, unsigned int CO)
Methods
¶Candidate(unsigned int StartIdx,
unsigned int Len,
int& FirstInst,
int& LastInst,
llvm::MachineBasicBlock* MBB,
unsigned int FunctionIdx,
unsigned int Flags)
Candidate(unsigned int StartIdx,
unsigned int Len,
int& FirstInst,
int& LastInst,
llvm::MachineBasicBlock* MBB,
unsigned int FunctionIdx,
unsigned int Flags)
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:120
Parameters
- unsigned int StartIdx
- unsigned int Len
- int& FirstInst
- int& LastInst
- llvm::MachineBasicBlock* MBB
- unsigned int FunctionIdx
- unsigned int Flags
¶Candidate()
Candidate()
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:126
¶int& back()
int& back()
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:107
¶int& front()
int& front()
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:106
¶unsigned int getCallOverhead() const
unsigned int getCallOverhead() const
Description
Returns the call overhead of this candidate if it is in the list.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:104
¶unsigned int getEndIdx() const
unsigned int getEndIdx() const
Description
Return the end index of this candidate.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:94
¶unsigned int getLength() const
unsigned int getLength() const
Description
Return the number of instructions in this Candidate.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:88
¶llvm::MachineBasicBlock* getMBB() const
llvm::MachineBasicBlock* getMBB() const
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:109
¶llvm::MachineFunction* getMF() const
llvm::MachineFunction* getMF() const
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:108
¶unsigned int getStartIdx() const
unsigned int getStartIdx() const
Description
Return the start index of this candidate.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:91
¶void initLRU(const llvm::TargetRegisterInfo& TRI)
void initLRU(const llvm::TargetRegisterInfo& TRI)
Description
Compute the registers that are live across this Candidate. Used by targets that need this information for cost model calculation. If a target does not need this information, then this should not be called.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:138
Parameters
- const llvm::TargetRegisterInfo& TRI
¶void setCallInfo(unsigned int CID,
unsigned int CO)
void setCallInfo(unsigned int CID,
unsigned int CO)
Description
Set the CallConstructionID and CallOverhead of this candidate to CID and CO respectively.
Declared at: llvm/include/llvm/CodeGen/MachineOutliner.h:98
Parameters
- unsigned int CID
- unsigned int CO