|
|
|
#
|
|
|
|
# Copyright 2019 The Abseil Authors.
|
|
|
|
#
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
# you may not use this file except in compliance with the License.
|
|
|
|
# You may obtain a copy of the License at
|
|
|
|
#
|
|
|
|
# https://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
#
|
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
# See the License for the specific language governing permissions and
|
|
|
|
# limitations under the License.
|
|
|
|
#
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_random
|
|
|
|
HDRS
|
|
|
|
"random.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_nonsecure_base
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_pool_urbg
|
|
|
|
absl::random_internal_randen_engine
|
|
|
|
absl::random_seed_sequences
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_bit_gen_ref
|
|
|
|
HDRS
|
|
|
|
"bit_gen_ref.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
|
|
|
absl::random_internal_distribution_caller
|
|
|
|
absl::random_internal_fast_uniform_bits
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_bit_gen_ref_test
|
|
|
|
SRCS
|
|
|
|
"bit_gen_ref_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_bit_gen_ref
|
|
|
|
absl::random_random
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::fast_type_id
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_mock_helpers
|
|
|
|
HDRS
|
|
|
|
"internal/mock_helpers.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::fast_type_id
|
|
|
|
absl::optional
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_mock_overload_set
|
|
|
|
HDRS
|
|
|
|
"internal/mock_overload_set.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_mocking_bit_gen
|
|
|
|
absl::random_internal_mock_helpers
|
|
|
|
TESTONLY
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_mocking_bit_gen
|
|
|
|
HDRS
|
|
|
|
"mock_distributions.h"
|
|
|
|
"mocking_bit_gen.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::flat_hash_map
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_caller
|
|
|
|
absl::random_internal_mock_overload_set
|
|
|
|
absl::random_random
|
|
|
|
absl::strings
|
|
|
|
absl::span
|
|
|
|
absl::type_traits
|
|
|
|
absl::utility
|
|
|
|
absl::variant
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest
|
|
|
|
PUBLIC
|
|
|
|
TESTONLY
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_mock_distributions_test
|
|
|
|
SRCS
|
|
|
|
"mock_distributions_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_mocking_bit_gen
|
|
|
|
absl::random_random
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_mocking_bit_gen_test
|
|
|
|
SRCS
|
|
|
|
"mocking_bit_gen_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_bit_gen_ref
|
|
|
|
absl::random_mocking_bit_gen
|
|
|
|
absl::random_random
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_distributions
|
|
|
|
SRCS
|
|
|
|
"discrete_distribution.cc"
|
|
|
|
"gaussian_distribution.cc"
|
|
|
|
HDRS
|
|
|
|
"bernoulli_distribution.h"
|
|
|
|
"beta_distribution.h"
|
|
|
|
"discrete_distribution.h"
|
|
|
|
"distributions.h"
|
|
|
|
"exponential_distribution.h"
|
|
|
|
"gaussian_distribution.h"
|
|
|
|
"log_uniform_int_distribution.h"
|
|
|
|
"poisson_distribution.h"
|
|
|
|
"uniform_int_distribution.h"
|
|
|
|
"uniform_real_distribution.h"
|
|
|
|
"zipf_distribution.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::base_internal
|
|
|
|
absl::config
|
|
|
|
absl::core_headers
|
|
|
|
absl::random_internal_generate_real
|
Export of internal Abseil changes
--
7d0468a6610ed85586d5c87fd65de8dac5118923 by Derek Mauro <dmauro@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 313226473
--
1131ef6d116f5ce7d46537a82f300ea06dcaaa53 by Gennadiy Rozental <rogeeff@google.com>:
Migrate internal interface to use mutable references.
PiperOrigin-RevId: 312931131
--
96225212a9f5fbd0b38c71fe65539164992c7c3b by Laramie Leavitt <lar@google.com>:
Remove random/internal/distributions.h
This file was something of an historical artifact. All of the related
code has either been removed or migraged, and so the only remaining type
belongs with uniform_helper.h, as it is used to infer the return type
of the absl::Uniform method in a few cases.
PiperOrigin-RevId: 312878173
--
6dcbd5be58ad425e08740ff64088373ee7fe4a72 by Mark Barolak <mbar@google.com>:
Release the StrFormat test case for Cords to open source.
PiperOrigin-RevId: 312707974
--
34484d18dfb63a0a7ad6e2aaeb570e33592968be by Abseil Team <absl-team@google.com>:
Let Cord::Cord(string&&), Cord::operator=(string&&),
Cord::Append(string&&), and Cord::Prepend(string&&) steal string data
and embed it into the Cord as a single external chunk, instead of
copying it into flat chunks (at most 4083-byte each).
Stealing string data is faster, but it creates a long chunk, which leads
to a higher more memory usage if its subcords are created and outlive
the whole Cord.
These functions revert to copying the data if any of the following
conditions holds:
- string size is at most kMaxBytesToCopy (511), to avoid the overhead
of an external chunk for short strings;
- less than half of string capacity is used, to avoid pinning to much
unused memory.
PiperOrigin-RevId: 312683785
GitOrigin-RevId: 7d0468a6610ed85586d5c87fd65de8dac5118923
Change-Id: If79b5a1dfe6d53a8ddddbc7da84338f11fc4cfa3
5 years ago
|
|
|
absl::random_internal_distribution_caller
|
|
|
|
absl::random_internal_fast_uniform_bits
|
|
|
|
absl::random_internal_fastmath
|
|
|
|
absl::random_internal_iostream_state_saver
|
|
|
|
absl::random_internal_traits
|
|
|
|
absl::random_internal_uniform_helper
|
|
|
|
absl::random_internal_wide_multiply
|
|
|
|
absl::strings
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_seed_gen_exception
|
|
|
|
SRCS
|
|
|
|
"seed_gen_exception.cc"
|
|
|
|
HDRS
|
|
|
|
"seed_gen_exception.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_seed_sequences
|
|
|
|
SRCS
|
|
|
|
"seed_sequences.cc"
|
|
|
|
HDRS
|
|
|
|
"seed_sequences.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::inlined_vector
|
|
|
|
absl::random_internal_nonsecure_base
|
|
|
|
absl::random_internal_pool_urbg
|
|
|
|
absl::random_internal_salted_seed_seq
|
|
|
|
absl::random_internal_seed_material
|
|
|
|
absl::random_seed_gen_exception
|
|
|
|
absl::span
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_bernoulli_distribution_test
|
|
|
|
SRCS
|
|
|
|
"bernoulli_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_random
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_beta_distribution_test
|
|
|
|
SRCS
|
|
|
|
"beta_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
Export of internal Abseil changes
--
e2de21d54c02b6419c57c0f4e2a16b608deca260 by Evan Brown <ezb@google.com>:
Remove the InsertEnd benchmark.
This benchmark has significantly different possible behaviors that can result in misleading metrics. Specifically, we can have a case where we are deallocating the last node in the b-tree in the erase and then allocating a new node in the insert call repeatedly, whereas normally, we end up just inserting/erasing a value from the last node. Also, the name of the benchmark is misleading because it involves an erase and an insert, but the name only mentions the insert.
PiperOrigin-RevId: 360930639
--
51f6bb97b9cbdb809c31b77e93ce080ca3cba9ea by Benjamin Barenblat <bbaren@google.com>:
Stop testing with double-double random variables
On POWER, long double is often represented as a pair of doubles added
together (double-double arithmetic). We’ve already special-cased
double-double arithmetic in a number of tests, but compiler
bugs [1, 2, 3] have now triggered both false positives and false
negatives, which suggests testing with double doubles is unlikely to
yield useful signal. Remove the special casing and detect if we’re on a
double-double system; if so, just don’t test long doubles.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99048
[2] https://bugs.llvm.org/show_bug.cgi?id=49131
[3] https://bugs.llvm.org/show_bug.cgi?id=49132
PiperOrigin-RevId: 360793161
--
07fb4d7932c2f5d711c480f759dacb0be60f975e by Abseil Team <absl-team@google.com>:
internal change
PiperOrigin-RevId: 360712825
GitOrigin-RevId: e2de21d54c02b6419c57c0f4e2a16b608deca260
Change-Id: I98389b5a8789dcc8f35abc00c767e909181665f0
4 years ago
|
|
|
absl::numeric_representation
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_random
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_distributions_test
|
|
|
|
SRCS
|
|
|
|
"distributions_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_random
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_generators_test
|
|
|
|
SRCS
|
|
|
|
"generators_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_log_uniform_int_distribution_test
|
|
|
|
SRCS
|
|
|
|
"log_uniform_int_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_discrete_distribution_test
|
|
|
|
SRCS
|
|
|
|
"discrete_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_poisson_distribution_test
|
|
|
|
SRCS
|
|
|
|
"poisson_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_random
|
|
|
|
absl::core_headers
|
|
|
|
absl::flat_hash_map
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_exponential_distribution_test
|
|
|
|
SRCS
|
|
|
|
"exponential_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
Export of internal Abseil changes
--
e2de21d54c02b6419c57c0f4e2a16b608deca260 by Evan Brown <ezb@google.com>:
Remove the InsertEnd benchmark.
This benchmark has significantly different possible behaviors that can result in misleading metrics. Specifically, we can have a case where we are deallocating the last node in the b-tree in the erase and then allocating a new node in the insert call repeatedly, whereas normally, we end up just inserting/erasing a value from the last node. Also, the name of the benchmark is misleading because it involves an erase and an insert, but the name only mentions the insert.
PiperOrigin-RevId: 360930639
--
51f6bb97b9cbdb809c31b77e93ce080ca3cba9ea by Benjamin Barenblat <bbaren@google.com>:
Stop testing with double-double random variables
On POWER, long double is often represented as a pair of doubles added
together (double-double arithmetic). We’ve already special-cased
double-double arithmetic in a number of tests, but compiler
bugs [1, 2, 3] have now triggered both false positives and false
negatives, which suggests testing with double doubles is unlikely to
yield useful signal. Remove the special casing and detect if we’re on a
double-double system; if so, just don’t test long doubles.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99048
[2] https://bugs.llvm.org/show_bug.cgi?id=49131
[3] https://bugs.llvm.org/show_bug.cgi?id=49132
PiperOrigin-RevId: 360793161
--
07fb4d7932c2f5d711c480f759dacb0be60f975e by Abseil Team <absl-team@google.com>:
internal change
PiperOrigin-RevId: 360712825
GitOrigin-RevId: e2de21d54c02b6419c57c0f4e2a16b608deca260
Change-Id: I98389b5a8789dcc8f35abc00c767e909181665f0
4 years ago
|
|
|
absl::numeric_representation
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_gaussian_distribution_test
|
|
|
|
SRCS
|
|
|
|
"gaussian_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
Export of internal Abseil changes
--
e2de21d54c02b6419c57c0f4e2a16b608deca260 by Evan Brown <ezb@google.com>:
Remove the InsertEnd benchmark.
This benchmark has significantly different possible behaviors that can result in misleading metrics. Specifically, we can have a case where we are deallocating the last node in the b-tree in the erase and then allocating a new node in the insert call repeatedly, whereas normally, we end up just inserting/erasing a value from the last node. Also, the name of the benchmark is misleading because it involves an erase and an insert, but the name only mentions the insert.
PiperOrigin-RevId: 360930639
--
51f6bb97b9cbdb809c31b77e93ce080ca3cba9ea by Benjamin Barenblat <bbaren@google.com>:
Stop testing with double-double random variables
On POWER, long double is often represented as a pair of doubles added
together (double-double arithmetic). We’ve already special-cased
double-double arithmetic in a number of tests, but compiler
bugs [1, 2, 3] have now triggered both false positives and false
negatives, which suggests testing with double doubles is unlikely to
yield useful signal. Remove the special casing and detect if we’re on a
double-double system; if so, just don’t test long doubles.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99048
[2] https://bugs.llvm.org/show_bug.cgi?id=49131
[3] https://bugs.llvm.org/show_bug.cgi?id=49132
PiperOrigin-RevId: 360793161
--
07fb4d7932c2f5d711c480f759dacb0be60f975e by Abseil Team <absl-team@google.com>:
internal change
PiperOrigin-RevId: 360712825
GitOrigin-RevId: e2de21d54c02b6419c57c0f4e2a16b608deca260
Change-Id: I98389b5a8789dcc8f35abc00c767e909181665f0
4 years ago
|
|
|
absl::numeric_representation
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_uniform_int_distribution_test
|
|
|
|
SRCS
|
|
|
|
"uniform_int_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_uniform_real_distribution_test
|
|
|
|
SRCS
|
|
|
|
"uniform_real_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
Export of internal Abseil changes
--
e2de21d54c02b6419c57c0f4e2a16b608deca260 by Evan Brown <ezb@google.com>:
Remove the InsertEnd benchmark.
This benchmark has significantly different possible behaviors that can result in misleading metrics. Specifically, we can have a case where we are deallocating the last node in the b-tree in the erase and then allocating a new node in the insert call repeatedly, whereas normally, we end up just inserting/erasing a value from the last node. Also, the name of the benchmark is misleading because it involves an erase and an insert, but the name only mentions the insert.
PiperOrigin-RevId: 360930639
--
51f6bb97b9cbdb809c31b77e93ce080ca3cba9ea by Benjamin Barenblat <bbaren@google.com>:
Stop testing with double-double random variables
On POWER, long double is often represented as a pair of doubles added
together (double-double arithmetic). We’ve already special-cased
double-double arithmetic in a number of tests, but compiler
bugs [1, 2, 3] have now triggered both false positives and false
negatives, which suggests testing with double doubles is unlikely to
yield useful signal. Remove the special casing and detect if we’re on a
double-double system; if so, just don’t test long doubles.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99048
[2] https://bugs.llvm.org/show_bug.cgi?id=49131
[3] https://bugs.llvm.org/show_bug.cgi?id=49132
PiperOrigin-RevId: 360793161
--
07fb4d7932c2f5d711c480f759dacb0be60f975e by Abseil Team <absl-team@google.com>:
internal change
PiperOrigin-RevId: 360712825
GitOrigin-RevId: e2de21d54c02b6419c57c0f4e2a16b608deca260
Change-Id: I98389b5a8789dcc8f35abc00c767e909181665f0
4 years ago
|
|
|
absl::numeric_representation
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::strings
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_zipf_distribution_test
|
|
|
|
SRCS
|
|
|
|
"zipf_distribution_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::random_internal_sequence_urbg
|
|
|
|
absl::random_random
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_examples_test
|
|
|
|
SRCS
|
|
|
|
"examples_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_random
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_seed_sequences_test
|
|
|
|
SRCS
|
|
|
|
"seed_sequences_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_seed_sequences
|
|
|
|
absl::random_internal_nonsecure_base
|
|
|
|
absl::random_random
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_traits
|
|
|
|
HDRS
|
|
|
|
"internal/traits.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_distribution_caller
|
|
|
|
HDRS
|
|
|
|
"internal/distribution_caller.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
absl::utility
|
|
|
|
absl::fast_type_id
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_fast_uniform_bits
|
|
|
|
HDRS
|
|
|
|
"internal/fast_uniform_bits.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_seed_material
|
|
|
|
SRCS
|
|
|
|
"internal/seed_material.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/seed_material.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
$<$<BOOL:${MINGW}>:"bcrypt">
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
|
|
|
absl::optional
|
|
|
|
absl::random_internal_fast_uniform_bits
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::span
|
|
|
|
absl::strings
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_pool_urbg
|
|
|
|
SRCS
|
|
|
|
"internal/pool_urbg.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/pool_urbg.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::base
|
|
|
|
absl::config
|
|
|
|
absl::core_headers
|
|
|
|
absl::endian
|
|
|
|
absl::random_internal_randen
|
|
|
|
absl::random_internal_seed_material
|
|
|
|
absl::random_internal_traits
|
|
|
|
absl::random_seed_gen_exception
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::span
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_explicit_seed_seq
|
|
|
|
HDRS
|
|
|
|
"internal/random_internal_explicit_seed_seq.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
absl::endian
|
|
|
|
TESTONLY
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_sequence_urbg
|
|
|
|
HDRS
|
|
|
|
"internal/sequence_urbg.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
TESTONLY
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_salted_seed_seq
|
|
|
|
HDRS
|
|
|
|
"internal/salted_seed_seq.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::inlined_vector
|
|
|
|
absl::optional
|
|
|
|
absl::span
|
|
|
|
absl::random_internal_seed_material
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_iostream_state_saver
|
|
|
|
HDRS
|
|
|
|
"internal/iostream_state_saver.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::int128
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_generate_real
|
|
|
|
HDRS
|
|
|
|
"internal/generate_real.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::bits
|
|
|
|
absl::random_internal_fastmath
|
|
|
|
absl::random_internal_traits
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_wide_multiply
|
|
|
|
HDRS
|
|
|
|
"internal/wide_multiply.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::bits
|
|
|
|
absl::config
|
|
|
|
absl::int128
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_fastmath
|
|
|
|
HDRS
|
|
|
|
"internal/fastmath.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::bits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_nonsecure_base
|
|
|
|
HDRS
|
|
|
|
"internal/nonsecure_base.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
|
|
|
absl::inlined_vector
|
|
|
|
absl::random_internal_pool_urbg
|
|
|
|
absl::random_internal_salted_seed_seq
|
|
|
|
absl::random_internal_seed_material
|
|
|
|
absl::span
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_pcg_engine
|
|
|
|
HDRS
|
|
|
|
"internal/pcg_engine.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
absl::int128
|
|
|
|
absl::random_internal_fastmath
|
|
|
|
absl::random_internal_iostream_state_saver
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_engine
|
|
|
|
HDRS
|
|
|
|
"internal/randen_engine.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::endian
|
|
|
|
absl::random_internal_iostream_state_saver
|
|
|
|
absl::random_internal_randen
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_platform
|
|
|
|
HDRS
|
|
|
|
"internal/randen_traits.h"
|
|
|
|
"internal/platform.h"
|
|
|
|
SRCS
|
|
|
|
"internal/randen_round_keys.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_randen
|
|
|
|
SRCS
|
|
|
|
"internal/randen.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/randen.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_platform
|
|
|
|
absl::random_internal_randen_hwaes
|
|
|
|
absl::random_internal_randen_slow
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_slow
|
|
|
|
SRCS
|
|
|
|
"internal/randen_slow.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/randen_slow.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_platform
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_hwaes
|
|
|
|
SRCS
|
|
|
|
"internal/randen_detect.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/randen_detect.h"
|
|
|
|
"internal/randen_hwaes.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
${ABSL_RANDOM_RANDEN_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_platform
|
|
|
|
absl::random_internal_randen_hwaes_impl
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_hwaes_impl
|
|
|
|
SRCS
|
|
|
|
"internal/randen_hwaes.cc"
|
|
|
|
"internal/randen_hwaes.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
${ABSL_RANDOM_RANDEN_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_platform
|
|
|
|
absl::config
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_distribution_test_util
|
|
|
|
SRCS
|
|
|
|
"internal/chi_square.cc"
|
|
|
|
"internal/distribution_test_util.cc"
|
|
|
|
HDRS
|
|
|
|
"internal/chi_square.h"
|
|
|
|
"internal/distribution_test_util.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::config
|
|
|
|
absl::core_headers
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::str_format
|
|
|
|
absl::span
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_traits_test
|
|
|
|
SRCS
|
|
|
|
"internal/traits_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_traits
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_generate_real_test
|
|
|
|
SRCS
|
|
|
|
"internal/generate_real_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::bits
|
|
|
|
absl::flags
|
|
|
|
absl::random_internal_generate_real
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_distribution_test_util_test
|
|
|
|
SRCS
|
|
|
|
"internal/distribution_test_util_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_fastmath_test
|
|
|
|
SRCS
|
|
|
|
"internal/fastmath_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_fastmath
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_explicit_seed_seq_test
|
|
|
|
SRCS
|
|
|
|
"internal/explicit_seed_seq_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_explicit_seed_seq
|
|
|
|
absl::random_seed_sequences
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_salted_seed_seq_test
|
|
|
|
SRCS
|
|
|
|
"internal/salted_seed_seq_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_salted_seed_seq
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_chi_square_test
|
|
|
|
SRCS
|
|
|
|
"internal/chi_square_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::core_headers
|
|
|
|
absl::random_internal_distribution_test_util
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_fast_uniform_bits_test
|
|
|
|
SRCS
|
|
|
|
"internal/fast_uniform_bits_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_fast_uniform_bits
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_nonsecure_base_test
|
|
|
|
SRCS
|
|
|
|
"internal/nonsecure_base_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_nonsecure_base
|
|
|
|
absl::random_random
|
|
|
|
absl::random_distributions
|
|
|
|
absl::random_seed_sequences
|
|
|
|
absl::strings
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_seed_material_test
|
|
|
|
SRCS
|
|
|
|
"internal/seed_material_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_seed_material
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_pool_urbg_test
|
|
|
|
SRCS
|
|
|
|
"internal/pool_urbg_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_pool_urbg
|
|
|
|
absl::span
|
|
|
|
absl::type_traits
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_pcg_engine_test
|
|
|
|
SRCS
|
|
|
|
"internal/pcg_engine_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_explicit_seed_seq
|
|
|
|
absl::random_internal_pcg_engine
|
|
|
|
absl::time
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_engine_test
|
|
|
|
SRCS
|
|
|
|
"internal/randen_engine_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_explicit_seed_seq
|
|
|
|
absl::random_internal_randen_engine
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::strings
|
|
|
|
absl::time
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_test
|
|
|
|
SRCS
|
|
|
|
"internal/randen_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_randen
|
|
|
|
absl::type_traits
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_slow_test
|
|
|
|
SRCS
|
|
|
|
"internal/randen_slow_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::endian
|
|
|
|
absl::random_internal_randen_slow
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_randen_hwaes_test
|
|
|
|
SRCS
|
|
|
|
"internal/randen_hwaes_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_platform
|
|
|
|
absl::random_internal_randen_hwaes
|
|
|
|
absl::random_internal_randen_hwaes_impl
|
|
|
|
absl::raw_logging_internal
|
|
|
|
absl::str_format
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_library(
|
|
|
|
NAME
|
|
|
|
random_internal_uniform_helper
|
|
|
|
HDRS
|
|
|
|
"internal/uniform_helper.h"
|
|
|
|
COPTS
|
|
|
|
${ABSL_DEFAULT_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
Export of internal Abseil changes
--
7d0468a6610ed85586d5c87fd65de8dac5118923 by Derek Mauro <dmauro@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 313226473
--
1131ef6d116f5ce7d46537a82f300ea06dcaaa53 by Gennadiy Rozental <rogeeff@google.com>:
Migrate internal interface to use mutable references.
PiperOrigin-RevId: 312931131
--
96225212a9f5fbd0b38c71fe65539164992c7c3b by Laramie Leavitt <lar@google.com>:
Remove random/internal/distributions.h
This file was something of an historical artifact. All of the related
code has either been removed or migraged, and so the only remaining type
belongs with uniform_helper.h, as it is used to infer the return type
of the absl::Uniform method in a few cases.
PiperOrigin-RevId: 312878173
--
6dcbd5be58ad425e08740ff64088373ee7fe4a72 by Mark Barolak <mbar@google.com>:
Release the StrFormat test case for Cords to open source.
PiperOrigin-RevId: 312707974
--
34484d18dfb63a0a7ad6e2aaeb570e33592968be by Abseil Team <absl-team@google.com>:
Let Cord::Cord(string&&), Cord::operator=(string&&),
Cord::Append(string&&), and Cord::Prepend(string&&) steal string data
and embed it into the Cord as a single external chunk, instead of
copying it into flat chunks (at most 4083-byte each).
Stealing string data is faster, but it creates a long chunk, which leads
to a higher more memory usage if its subcords are created and outlive
the whole Cord.
These functions revert to copying the data if any of the following
conditions holds:
- string size is at most kMaxBytesToCopy (511), to avoid the overhead
of an external chunk for short strings;
- less than half of string capacity is used, to avoid pinning to much
unused memory.
PiperOrigin-RevId: 312683785
GitOrigin-RevId: 7d0468a6610ed85586d5c87fd65de8dac5118923
Change-Id: If79b5a1dfe6d53a8ddddbc7da84338f11fc4cfa3
5 years ago
|
|
|
absl::config
|
|
|
|
absl::random_internal_traits
|
|
|
|
absl::type_traits
|
|
|
|
)
|
|
|
|
|
Export of internal Abseil changes
--
790f9061df340cd900e8da70e66c363f7af3c2eb by Abseil Team <absl-team@google.com>:
Add support for rvalue reference to function types.
PiperOrigin-RevId: 324508531
--
51fe201dbb41a3ebc3d49ff65250b5f464279d43 by Abseil Team <absl-team@google.com>:
Cleaning up function comment style; no substantive change.
PiperOrigin-RevId: 324497401
--
da8595d5266577d0c170528d12f6de17b8affcc2 by Abseil Team <absl-team@google.com>:
Add support for demangling GNU vector types.
PiperOrigin-RevId: 324494559
--
0cb0acf88c1750f6963c9cb85249f9b4f0bd5104 by Abseil Team <absl-team@google.com>:
Add support for thread-local types.
PiperOrigin-RevId: 324491183
--
c676bc8380560599cd26f7f231e04e6be532e904 by Abseil Team <absl-team@google.com>:
Add support for demangling "Du" (char8_t).
PiperOrigin-RevId: 324441607
--
b218bf6467bc62b327214782c881e8224ad91509 by Abseil Team <absl-team@google.com>:
Update doc comments in header of `any.h` to reflect that `absl::variant` has been released.
PiperOrigin-RevId: 324431690
--
e5b579f3f1aa598c1f62e71dba7103b98811de59 by Laramie Leavitt <lar@google.com>:
Bugfix: Fix bounds in absl::Uniform where one of the bounds is min/max.
When absl::Uniform(rng, tag, a, b) is called, the tag is used in conjunction with the type to determine whether or not to manipulate the bounds to make them inclusive or exclusive through the uniform_*_bound functions. Unfortunately, at limits of the interval the function was not well behaved.
The previous implementation used wrapping arithmetic. This causes incorrect bounds computation at the extremes (numeric_limits::min / numeric_limits::max) the bound would wrap.
Improve this situation by:
1/ Changing the uniform_*_bound functions to use saturating arithmetic instead of wrapping, thus in the unsigned case, the upper_bound of IntervalOpenOpen for 0 is now 0, rather than numeric_limits::max, likewise for the lower bound.
2/ Adjusting the hi/lo checks in the distributions. When the interval is empty, such as for absl::Uniform(absl::IntervalOpenOpen, gen, 1, 0), the return value is somewhat nonsensical. Now absl::Uniform more consistently returns the low input rather than any adjusted input. In the above case, that means that 1 is returned rather than 2.
NOTE: Calls to absl::Uniform where the resolved upper bound is < the lower bound are still ill-formed and should be avoided.
3/ Adding better tests.
The underlying uniform_*_distribution classes are not affected.
PiperOrigin-RevId: 324240873
GitOrigin-RevId: 790f9061df340cd900e8da70e66c363f7af3c2eb
Change-Id: I2a2208650ea3135c575e200b868ce1d275069fc8
4 years ago
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_uniform_helper_test
|
|
|
|
SRCS
|
|
|
|
"internal/uniform_helper_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_uniform_helper
|
|
|
|
GTest::gtest_main
|
Export of internal Abseil changes
--
790f9061df340cd900e8da70e66c363f7af3c2eb by Abseil Team <absl-team@google.com>:
Add support for rvalue reference to function types.
PiperOrigin-RevId: 324508531
--
51fe201dbb41a3ebc3d49ff65250b5f464279d43 by Abseil Team <absl-team@google.com>:
Cleaning up function comment style; no substantive change.
PiperOrigin-RevId: 324497401
--
da8595d5266577d0c170528d12f6de17b8affcc2 by Abseil Team <absl-team@google.com>:
Add support for demangling GNU vector types.
PiperOrigin-RevId: 324494559
--
0cb0acf88c1750f6963c9cb85249f9b4f0bd5104 by Abseil Team <absl-team@google.com>:
Add support for thread-local types.
PiperOrigin-RevId: 324491183
--
c676bc8380560599cd26f7f231e04e6be532e904 by Abseil Team <absl-team@google.com>:
Add support for demangling "Du" (char8_t).
PiperOrigin-RevId: 324441607
--
b218bf6467bc62b327214782c881e8224ad91509 by Abseil Team <absl-team@google.com>:
Update doc comments in header of `any.h` to reflect that `absl::variant` has been released.
PiperOrigin-RevId: 324431690
--
e5b579f3f1aa598c1f62e71dba7103b98811de59 by Laramie Leavitt <lar@google.com>:
Bugfix: Fix bounds in absl::Uniform where one of the bounds is min/max.
When absl::Uniform(rng, tag, a, b) is called, the tag is used in conjunction with the type to determine whether or not to manipulate the bounds to make them inclusive or exclusive through the uniform_*_bound functions. Unfortunately, at limits of the interval the function was not well behaved.
The previous implementation used wrapping arithmetic. This causes incorrect bounds computation at the extremes (numeric_limits::min / numeric_limits::max) the bound would wrap.
Improve this situation by:
1/ Changing the uniform_*_bound functions to use saturating arithmetic instead of wrapping, thus in the unsigned case, the upper_bound of IntervalOpenOpen for 0 is now 0, rather than numeric_limits::max, likewise for the lower bound.
2/ Adjusting the hi/lo checks in the distributions. When the interval is empty, such as for absl::Uniform(absl::IntervalOpenOpen, gen, 1, 0), the return value is somewhat nonsensical. Now absl::Uniform more consistently returns the low input rather than any adjusted input. In the above case, that means that 1 is returned rather than 2.
NOTE: Calls to absl::Uniform where the resolved upper bound is < the lower bound are still ill-formed and should be avoided.
3/ Adding better tests.
The underlying uniform_*_distribution classes are not affected.
PiperOrigin-RevId: 324240873
GitOrigin-RevId: 790f9061df340cd900e8da70e66c363f7af3c2eb
Change-Id: I2a2208650ea3135c575e200b868ce1d275069fc8
4 years ago
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_iostream_state_saver_test
|
|
|
|
SRCS
|
|
|
|
"internal/iostream_state_saver_test.cc"
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_iostream_state_saver
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|
|
|
|
|
|
|
|
# Internal-only target, do not depend on directly.
|
|
|
|
absl_cc_test(
|
|
|
|
NAME
|
|
|
|
random_internal_wide_multiply_test
|
|
|
|
SRCS
|
|
|
|
internal/wide_multiply_test.cc
|
|
|
|
COPTS
|
|
|
|
${ABSL_TEST_COPTS}
|
|
|
|
LINKOPTS
|
|
|
|
${ABSL_DEFAULT_LINKOPTS}
|
|
|
|
DEPS
|
|
|
|
absl::random_internal_wide_multiply
|
|
|
|
absl::bits
|
|
|
|
absl::int128
|
|
|
|
GTest::gmock
|
|
|
|
GTest::gtest_main
|
|
|
|
)
|