diff options
author | JF Bastien <jfb@google.com> | 2014-06-18 06:33:23 +0000 |
---|---|---|
committer | JF Bastien <jfb@google.com> | 2014-06-18 06:33:23 +0000 |
commit | 02b4e6e7ab1ad79336d9f23f3644c90aecc8457a (patch) | |
tree | 8b967c714bd45e4ee587cefcdfb9ea407b41fbd2 /include/llvm/Support | |
parent | 1d04a2324c4e86320b5452f5262782c569cd3315 (diff) | |
download | llvm-02b4e6e7ab1ad79336d9f23f3644c90aecc8457a.tar.gz llvm-02b4e6e7ab1ad79336d9f23f3644c90aecc8457a.tar.bz2 llvm-02b4e6e7ab1ad79336d9f23f3644c90aecc8457a.tar.xz |
Revert "Random Number Generator (llvm)"
This reverts commit cccba093090d127e0b6d17473b14c264c14c5259.
It causes build breakage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211146 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Support')
-rw-r--r-- | include/llvm/Support/RandomNumberGenerator.h | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/include/llvm/Support/RandomNumberGenerator.h b/include/llvm/Support/RandomNumberGenerator.h deleted file mode 100644 index 84fcdcbc76..0000000000 --- a/include/llvm/Support/RandomNumberGenerator.h +++ /dev/null @@ -1,53 +0,0 @@ -//==- llvm/Support/RandomNumberGenerator.h - RNG for diversity ---*- C++ -*-==// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file defines an abstraction for random number generation (RNG). -// Note that the current implementation is not cryptographically secure -// as it uses the C++11 <random> facilities. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_SUPPORT_RANDOMNUMBERGENERATOR_H_ -#define LLVM_SUPPORT_RANDOMNUMBERGENERATOR_H_ - -#include "llvm/ADT/StringRef.h" -#include <random> - -namespace llvm { - -/// A random number generator. -/// Instances of this class should not be shared across threads. -class RandomNumberGenerator { -public: - /// Seeds and salts the underlying RNG engine. The salt of type StringRef - /// is passed into the constructor. The seed can be set on the command - /// line via -rng-seed=<uint64>. - /// The reason for the salt is to ensure different random streams even if - /// the same seed is used for multiple invocations of the compiler. - /// A good salt value should add additional entropy and be constant across - /// different machines (i.e., no paths) to allow for reproducible builds. - /// An instance of this class can be retrieved from the current Module. - /// \see Module::getRNG - RandomNumberGenerator(StringRef Salt); - - /// Returns a random number in the range [0, Max). - uint64_t next(uint64_t Max); - -private: - // 64-bit Mersenne Twister by Matsumoto and Nishimura, 2000 - // http://en.cppreference.com/w/cpp/numeric/random/mersenne_twister_engine - std::mt19937_64 Generator; - - // Noncopyable. - RandomNumberGenerator(const RandomNumberGenerator &other) = delete; - RandomNumberGenerator &operator=(const RandomNumberGenerator &other) = delete; -}; -} - -#endif |