LLVM API Documentation

Namespaces | Defines | Functions | Variables
DynamicLibrary.cpp File Reference
#include "llvm/Support/DynamicLibrary.h"
#include "llvm-c/Support.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/Config/config.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/Mutex.h"
#include <cstdio>
#include <cstring>
#include <dlfcn.h>
Include dependency graph for DynamicLibrary.cpp:

Go to the source code of this file.

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Defines

#define EXPLICIT_SYMBOL(SYM)   if (!strcmp(symbolName, #SYM)) return &SYM

Functions

void * llvm::SearchForAddressOfSpecialSymbol (const char *symbolName)
LLVMBool LLVMLoadLibraryPermanently (const char *Filename)

Variables

static llvm::ManagedStatic
< llvm::StringMap< void * > > 
ExplicitSymbols
static llvm::ManagedStatic
< llvm::sys::SmartMutex< true > > 
SymbolsMutex
static DenseSet< void * > * OpenedHandles = nullptr

Define Documentation

#define EXPLICIT_SYMBOL (   SYM)    if (!strcmp(symbolName, #SYM)) return &SYM

Function Documentation

This function permanently loads the dynamic library at the given path. It is safe to call this function multiple times for the same library.

See also:
sys::DynamicLibrary::LoadLibraryPermanently()

Definition at line 178 of file DynamicLibrary.cpp.

References llvm::sys::DynamicLibrary::LoadLibraryPermanently().


Variable Documentation

Definition at line 27 of file DynamicLibrary.cpp.

DenseSet<void *>* OpenedHandles = nullptr [static]

Definition at line 28 of file DynamicLibrary.cpp.