14 #ifndef LLVM_SUPPORT_MANAGED_STATIC_H
15 #define LLVM_SUPPORT_MANAGED_STATIC_H
32 static void call(
void * Ptr) {
delete (
T*)Ptr; }
35 static void call(
void * Ptr) {
delete[] (
T*)Ptr; }
71 return *
static_cast<C*
>(
Ptr);
79 return static_cast<C*
>(
Ptr);
87 return *
static_cast<C*
>(
Ptr);
95 return static_cast<C*
>(
Ptr);
bool isConstructed() const
isConstructed - Return true if this object has not been created yet.
const C * operator->() const
const C & operator*() const
void * object_creator()
object_creator - Helper method for ManagedStatic.
const ManagedStaticBase * Next
static void call(void *Ptr)
bool llvm_start_multithreaded()
#define TsanHappensAfter(cv)
void(* DeleterFn)(void *)
void llvm_shutdown()
llvm_shutdown - Deallocate and destroy all ManagedStatic variables.
llvm_shutdown_obj(bool multithreaded)
bool llvm_is_multithreaded()
void RegisterManagedStatic(void *(*creator)(), void(*deleter)(void *)) const
ManagedStaticBase - Common base class for ManagedStatic instances.
static void call(void *Ptr)