summaryrefslogtreecommitdiff
path: root/include/llvm/Support
diff options
context:
space:
mode:
authorJF Bastien <jfb@google.com>2014-06-18 06:33:23 +0000
committerJF Bastien <jfb@google.com>2014-06-18 06:33:23 +0000
commit02b4e6e7ab1ad79336d9f23f3644c90aecc8457a (patch)
tree8b967c714bd45e4ee587cefcdfb9ea407b41fbd2 /include/llvm/Support
parent1d04a2324c4e86320b5452f5262782c569cd3315 (diff)
downloadllvm-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.h53
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