diff options
author | Mehdi Amini <joker.eph@gmail.com> | 2021-07-16 07:34:41 +0000 |
---|---|---|
committer | Mehdi Amini <joker.eph@gmail.com> | 2021-07-16 07:35:13 +0000 |
commit | 8d051d854619956de633047409149cdab1e3319a (patch) | |
tree | e51ddd9e2fdb3237526b74ab09484bec6b4ca44a /llvm/lib/Support/RandomNumberGenerator.cpp | |
parent | 3d3dc9523f9b2ec9d83d37bd8a757726f37b6ee5 (diff) | |
download | llvm-8d051d854619956de633047409149cdab1e3319a.zip llvm-8d051d854619956de633047409149cdab1e3319a.tar.gz llvm-8d051d854619956de633047409149cdab1e3319a.tar.bz2 |
Revert "Use ManagedStatic and lazy initialization of cl::opt in libSupport to make it free of global initializer"
This reverts commit af9321739b20becf170e6bb5060b8d780e1dc8dd.
Still some specific config broken in some way that requires more
investigation.
Diffstat (limited to 'llvm/lib/Support/RandomNumberGenerator.cpp')
-rw-r--r-- | llvm/lib/Support/RandomNumberGenerator.cpp | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/llvm/lib/Support/RandomNumberGenerator.cpp b/llvm/lib/Support/RandomNumberGenerator.cpp index aea0132..f9c41ee 100644 --- a/llvm/lib/Support/RandomNumberGenerator.cpp +++ b/llvm/lib/Support/RandomNumberGenerator.cpp @@ -13,9 +13,6 @@ //===----------------------------------------------------------------------===// #include "llvm/Support/RandomNumberGenerator.h" - -#include "DebugOptions.h" - #include "llvm/Support/CommandLine.h" #include "llvm/Support/Debug.h" #include "llvm/Support/raw_ostream.h" @@ -28,20 +25,13 @@ using namespace llvm; #define DEBUG_TYPE "rng" -namespace { -struct CreateSeed { - static void *call() { - return new cl::opt<uint64_t>( - "rng-seed", cl::value_desc("seed"), cl::Hidden, - cl::desc("Seed for the random number generator"), cl::init(0)); - } -}; -} // namespace -static ManagedStatic<cl::opt<uint64_t>, CreateSeed> Seed; -void llvm::initRandomSeedOptions() { *Seed; } + +static cl::opt<uint64_t> Seed("rng-seed", cl::value_desc("seed"), cl::Hidden, + cl::desc("Seed for the random number generator"), + cl::init(0)); RandomNumberGenerator::RandomNumberGenerator(StringRef Salt) { - LLVM_DEBUG(if (*Seed == 0) dbgs() + LLVM_DEBUG(if (Seed == 0) dbgs() << "Warning! Using unseeded random number generator.\n"); // Combine seed and salts using std::seed_seq. @@ -51,8 +41,8 @@ RandomNumberGenerator::RandomNumberGenerator(StringRef Salt) { // twister constructor copies these correctly into its initial state. std::vector<uint32_t> Data; Data.resize(2 + Salt.size()); - Data[0] = *Seed; - Data[1] = *Seed >> 32; + Data[0] = Seed; + Data[1] = Seed >> 32; llvm::copy(Salt, Data.begin() + 2); |