LLVM API Documentation

Typedefs | Functions
Collaboration diagram for Contexts:


typedef void(* LLVMDiagnosticHandler )(LLVMDiagnosticInfoRef, void *)


LLVMContextRef LLVMContextCreate (void)
LLVMContextRef LLVMGetGlobalContext (void)
void LLVMContextSetDiagnosticHandler (LLVMContextRef C, LLVMDiagnosticHandler Handler, void *DiagnosticContext)
void LLVMContextDispose (LLVMContextRef C)
char * LLVMGetDiagInfoDescription (LLVMDiagnosticInfoRef DI)
LLVMDiagnosticSeverity LLVMGetDiagInfoSeverity (LLVMDiagnosticInfoRef DI)
unsigned LLVMGetMDKindIDInContext (LLVMContextRef C, const char *Name, unsigned SLen)
unsigned LLVMGetMDKindID (const char *Name, unsigned SLen)

Detailed Description

Contexts are execution states for the core LLVM IR system.

Most types are tied to a context instance. Multiple contexts can exist simultaneously. A single context is not thread safe. However, different contexts can execute on different threads simultaneously.

Typedef Documentation

typedef void(* LLVMDiagnosticHandler)(LLVMDiagnosticInfoRef, void *)

Definition at line 469 of file Core.h.

Function Documentation

Create a new context.

Every call to this function should be paired with a call to LLVMContextDispose() or the context will leak memory.

Definition at line 75 of file Core.cpp.

References llvm::wrap().

Destroy a context instance.

This should be called for every call to LLVMContextCreate() or memory will be leaked.

Definition at line 91 of file Core.cpp.

References llvm::unwrap().

void LLVMContextSetDiagnosticHandler ( LLVMContextRef  C,
LLVMDiagnosticHandler  Handler,
void *  DiagnosticContext 

Set the diagnostic handler for this context.

Definition at line 83 of file Core.cpp.

References LLVM_EXTENSION, llvm::LLVMContext::setDiagnosticHandler(), and llvm::unwrap().

Return a string representation of the DiagnosticInfo. Use LLVMDisposeMessage to free the string.

See also:

Definition at line 104 of file Core.cpp.

References llvm::raw_ostream::flush(), LLVMCreateMessage(), and llvm::unwrap().

Return an enum LLVMDiagnosticSeverity.

See also:

Definition at line 115 of file Core.cpp.

References llvm::DS_Note, llvm::DS_Remark, llvm::DS_Warning, LLVMDSError, LLVMDSNote, LLVMDSRemark, LLVMDSWarning, and llvm::unwrap().

unsigned LLVMGetMDKindID ( const char *  Name,
unsigned  SLen 

Definition at line 100 of file Core.cpp.

References LLVMGetGlobalContext(), and LLVMGetMDKindIDInContext().

Definition at line 95 of file Core.cpp.

References llvm::LLVMContext::getMDKindID(), and llvm::unwrap().

Referenced by LLVMGetMDKindID().