LLVM  8.0.1
Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::JITEventListener Class Reference

JITEventListener - Abstract interface for use by the JIT to notify clients about significant events during compilation. More...

#include "llvm/ExecutionEngine/JITEventListener.h"

Public Types

using ObjectKey = uint64_t
 

Public Member Functions

 JITEventListener ()=default
 
virtual ~JITEventListener ()=default
 
virtual void notifyObjectLoaded (ObjectKey K, const object::ObjectFile &Obj, const RuntimeDyld::LoadedObjectInfo &L)
 notifyObjectLoaded - Called after an object has had its sections allocated and addresses assigned to all symbols. More...
 
virtual void notifyFreeingObject (ObjectKey K)
 notifyFreeingObject - Called just before the memory associated with a previously emitted object is released. More...
 

Static Public Member Functions

static JITEventListenercreateGDBRegistrationListener ()
 
static JITEventListenercreateIntelJITEventListener ()
 
static JITEventListenercreateIntelJITEventListener (IntelJITEventsWrapper *AlternativeImpl)
 
static JITEventListenercreateOProfileJITEventListener ()
 
static JITEventListenercreateOProfileJITEventListener (OProfileWrapper *AlternativeImpl)
 
static JITEventListenercreatePerfJITEventListener ()
 

Detailed Description

JITEventListener - Abstract interface for use by the JIT to notify clients about significant events during compilation.

For example, to notify profilers and debuggers that need to know where functions have been emitted.

The default implementation of each method does nothing.

Definition at line 43 of file JITEventListener.h.

Member Typedef Documentation

◆ ObjectKey

Definition at line 45 of file JITEventListener.h.

Constructor & Destructor Documentation

◆ JITEventListener()

llvm::JITEventListener::JITEventListener ( )
default

◆ ~JITEventListener()

virtual llvm::JITEventListener::~JITEventListener ( )
virtualdefault

Member Function Documentation

◆ createGDBRegistrationListener()

JITEventListener * llvm::JITEventListener::createGDBRegistrationListener ( )
static

◆ createIntelJITEventListener() [1/2]

JITEventListener * llvm::JITEventListener::createIntelJITEventListener ( )
inlinestatic

Definition at line 77 of file JITEventListener.h.

Referenced by LLVMCreateIntelJITEventListener().

◆ createIntelJITEventListener() [2/2]

JITEventListener * llvm::JITEventListener::createIntelJITEventListener ( IntelJITEventsWrapper AlternativeImpl)
inlinestatic

Definition at line 79 of file JITEventListener.h.

◆ createOProfileJITEventListener() [1/2]

JITEventListener * llvm::JITEventListener::createOProfileJITEventListener ( )
inlinestatic

Definition at line 93 of file JITEventListener.h.

Referenced by LLVMCreateOProfileJITEventListener().

◆ createOProfileJITEventListener() [2/2]

static JITEventListener* llvm::JITEventListener::createOProfileJITEventListener ( OProfileWrapper AlternativeImpl)
inlinestatic

Definition at line 95 of file JITEventListener.h.

◆ createPerfJITEventListener()

JITEventListener * llvm::JITEventListener::createPerfJITEventListener ( )
inlinestatic

Definition at line 104 of file JITEventListener.h.

References DEFINE_SIMPLE_CONVERSION_FUNCTIONS.

Referenced by LLVMCreatePerfJITEventListener().

◆ notifyFreeingObject()

virtual void llvm::JITEventListener::notifyFreeingObject ( ObjectKey  K)
inlinevirtual

notifyFreeingObject - Called just before the memory associated with a previously emitted object is released.

Definition at line 64 of file JITEventListener.h.

◆ notifyObjectLoaded()

virtual void llvm::JITEventListener::notifyObjectLoaded ( ObjectKey  K,
const object::ObjectFile Obj,
const RuntimeDyld::LoadedObjectInfo L 
)
inlinevirtual

notifyObjectLoaded - Called after an object has had its sections allocated and addresses assigned to all symbols.

Note: Section memory will not have been relocated yet. notifyFunctionLoaded will not be called for individual functions in the object.

ELF-specific information The ObjectImage contains the generated object image with section headers updated to reflect the address at which sections were loaded and with relocations performed in-place on debug sections.

Definition at line 59 of file JITEventListener.h.


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