--
b008f3aaab60f1f0eb5987b50336543cca7151be by Martijn Vels <mvels@google.com>:
Enable Cord Btree as the default Cord implementation.
The Cord Btree implementation has been extensively tested by google. This changes makes the Cord Btree implementation the default implementation. This change should have no impact on current use cases and does not effect any public API or behavior.
PiperOrigin-RevId: 403966449
--
3d82052b5819d1244942c59d5cb4e51d75ada287 by Derek Mauro <dmauro@google.com>:
Add missing CMake alias for gmock_main.
Remove unused variable ABSL_TEST_COMMON_LIBRARIES
Fixes#709Fixes#1043
PiperOrigin-RevId: 403950358
--
86695f6d06915b56d807303c37ee81487998cd58 by Abseil Team <absl-team@google.com>:
FunctionRef is cheaper to construct than a std::function, and the argument is only used during the call, so this is safe. This has the added advantage of allowing the caller to provide a non-movable callable, which can't be converted to a std::function.
PiperOrigin-RevId: 403457615
--
196c1109ba519d4ff00c856bbb4bff754468359f by Abseil Team <absl-team@google.com>:
Internal optimization.
PiperOrigin-RevId: 403413291
GitOrigin-RevId: b008f3aaab60f1f0eb5987b50336543cca7151be
Change-Id: I1665f0efd484f53e0ed22d8940ef2fa60b03cc5b
--
e1a0989213908927f05002ab7697955ad7dc5632 by Martijn Vels <mvels@google.com>:
Introduce CordRepBtreeReader
CordRepBtreeReader provides forward navigation on cord btrees with absolute positional (offset) context, iterating over btree data in absl::string_view chunks.
PiperOrigin-RevId: 387585161
--
206d298e2bccb998731995cb05717b31fa9d90ec by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 387577465
--
f07fafe8a400a4f5dfef186d1a3b61fb7f709fe5 by Abseil Team <absl-team@google.com>:
This change adds debug-build enforcement that the inputs to
absl::c_set_intersection are sorted, which is a prerequisite of
std::set_intersection and required for correct operation of the
algorithm.
PiperOrigin-RevId: 387446657
--
2ca15c6361bb758be7fb88cae82bf8489b4d3364 by Abseil Team <absl-team@google.com>:
Change BadStatusOrAccess::what() to contain status_.ToString()
This ensures that on uncaught exception propagation that would cause program termination, the message contains information on the error which caused the failure.
Lazy initialization of what_ is a value judgement: if most callers are expected to call status() not what(), lazy initialization is correct. If most callers are expected to call what(), it should be initialized on construction to avoid atomic operation overhead.
PiperOrigin-RevId: 387402243
--
3e855084e104dc972a0c4385395e6d8e8465127f by Gennadiy Rozental <rogeeff@google.com>:
LSC: Standardize access to GoogleTest flags on GTEST_FLAG_GET/GTEST_FLAG_SET
This change is necessary to move Googletest flags out of the testing:: namespace without breaking code. These new macros will continue to be required for code that needs to work both inside Google's monorepo and outside in OSS, but can be used anywhere inside the monorepo.
PiperOrigin-RevId: 387396025
--
1ccf5895a15059ef689af5c4817d7b84f73190be by Gennadiy Rozental <rogeeff@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 387388496
GitOrigin-RevId: e1a0989213908927f05002ab7697955ad7dc5632
Change-Id: I3606d9ce29d909a3555e662e9df564202cf5068d
--
373171b46238585c818cec37af26959f5412f813 by Abseil Team <absl-team@google.com>:
Build with -Wl,-no-undefined.
PiperOrigin-RevId: 381276748
--
da32624792d2948fe83d0ce58794d505799ab5d0 by Benjamin Barenblat <bbaren@google.com>:
s/round/rint/ in exponential_biased
`rint` differs from `round` in that it uses the current FPU rounding
mode. It’s thus potentially faster, since it doesn’t have to save and
restore FPU state. It also is more reflective of developer intent –
most developers expect all FPU operations to use the current rounding
mode, and having exponential_biased follow that rule seems ideal.
PiperOrigin-RevId: 381268264
--
8f860253a4283d2cc8230fe98d7cdf7bcb3e05f1 by Abseil Team <absl-team@google.com>:
Internal change.
PiperOrigin-RevId: 381264180
GitOrigin-RevId: 373171b46238585c818cec37af26959f5412f813
Change-Id: Iefe60b15c80318a7707e0c32159ac004bfa26d72
--
ca5ce10fa5286f2bfb51890a37b547308b8d6d93 by Benjamin Barenblat <bbaren@google.com>:
Skip floating-point edge-case tests when using an x87
32-bit Intel CPUs use 80-bit floats for intermediate values, which can
change the results of floating point computations from what we normally
expect. Identify tests that are sensitive to the x87, and skip them when
we’re on 32-bit Intel.
PiperOrigin-RevId: 378722613
--
e5798bb017854e7f3b6d8721fed7dd553642b83d by Abseil Team <absl-team@google.com>:
Build without -Wl,-no-undefined.
PiperOrigin-RevId: 378690619
--
3587685a2c932405e401546ec383abcfbf8495c8 by Derek Mauro <dmauro@google.com>:
Update CCTZ BUILD file.
PiperOrigin-RevId: 378688996
--
06c7841b2bf8851410b716823b7ff9b42d86085e by Derek Mauro <dmauro@google.com>:
Change the CMake install test to use installed version of GoogleTest
PiperOrigin-RevId: 378537383
--
eaa8122a7062c56bed80e806344cca0c8325bf6f by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 378525523
--
381f505cce894b8eec031a541855650c4aa46e64 by Abseil Team <absl-team@google.com>:
Mark btree_container::clear() with the ABSL_ATTRIBUTE_REINITIALIZES attribute.
This prevents false positives in the clang-tidy check bugprone-use-after-move;
it allows clear() to be called on a moved-from btree_container without any
warnings, and the btree_container will thereafter be regarded as initialized again.
PiperOrigin-RevId: 378472690
GitOrigin-RevId: ca5ce10fa5286f2bfb51890a37b547308b8d6d93
Change-Id: I4267246f418538c5baacb562d1a40213fb13f246
--
23500704dd7c2642fad49f88c07ce41ebaab12e4 by Abseil Team <absl-team@google.com>:
Change fetch_add() to store(1 + load())
As there is only one concurrent writer to the Info struct, we can avoid using
the more expensive fetch_add() function.
PiperOrigin-RevId: 329523785
--
79e5018dba2e117ad89b76367165a604b3f24045 by Abseil Team <absl-team@google.com>:
Record rehash count in hashtablez
This will help identify which containers could benefit from a reserve call.
PiperOrigin-RevId: 329510552
--
e327e54b805d67556f934fa7f7dc2d4e72fa066a by Abseil Team <absl-team@google.com>:
Fix -Wsign-compare issues.
These lines could theoretically have overflowed in cases of very large stack
traces etc. Very unlikely, but this was causing warnings when built with
-Wsign-compare, which we intend to enable with Chromium.
In none of these three cases is it trivial to switch to a range-based for loop.
PiperOrigin-RevId: 329415195
--
08aca2fc75e8b3ad1201849987b64148fe48f283 by Xiaoyi Zhang <zhangxy@google.com>:
Release absl::StatusOr.
PiperOrigin-RevId: 329353348
--
bf4d2a7f8b089e2adf14d32b0e39de0a981005c3 by Xiaoyi Zhang <zhangxy@google.com>:
Internal change
PiperOrigin-RevId: 329337031
--
42fa7d2fb993bbfc344954227cf1eeb801eca065 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 329099807
GitOrigin-RevId: 23500704dd7c2642fad49f88c07ce41ebaab12e4
Change-Id: I6713e4ca3bb0ab2ced5e487827ae036ab8ac61f1
--
9f746b79e16d36dba908ed9e2a586d890fe54acc by Derek Mauro <dmauro@google.com>:
Remove the Bazel mirror URL that we use in our WORKSPACE file
This doesn't appear to be supported. We use --distdir caching in our tests.
PiperOrigin-RevId: 327634738
--
e1f6f54830c415fc8bb8dc14483fae4cf9713d75 by Abseil Team <absl-team@google.com>:
Removing comments following license() rules as they are rarely useful, redundant with LICENSE files, and tend to fall out of date.
PiperOrigin-RevId: 327504063
--
b59c076638a57a74a3f8475f1dee8b536e32a15f by Gennadiy Rozental <rogeeff@google.com>:
Change GetAllFlags API to return a collection of mutable flag handles.
This will make this interface on par with FindCommandLineFlag and allow to call
CommandLineFlag::ParseFrom on the handle returned by GetAllFlags.
PiperOrigin-RevId: 327499084
--
bbf56b3c4a1d908d95e5a52aba38b1984151efff by Gennadiy Rozental <rogeeff@google.com>:
Make raw_hash_set compile when AllocTraits::propagate_on_container_swap is false.
PiperOrigin-RevId: 327371107
--
837f62c85ea65c1d6b847a75816198c625fe62ff by Abseil Team <absl-team@google.com>:
On macOS, `mem_alloc` is defined like this:
rpc/types.h:86:#define mem_alloc(bsize) calloc(1, bsize)
So if that file is included before container_memory.h, the variable mem_alloc
may never get defined. This is fixed by using a different name.
PiperOrigin-RevId: 327360224
--
aa8f5528382c0d01239ce75b645723aaf7e1ef46 by Gennadiy Rozental <rogeeff@google.com>:
Release of absl::GetAllFlags API.
PiperOrigin-RevId: 327275943
GitOrigin-RevId: 9f746b79e16d36dba908ed9e2a586d890fe54acc
Change-Id: I99c5c87dd1712bf8df9a52397b0c1e400a3c3447
--
0c8282d75798c77733eee6167870bcc6acc0bfc1 by Evan Brown <ezb@google.com>:
Provide mutable access to the key in node handles using std::launder when compiled with C++17 or later.
Also, document why we can't provide mutable access to the key without C++17.
Note: we use Policy::mutable_key() because btree already uses Policy::key() internally to get const key access, and we want to avoid calling std::launder unless we need mutable access to the key.
PiperOrigin-RevId: 326519000
--
8018d0c3044400f0a731b0d2d00b606742c98818 by Xiaoyi Zhang <zhangxy@google.com>:
Move `Status` internal symbols from the public header into an internal header file.
PiperOrigin-RevId: 326471847
--
87a7644864ba7c003b0611898aaba1b71c840376 by Abseil Team <absl-team@google.com>:
Avoid a costly divide (the division accounts for 10% of the time spent in the function).
When the division is signed, the compiler has to generate a div. When it is unsigned, it can generate a shift: https://godbolt.org/z/vGfTv4. As per the test above the div, we know that the value is unsigned.
PiperOrigin-RevId: 326453275
GitOrigin-RevId: 0c8282d75798c77733eee6167870bcc6acc0bfc1
Change-Id: I0a953558358055ab3dc6a533d8930698509b1195
--
f012012ef78234a6a4585321b67d7b7c92ebc266 by Laramie Leavitt <lar@google.com>:
Slight restructuring of absl/random/internal randen implementation.
Convert round-keys.inc into randen_round_keys.cc file.
Consistently use a 128-bit pointer type for internal method parameters. This allows simpler pointer arithmetic in C++ & permits removal of some constants and casts.
Remove some redundancy in comments & constexpr variables. Specifically, all references to Randen algorithm parameters use RandenTraits; duplication in RandenSlow removed.
PiperOrigin-RevId: 312190313
--
dc8b42e054046741e9ed65335bfdface997c6063 by Abseil Team <absl-team@google.com>:
Internal change.
PiperOrigin-RevId: 312167304
--
f13d248fafaf206492c1362c3574031aea3abaf7 by Matthew Brown <matthewbr@google.com>:
Cleanup StrFormat extensions a little.
PiperOrigin-RevId: 312166336
--
9d9117589667afe2332bb7ad42bc967ca7c54502 by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 312105213
--
9a12b9b3aa0e59b8ee6cf9408ed0029045543a9b by Abseil Team <absl-team@google.com>:
Complete IGNORE_TYPE macro renaming.
PiperOrigin-RevId: 311999699
--
64756f20d61021d999bd0d4c15e9ad3857382f57 by Gennadiy Rozental <rogeeff@google.com>:
Switch to fixed bytes specific default value.
This fixes the Abseil Flags for big endian platforms.
PiperOrigin-RevId: 311844448
--
bdbe6b5b29791dbc3816ada1828458b3010ff1e9 by Laramie Leavitt <lar@google.com>:
Change many distribution tests to use pcg_engine as a deterministic source of entropy.
It's reasonable to test that the BitGen itself has good entropy, however when testing the cross product of all random distributions x all the architecture variations x all submitted changes results in a large number of tests. In order to account for these failures while still using good entropy requires that our allowed sigma need to account for all of these independent tests.
Our current sigma values are too restrictive, and we see a lot of failures, so we have to either relax the sigma values or convert some of the statistical tests to use deterministic values.
This changelist does the latter.
PiperOrigin-RevId: 311840096
GitOrigin-RevId: f012012ef78234a6a4585321b67d7b7c92ebc266
Change-Id: Ic84886f38ff30d7d72c126e9b63c9a61eb729a1a