From 926bfeb9fff223429c12224b7514243886323e8d Mon Sep 17 00:00:00 2001 From: Abseil Team Date: Thu, 29 Nov 2018 10:43:56 -0800 Subject: Export of internal Abseil changes. -- 008301e65c323ea0b78e4a92221bf43f7f01e358 by Abseil Team : Add k...Pad17 through 20 PadSpec enum values. PiperOrigin-RevId: 223371590 -- ad0580b0a215257044e090181630793b7e5e9ab0 by Jon Cohen : Make the table in the prefetch check not fit in L2 cache. This should help deflake the test. PiperOrigin-RevId: 223224646 -- 77c76690626b89944946d01da5e3428b763103e8 by Abseil Team : Fixed typo in container by replacing asbl::Hash with absl::Hash. PiperOrigin-RevId: 223083789 GitOrigin-RevId: 008301e65c323ea0b78e4a92221bf43f7f01e358 Change-Id: I81399f09cd82fbb27bcfec4c1517bb5d2fd07f3b --- absl/container/flat_hash_map.h | 2 +- absl/container/flat_hash_set.h | 2 +- absl/container/internal/raw_hash_set_test.cc | 3 ++- absl/container/node_hash_map.h | 2 +- absl/container/node_hash_set.h | 2 +- absl/strings/str_cat.h | 8 ++++++++ absl/strings/str_cat_test.cc | 8 ++++---- 7 files changed, 18 insertions(+), 9 deletions(-) diff --git a/absl/container/flat_hash_map.h b/absl/container/flat_hash_map.h index 7bc2138..cc3d8b6 100644 --- a/absl/container/flat_hash_map.h +++ b/absl/container/flat_hash_map.h @@ -70,7 +70,7 @@ struct FlatHashMapPolicy; // By default, `flat_hash_map` uses the `absl::Hash` hashing framework. // All fundamental and Abseil types that support the `absl::Hash` framework have // a compatible equality operator for comparing insertions into `flat_hash_map`. -// If your type is not yet supported by the `asbl::Hash` framework, see +// If your type is not yet supported by the `absl::Hash` framework, see // absl/hash/hash.h for information on extending Abseil hashing to user-defined // types. // diff --git a/absl/container/flat_hash_set.h b/absl/container/flat_hash_set.h index f7c1aca..5ea6a81 100644 --- a/absl/container/flat_hash_set.h +++ b/absl/container/flat_hash_set.h @@ -67,7 +67,7 @@ struct FlatHashSetPolicy; // By default, `flat_hash_set` uses the `absl::Hash` hashing framework. All // fundamental and Abseil types that support the `absl::Hash` framework have a // compatible equality operator for comparing insertions into `flat_hash_map`. -// If your type is not yet supported by the `asbl::Hash` framework, see +// If your type is not yet supported by the `absl::Hash` framework, see // absl/hash/hash.h for information on extending Abseil hashing to user-defined // types. // diff --git a/absl/container/internal/raw_hash_set_test.cc b/absl/container/internal/raw_hash_set_test.cc index 76aba31..5ad4904 100644 --- a/absl/container/internal/raw_hash_set_test.cc +++ b/absl/container/internal/raw_hash_set_test.cc @@ -390,7 +390,8 @@ TEST(Table, Prefetch) { !defined(UNDEFINED_BEHAVIOR_SANITIZER) const auto now = [] { return absl::base_internal::CycleClock::Now(); }; - static constexpr int size = 1000000; + // Make size enough to not fit in L2 cache (16.7 Mb) + static constexpr int size = 1 << 22; for (int i = 0; i < size; ++i) t.insert(i); int64_t no_prefetch = 0, prefetch = 0; diff --git a/absl/container/node_hash_map.h b/absl/container/node_hash_map.h index 18d3f28..bd53c59 100644 --- a/absl/container/node_hash_map.h +++ b/absl/container/node_hash_map.h @@ -72,7 +72,7 @@ class NodeHashMapPolicy; // By default, `node_hash_map` uses the `absl::Hash` hashing framework. // All fundamental and Abseil types that support the `absl::Hash` framework have // a compatible equality operator for comparing insertions into `node_hash_map`. -// If your type is not yet supported by the `asbl::Hash` framework, see +// If your type is not yet supported by the `absl::Hash` framework, see // absl/hash/hash.h for information on extending Abseil hashing to user-defined // types. // diff --git a/absl/container/node_hash_set.h b/absl/container/node_hash_set.h index e0897c9..e403446 100644 --- a/absl/container/node_hash_set.h +++ b/absl/container/node_hash_set.h @@ -68,7 +68,7 @@ struct NodeHashSetPolicy; // By default, `node_hash_set` uses the `absl::Hash` hashing framework. // All fundamental and Abseil types that support the `absl::Hash` framework have // a compatible equality operator for comparing insertions into `node_hash_set`. -// If your type is not yet supported by the `asbl::Hash` framework, see +// If your type is not yet supported by the `absl::Hash` framework, see // absl/hash/hash.h for information on extending Abseil hashing to user-defined // types. // diff --git a/absl/strings/str_cat.h b/absl/strings/str_cat.h index da9ed9a..8ba0592 100644 --- a/absl/strings/str_cat.h +++ b/absl/strings/str_cat.h @@ -97,6 +97,10 @@ enum PadSpec : uint8_t { kZeroPad14, kZeroPad15, kZeroPad16, + kZeroPad17, + kZeroPad18, + kZeroPad19, + kZeroPad20, kSpacePad2 = kZeroPad2 + 64, kSpacePad3, @@ -113,6 +117,10 @@ enum PadSpec : uint8_t { kSpacePad14, kSpacePad15, kSpacePad16, + kSpacePad17, + kSpacePad18, + kSpacePad19, + kSpacePad20, }; // ----------------------------------------------------------------------------- diff --git a/absl/strings/str_cat_test.cc b/absl/strings/str_cat_test.cc index 555d8db..0714107 100644 --- a/absl/strings/str_cat_test.cc +++ b/absl/strings/str_cat_test.cc @@ -427,7 +427,7 @@ void CheckHex(IntType v, const char* nopad_format, const char* zeropad_format, snprintf(expected, sizeof(expected), nopad_format, v); EXPECT_EQ(expected, actual) << " decimal value " << v; - for (int spec = absl::kZeroPad2; spec <= absl::kZeroPad16; ++spec) { + for (int spec = absl::kZeroPad2; spec <= absl::kZeroPad20; ++spec) { std::string actual = absl::StrCat(absl::Hex(v, static_cast(spec))); snprintf(expected, sizeof(expected), zeropad_format, @@ -435,7 +435,7 @@ void CheckHex(IntType v, const char* nopad_format, const char* zeropad_format, EXPECT_EQ(expected, actual) << " decimal value " << v; } - for (int spec = absl::kSpacePad2; spec <= absl::kSpacePad16; ++spec) { + for (int spec = absl::kSpacePad2; spec <= absl::kSpacePad20; ++spec) { std::string actual = absl::StrCat(absl::Hex(v, static_cast(spec))); snprintf(expected, sizeof(expected), spacepad_format, @@ -453,7 +453,7 @@ void CheckDec(IntType v, const char* nopad_format, const char* zeropad_format, snprintf(expected, sizeof(expected), nopad_format, v); EXPECT_EQ(expected, actual) << " decimal value " << v; - for (int spec = absl::kZeroPad2; spec <= absl::kZeroPad16; ++spec) { + for (int spec = absl::kZeroPad2; spec <= absl::kZeroPad20; ++spec) { std::string actual = absl::StrCat(absl::Dec(v, static_cast(spec))); snprintf(expected, sizeof(expected), zeropad_format, @@ -463,7 +463,7 @@ void CheckDec(IntType v, const char* nopad_format, const char* zeropad_format, << "' digits " << (spec - absl::kZeroPad2 + 2); } - for (int spec = absl::kSpacePad2; spec <= absl::kSpacePad16; ++spec) { + for (int spec = absl::kSpacePad2; spec <= absl::kSpacePad20; ++spec) { std::string actual = absl::StrCat(absl::Dec(v, static_cast(spec))); snprintf(expected, sizeof(expected), spacepad_format, -- cgit v1.2.3