Commit 20feb1cd by Abseil Team Committed by Gennadiy Rozental

Export of internal Abseil changes

--
9214ee309fa224a43eb1621bcf826ab9c86a4cd7 by Abseil Team <absl-team@google.com>:

Don't keep constructing/destructing `random_device`.

It causes an open/close pair on /dev/urandom.

This is somewhat expensive on Emscripten, and unnecessary since it is not using
the value anyway.

PiperOrigin-RevId: 332055452

--
4931ab77995b946f3ffba8036e0a00927b0d47e6 by Abseil Team <absl-team@google.com>:

TYPO: Stess->Stress

PiperOrigin-RevId: 332010526

--
95ae1dde505f74dc7fd68447bf27718db223688e by Gennadiy Rozental <rogeeff@google.com>:

Import of CCTZ from GitHub.

PiperOrigin-RevId: 332010411
GitOrigin-RevId: 9214ee309fa224a43eb1621bcf826ab9c86a4cd7
Change-Id: I23c5d6aa5aa488370e1b48f37366d3d99448e7ec
parent c1ae0a49
...@@ -41,8 +41,10 @@ class RandomDeviceSeedSeq { ...@@ -41,8 +41,10 @@ class RandomDeviceSeedSeq {
} // namespace } // namespace
std::mt19937_64* GetSharedRng() { std::mt19937_64* GetSharedRng() {
static auto* rng = [] {
RandomDeviceSeedSeq seed_seq; RandomDeviceSeedSeq seed_seq;
static auto* rng = new std::mt19937_64(seed_seq); return new std::mt19937_64(seed_seq);
}();
return rng; return rng;
} }
......
...@@ -1102,7 +1102,7 @@ TEST(Mutex, DeadlockDetectorBazelWarning) { ...@@ -1102,7 +1102,7 @@ TEST(Mutex, DeadlockDetectorBazelWarning) {
// annotation-based static thread-safety analysis is not currently // annotation-based static thread-safety analysis is not currently
// predicate-aware and cannot tell if the two for-loops that acquire and // predicate-aware and cannot tell if the two for-loops that acquire and
// release the locks have the same predicates. // release the locks have the same predicates.
TEST(Mutex, DeadlockDetectorStessTest) ABSL_NO_THREAD_SAFETY_ANALYSIS { TEST(Mutex, DeadlockDetectorStressTest) ABSL_NO_THREAD_SAFETY_ANALYSIS {
// Stress test: Here we create a large number of locks and use all of them. // Stress test: Here we create a large number of locks and use all of them.
// If a deadlock detector keeps a full graph of lock acquisition order, // If a deadlock detector keeps a full graph of lock acquisition order,
// it will likely be too slow for this test to pass. // it will likely be too slow for this test to pass.
......
...@@ -92,6 +92,11 @@ cc_library( ...@@ -92,6 +92,11 @@ cc_library(
### tests ### tests
test_suite(
name = "all_tests",
visibility = ["//visibility:public"],
)
cc_test( cc_test(
name = "civil_time_test", name = "civil_time_test",
size = "small", size = "small",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment