summaryrefslogtreecommitdiff
path: root/release_23/lib/Support/ManagedStatic.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'release_23/lib/Support/ManagedStatic.cpp')
-rw-r--r--release_23/lib/Support/ManagedStatic.cpp53
1 files changed, 0 insertions, 53 deletions
diff --git a/release_23/lib/Support/ManagedStatic.cpp b/release_23/lib/Support/ManagedStatic.cpp
deleted file mode 100644
index c365e013c6fc..000000000000
--- a/release_23/lib/Support/ManagedStatic.cpp
+++ /dev/null
@@ -1,53 +0,0 @@
-//===-- ManagedStatic.cpp - Static Global wrapper -------------------------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file implements the ManagedStatic class and llvm_shutdown().
-//
-//===----------------------------------------------------------------------===//
-
-#include "llvm/Support/ManagedStatic.h"
-#include <cassert>
-using namespace llvm;
-
-static const ManagedStaticBase *StaticList = 0;
-
-void ManagedStaticBase::RegisterManagedStatic(void *ObjPtr,
- void (*Deleter)(void*)) const {
- assert(Ptr == 0 && DeleterFn == 0 && Next == 0 &&
- "Partially init static?");
- Ptr = ObjPtr;
- DeleterFn = Deleter;
-
- // Add to list of managed statics.
- Next = StaticList;
- StaticList = this;
-}
-
-void ManagedStaticBase::destroy() const {
- assert(DeleterFn && "ManagedStatic not initialized correctly!");
- assert(StaticList == this &&
- "Not destroyed in reverse order of construction?");
- // Unlink from list.
- StaticList = Next;
- Next = 0;
-
- // Destroy memory.
- DeleterFn(Ptr);
-
- // Cleanup.
- Ptr = 0;
- DeleterFn = 0;
-}
-
-/// llvm_shutdown - Deallocate and destroy all ManagedStatic variables.
-void llvm::llvm_shutdown() {
- while (StaticList)
- StaticList->destroy();
-}
-