LLVM API Documentation
#include <MachineModuleInfo.h>
Definition at line 100 of file MachineModuleInfo.h.
| MachineModuleInfo::MachineModuleInfo | ( | ) |
Definition at line 37 of file MachineModuleInfo.cpp.
| MachineModuleInfo::~MachineModuleInfo | ( | ) |
Definition at line 51 of file MachineModuleInfo.cpp.
| bool MachineModuleInfo::doInitialization | ( | ) |
doInitialization - Initialize the state for a new module.
Definition at line 57 of file MachineModuleInfo.cpp.
| bool MachineModuleInfo::doFinalization | ( | ) |
doFinalization - Tear down the state after completion of a module.
Definition at line 63 of file MachineModuleInfo.cpp.
| void MachineModuleInfo::BeginFunction | ( | MachineFunction * | MF | ) |
BeginFunction - Begin gathering function meta information.
Definition at line 69 of file MachineModuleInfo.cpp.
| void MachineModuleInfo::EndFunction | ( | ) |
EndFunction - Discard function meta information.
Definition at line 75 of file MachineModuleInfo.cpp.
| void MachineModuleInfo::AnalyzeModule | ( | Module & | M | ) |
AnalyzeModule - Scan the module for global debug information.
Definition at line 90 of file MachineModuleInfo.cpp.
References BitCast, llvm::dyn_cast(), F, llvm::Module::getGlobalVariable(), llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::Constant::getOperand(), GV, and llvm::GlobalVariable::hasInitializer().
Referenced by llvm::AsmPrinter::doInitialization().
| bool llvm::MachineModuleInfo::hasDebugInfo | ( | ) | const [inline] |
hasDebugInfo - Returns true if valid debug info is present.
Definition at line 174 of file MachineModuleInfo.h.
Referenced by llvm::SPURegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::SelectionDAG::isVerifiedDebugInfoDesc(), and llvm::XCoreRegisterInfo::needsFrameMoves().
| void llvm::MachineModuleInfo::setDebugInfoAvailability | ( | bool | avail | ) | [inline] |
Definition at line 175 of file MachineModuleInfo.h.
| bool llvm::MachineModuleInfo::callsEHReturn | ( | ) | const [inline] |
Definition at line 177 of file MachineModuleInfo.h.
Referenced by llvm::X86RegisterInfo::getCalleeSavedRegClasses(), and llvm::X86RegisterInfo::getCalleeSavedRegs().
| void llvm::MachineModuleInfo::setCallsEHReturn | ( | bool | b | ) | [inline] |
Definition at line 178 of file MachineModuleInfo.h.
| bool llvm::MachineModuleInfo::callsUnwindInit | ( | ) | const [inline] |
| void llvm::MachineModuleInfo::setCallsUnwindInit | ( | bool | b | ) | [inline] |
Definition at line 181 of file MachineModuleInfo.h.
| unsigned llvm::MachineModuleInfo::NextLabelID | ( | ) | [inline] |
NextLabelID - Return the next unique label id.
Definition at line 185 of file MachineModuleInfo.h.
References ID.
Referenced by addLandingPad(), llvm::XCoreRegisterInfo::emitPrologue(), llvm::SPURegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), and llvm::XCoreInstrInfo::spillCalleeSavedRegisters().
| unsigned llvm::MachineModuleInfo::RecordSourceLine | ( | unsigned | Line, | |
| unsigned | Column, | |||
| unsigned | Source | |||
| ) |
RecordSourceLine - Records location information and associates it with a label. Returns a unique label ID used to generate a label and provide correspondence to the source line list.
| void llvm::MachineModuleInfo::InvalidateLabel | ( | unsigned | LabelID | ) | [inline] |
InvalidateLabel - Inhibit use of the specified label # from MachineModuleInfo, for example because the code was deleted.
Definition at line 198 of file MachineModuleInfo.h.
References RemapLabel().
RemapLabel - Indicate that a label has been merged into another.
Definition at line 205 of file MachineModuleInfo.h.
Referenced by InvalidateLabel(), and llvm::DebugLabelFolder::runOnMachineFunction().
MappedLabel - Find out the label's final ID. Zero indicates deletion. ID != Mapped ID indicates that the label was folded into another label.
Definition at line 215 of file MachineModuleInfo.h.
Referenced by TidyLandingPads().
| const std::vector<SourceLineInfo>& llvm::MachineModuleInfo::getSourceLines | ( | ) | const [inline] |
getSourceLines - Return a vector of source lines.
Definition at line 222 of file MachineModuleInfo.h.
| std::vector<MachineMove>& llvm::MachineModuleInfo::getFrameMoves | ( | ) | [inline] |
getFrameMoves - Returns a reference to a list of moves done in the current function's prologue. Used to construct frame maps for debug and exception handling comsumers.
Definition at line 229 of file MachineModuleInfo.h.
Referenced by llvm::X86RegisterInfo::emitFrameMoves(), llvm::XCoreRegisterInfo::emitPrologue(), llvm::SPURegisterInfo::emitPrologue(), and llvm::PPCRegisterInfo::emitPrologue().
| LandingPadInfo & MachineModuleInfo::getOrCreateLandingPadInfo | ( | MachineBasicBlock * | LandingPad | ) |
getOrCreateLandingPadInfo - Find or create an LandingPadInfo for the specified MachineBasicBlock.
getOrCreateLandingPadInfo - Find or create an LandingPadInfo for the specified MachineBasicBlock.
Definition at line 112 of file MachineModuleInfo.cpp.
References llvm::LandingPadInfo::LandingPadBlock.
Referenced by addCatchTypeInfo(), addCleanup(), addFilterTypeInfo(), addInvoke(), addLandingPad(), and addPersonality().
| void MachineModuleInfo::addInvoke | ( | MachineBasicBlock * | LandingPad, | |
| unsigned | BeginLabel, | |||
| unsigned | EndLabel | |||
| ) |
addInvoke - Provide the begin and end labels of an invoke style call and associate it with a try landing pad block.
addInvoke - Provide the begin and end labels of an invoke style call and associate it with a try landing pad block.
Definition at line 126 of file MachineModuleInfo.cpp.
References llvm::LandingPadInfo::BeginLabels, llvm::LandingPadInfo::EndLabels, getOrCreateLandingPadInfo(), and llvm::SmallVectorImpl< T >::push_back().
| unsigned MachineModuleInfo::addLandingPad | ( | MachineBasicBlock * | LandingPad | ) |
addLandingPad - Add a new panding pad. Returns the label ID for the landing pad entry.
addLandingPad - Provide the label of a try LandingPad block.
Definition at line 135 of file MachineModuleInfo.cpp.
References getOrCreateLandingPadInfo(), llvm::LandingPadInfo::LandingPadLabel, and NextLabelID().
| void MachineModuleInfo::addPersonality | ( | MachineBasicBlock * | LandingPad, | |
| Function * | Personality | |||
| ) |
addPersonality - Provide the personality function for the exception information.
addPersonality - Provide the personality function for the exception information.
Definition at line 144 of file MachineModuleInfo.cpp.
References getOrCreateLandingPadInfo(), and llvm::LandingPadInfo::Personality.
Referenced by llvm::AddCatchInfo().
| unsigned MachineModuleInfo::getPersonalityIndex | ( | ) | const |
getPersonalityIndex - Get index of the current personality function inside Personalitites array
getPersonalityIndex - Return unique index for current personality function. NULL personality function should always get zero index.
Definition at line 278 of file MachineModuleInfo.cpp.
Referenced by llvm::JITDwarfEmitter::EmitDwarfTable(), and llvm::JITDwarfEmitter::GetDwarfTableSizeInBytes().
| const std::vector<Function *>& llvm::MachineModuleInfo::getPersonalities | ( | ) | const [inline] |
getPersonalities - Return array of personality functions ever seen.
Definition at line 255 of file MachineModuleInfo.h.
Referenced by llvm::X86ATTAsmPrinter::doFinalization(), llvm::JITDwarfEmitter::EmitDwarfTable(), and llvm::JITDwarfEmitter::GetDwarfTableSizeInBytes().
| const SmallPtrSet<const Function *, 32>& llvm::MachineModuleInfo::getUsedFunctions | ( | ) | const [inline] |
Definition at line 260 of file MachineModuleInfo.h.
| void MachineModuleInfo::addCatchTypeInfo | ( | MachineBasicBlock * | LandingPad, | |
| std::vector< GlobalVariable * > & | TyInfo | |||
| ) |
addCatchTypeInfo - Provide the catch typeinfo for a landing pad.
Definition at line 158 of file MachineModuleInfo.cpp.
References getOrCreateLandingPadInfo(), getTypeIDFor(), and llvm::LandingPadInfo::TypeIds.
Referenced by llvm::AddCatchInfo().
| void MachineModuleInfo::addFilterTypeInfo | ( | MachineBasicBlock * | LandingPad, | |
| std::vector< GlobalVariable * > & | TyInfo | |||
| ) |
addFilterTypeInfo - Provide the filter typeinfo for a landing pad.
Definition at line 167 of file MachineModuleInfo.cpp.
References E, getFilterIDFor(), getOrCreateLandingPadInfo(), getTypeIDFor(), and llvm::LandingPadInfo::TypeIds.
Referenced by llvm::AddCatchInfo().
| void MachineModuleInfo::addCleanup | ( | MachineBasicBlock * | LandingPad | ) |
addCleanup - Add a cleanup action for a landing pad.
Definition at line 178 of file MachineModuleInfo.cpp.
References getOrCreateLandingPadInfo(), and llvm::LandingPadInfo::TypeIds.
Referenced by llvm::AddCatchInfo().
| unsigned MachineModuleInfo::getTypeIDFor | ( | GlobalVariable * | TI | ) |
getTypeIDFor - Return the type id for the specified typeinfo. This is function wide.
getTypeIDFor - Return the type id for the specified typeinfo. This is function wide.
Definition at line 230 of file MachineModuleInfo.cpp.
Referenced by addCatchTypeInfo(), and addFilterTypeInfo().
| int MachineModuleInfo::getFilterIDFor | ( | std::vector< unsigned > & | TyIds | ) |
getFilterIDFor - Return the id of the filter encoded by TyIds. This is function wide.
getFilterIDFor - Return the filter id for the specified typeinfos. This is function wide.
Definition at line 240 of file MachineModuleInfo.cpp.
References E.
Referenced by addFilterTypeInfo().
| void MachineModuleInfo::TidyLandingPads | ( | ) |
TidyLandingPads - Remap landing pad labels and remove any deleted landing pads.
TidyLandingPads - Remap landing pad labels and remove any deleted landing pads.
Definition at line 185 of file MachineModuleInfo.cpp.
References llvm::SmallVectorImpl< T >::begin(), BeginLabel, llvm::LandingPadInfo::BeginLabels, EndLabel, llvm::LandingPadInfo::EndLabels, llvm::SmallVectorImpl< T >::erase(), llvm::LandingPadInfo::LandingPadBlock, llvm::LandingPadInfo::LandingPadLabel, MappedLabel(), and llvm::LandingPadInfo::TypeIds.
| const std::vector<LandingPadInfo>& llvm::MachineModuleInfo::getLandingPads | ( | ) | const [inline] |
getLandingPads - Return a reference to the landing pad info for the current function.
Definition at line 292 of file MachineModuleInfo.h.
| const std::vector<GlobalVariable *>& llvm::MachineModuleInfo::getTypeInfos | ( | ) | const [inline] |
getTypeInfos - Return a reference to the C++ typeinfo for the current function.
Definition at line 298 of file MachineModuleInfo.h.
| const std::vector<unsigned>& llvm::MachineModuleInfo::getFilterIds | ( | ) | const [inline] |
getFilterIds - Return a reference to the typeids encoding filters used in the current function.
Definition at line 304 of file MachineModuleInfo.h.
| Function * MachineModuleInfo::getPersonality | ( | ) | const |
getPersonality - Return the personality function for the current function.
getPersonality - Return a personality function if available. The presence of one is required to emit exception handling info.
Definition at line 270 of file MachineModuleInfo.cpp.
char MachineModuleInfo::ID = 0 [static] |