LLVM
8.0.1
|
A derived class of LLVMContext that initializes itself according to a given Config object. More...
#include "llvm/LTO/Config.h"
Public Member Functions | |
LTOLLVMContext (const Config &C) | |
Public Member Functions inherited from llvm::LLVMContext | |
LLVMContext () | |
LLVMContext (LLVMContext &)=delete | |
LLVMContext & | operator= (const LLVMContext &)=delete |
~LLVMContext () | |
unsigned | getMDKindID (StringRef Name) const |
getMDKindID - Return a unique non-zero ID for the specified metadata kind. More... | |
void | getMDKindNames (SmallVectorImpl< StringRef > &Result) const |
getMDKindNames - Populate client supplied SmallVector with the name for custom metadata IDs registered in this LLVMContext. More... | |
void | getOperandBundleTags (SmallVectorImpl< StringRef > &Result) const |
getOperandBundleTags - Populate client supplied SmallVector with the bundle tags registered in this LLVMContext. More... | |
uint32_t | getOperandBundleTagID (StringRef Tag) const |
getOperandBundleTagID - Maps a bundle tag to an integer ID. More... | |
SyncScope::ID | getOrInsertSyncScopeID (StringRef SSN) |
getOrInsertSyncScopeID - Maps synchronization scope name to synchronization scope ID. More... | |
void | getSyncScopeNames (SmallVectorImpl< StringRef > &SSNs) const |
getSyncScopeNames - Populates client supplied SmallVector with synchronization scope names registered with LLVMContext. More... | |
void | setGC (const Function &Fn, std::string GCName) |
Define the GC for a function. More... | |
const std::string & | getGC (const Function &Fn) |
Return the GC for a function. More... | |
void | deleteGC (const Function &Fn) |
Remove the GC for a function. More... | |
bool | shouldDiscardValueNames () const |
Return true if the Context runtime configuration is set to discard all value names. More... | |
void | setDiscardValueNames (bool Discard) |
Set the Context runtime configuration to discard all value name (but GlobalValue). More... | |
bool | isODRUniquingDebugTypes () const |
Whether there is a string map for uniquing debug info identifiers across the context. More... | |
void | enableDebugTypeODRUniquing () |
void | disableDebugTypeODRUniquing () |
void | setInlineAsmDiagnosticHandler (InlineAsmDiagHandlerTy DiagHandler, void *DiagContext=nullptr) |
setInlineAsmDiagnosticHandler - This method sets a handler that is invoked when problems with inline asm are detected by the backend. More... | |
InlineAsmDiagHandlerTy | getInlineAsmDiagnosticHandler () const |
getInlineAsmDiagnosticHandler - Return the diagnostic handler set by setInlineAsmDiagnosticHandler. More... | |
void * | getInlineAsmDiagnosticContext () const |
getInlineAsmDiagnosticContext - Return the diagnostic context set by setInlineAsmDiagnosticHandler. More... | |
void | setDiagnosticHandlerCallBack (DiagnosticHandler::DiagnosticHandlerTy DiagHandler, void *DiagContext=nullptr, bool RespectFilters=false) |
setDiagnosticHandlerCallBack - This method sets a handler call back that is invoked when the backend needs to report anything to the user. More... | |
void | setDiagnosticHandler (std::unique_ptr< DiagnosticHandler > &&DH, bool RespectFilters=false) |
setDiagnosticHandler - This method sets unique_ptr to object of DiagnosticHandler to provide custom diagnostic handling. More... | |
DiagnosticHandler::DiagnosticHandlerTy | getDiagnosticHandlerCallBack () const |
getDiagnosticHandlerCallBack - Return the diagnostic handler call back set by setDiagnosticHandlerCallBack. More... | |
void * | getDiagnosticContext () const |
getDiagnosticContext - Return the diagnostic context set by setDiagnosticContext. More... | |
const DiagnosticHandler * | getDiagHandlerPtr () const |
getDiagHandlerPtr - Returns const raw pointer of DiagnosticHandler set by setDiagnosticHandler. More... | |
std::unique_ptr< DiagnosticHandler > | getDiagnosticHandler () |
getDiagnosticHandler - transfers owenership of DiagnosticHandler unique_ptr to caller. More... | |
bool | getDiagnosticsHotnessRequested () const |
Return if a code hotness metric should be included in optimization diagnostics. More... | |
void | setDiagnosticsHotnessRequested (bool Requested) |
Set if a code hotness metric should be included in optimization diagnostics. More... | |
uint64_t | getDiagnosticsHotnessThreshold () const |
Return the minimum hotness value a diagnostic would need in order to be included in optimization diagnostics. More... | |
void | setDiagnosticsHotnessThreshold (uint64_t Threshold) |
Set the minimum hotness value a diagnostic needs in order to be included in optimization diagnostics. More... | |
yaml::Output * | getDiagnosticsOutputFile () |
Return the YAML file used by the backend to save optimization diagnostics. More... | |
void | setDiagnosticsOutputFile (std::unique_ptr< yaml::Output > F) |
Set the diagnostics output file used for optimization diagnostics. More... | |
void | diagnose (const DiagnosticInfo &DI) |
Report a message to the currently installed diagnostic handler. More... | |
void | setYieldCallback (YieldCallbackTy Callback, void *OpaqueHandle) |
Registers a yield callback with the given context. More... | |
void | yield () |
Calls the yield callback (if applicable). More... | |
void | emitError (unsigned LocCookie, const Twine &ErrorStr) |
emitError - Emit an error message to the currently installed error handler with optional location information. More... | |
void | emitError (const Instruction *I, const Twine &ErrorStr) |
void | emitError (const Twine &ErrorStr) |
template<typename ValT , typename Base , ValTBase::* Mem> | |
ValT | getOption () const |
Query for a debug option's value. More... | |
OptPassGate & | getOptPassGate () const |
Access the object which can disable optional passes and individual optimizations at compile time. More... | |
void | setOptPassGate (OptPassGate &) |
Set the object which can disable optional passes and individual optimizations at compile time. More... | |
Public Attributes | |
DiagnosticHandlerFunction | DiagHandler |
Public Attributes inherited from llvm::LLVMContext | |
LLVMContextImpl *const | pImpl |
Additional Inherited Members | |
Public Types inherited from llvm::LLVMContext | |
enum | : unsigned { MD_dbg = 0, MD_tbaa = 1, MD_prof = 2, MD_fpmath = 3, MD_range = 4, MD_tbaa_struct = 5, MD_invariant_load = 6, MD_alias_scope = 7, MD_noalias = 8, MD_nontemporal = 9, MD_mem_parallel_loop_access = 10, MD_nonnull = 11, MD_dereferenceable = 12, MD_dereferenceable_or_null = 13, MD_make_implicit = 14, MD_unpredictable = 15, MD_invariant_group = 16, MD_align = 17, MD_loop = 18, MD_type = 19, MD_section_prefix = 20, MD_absolute_symbol = 21, MD_associated = 22, MD_callees = 23, MD_irr_loop = 24, MD_access_group = 25 } |
enum | : unsigned { OB_deopt = 0, OB_funclet = 1, OB_gc_transition = 2 } |
Known operand bundle tag IDs, which always have the same value. More... | |
using | InlineAsmDiagHandlerTy = void(*)(const SMDiagnostic &, void *Context, unsigned LocCookie) |
using | YieldCallbackTy = void(*)(LLVMContext *Context, void *OpaqueHandle) |
Defines the type of a yield callback. More... | |
Static Public Member Functions inherited from llvm::LLVMContext | |
static const char * | getDiagnosticMessagePrefix (DiagnosticSeverity Severity) |
Get the prefix that should be printed in front of a diagnostic of the given Severity . More... | |
A derived class of LLVMContext that initializes itself according to a given Config object.
The purpose of this class is to tie ownership of the diagnostic handler to the context, as opposed to the Config object (which may be ephemeral).
Definition at line 208 of file Config.h.
References llvm::lto::Config::DiagHandler, and llvm::lto::Config::ShouldDiscardValueNames.
DiagnosticHandlerFunction llvm::lto::LTOLLVMContext::DiagHandler |