Eliminating static destructor for the BitCodeErrorCategory by converting to a ManagedStatic.

Summary: This is part of the overall goal of removing static initializers from LLVM.

Reviewers: chandlerc

Reviewed By: chandlerc

Subscribers: chandlerc, llvm-commits

Differential Revision: http://reviews.llvm.org/D5416

llvm-svn: 218149
This commit is contained in:
Chris Bieneman
2014-09-19 20:29:02 +00:00
parent 4171da5cfe
commit 770163e4f3

View File

@@ -25,6 +25,8 @@
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/ManagedStatic.h"
using namespace llvm;
enum {
@@ -3502,9 +3504,10 @@ class BitcodeErrorCategoryType : public std::error_category {
};
}
static ManagedStatic<BitcodeErrorCategoryType> ErrorCategory;
const std::error_category &llvm::BitcodeErrorCategory() {
static BitcodeErrorCategoryType O;
return O;
return *ErrorCategory;
}
//===----------------------------------------------------------------------===//