Commit Graph

  • 7ece455c25 Disallow using a hash function whose return type is smaller than size_t. Evan Brown 2025-07-24 15:24:05 -07:00
  • 57abc0ee3f Optimize CRC-32C extension by zeroes Abseil Team 2025-07-24 14:03:26 -07:00
  • 342afd0767 Deduplicate stack trace implementations in stacktrace.cc Abseil Team 2025-07-24 09:20:14 -07:00
  • 8a3065cd5c Align types of location_table_ and mapping_table_ keys (-Wshorten-64-to-32). Abseil Team 2025-07-24 08:22:36 -07:00
  • 6ad95e1535 Move SigSafeArena() out to absl/base/internal/low_level_alloc.h Abseil Team 2025-07-23 19:12:00 -07:00
  • 57bc7edd87 Allow CHECK_<OP> variants to be used with unprintable types. Abseil Team 2025-07-23 13:36:17 -07:00
  • 63d67e9593 Import of CCTZ from GitHub. Derek Mauro 2025-07-23 10:28:13 -07:00
  • 18dd270ff9 Adds required load statements for C++ rules to BUILD and bzl files. Abseil Team 2025-07-23 08:58:50 -07:00
  • 64a9eafe33 Disable sanitizer bounds checking in ComputeZeroConstant. Abseil Team 2025-07-21 15:46:00 -07:00
  • 454205a618 Roll back NDK weak symbol mode for backtrace() due to internal test breakage Krzysztof Kosiński 2025-07-18 13:51:25 -07:00
  • b7c2f08f18 Add converter for extracting SwissMap profile information into a https://github.com/google/pprof suitable format for inspection. Chris Kennelly 2025-07-18 10:13:50 -07:00
  • f2dd73d7a8 Allocate memory for frames and sizes during stack trace fix-up when no memory is provided Abseil Team 2025-07-17 12:07:36 -07:00
  • 9f1244cb3f Support NDK weak symbol mode for backtrace() on Android. Krzysztof Kosiński 2025-07-16 17:23:35 -07:00
  • c952a1d614 Change skip_empty_or_deleted to not use groups. Evan Brown 2025-07-16 13:47:06 -07:00
  • a4e1324b44 Fix bug of dereferencing invalidated iterator in test case. Evan Brown 2025-07-16 13:46:45 -07:00
  • 3ce04f9f62 Refactor: split erase_meta_only into large and small versions. Evan Brown 2025-07-16 09:53:33 -07:00
  • c9db0651b8 Fix a TODO to use std::is_nothrow_swappable when it became available. Evan Brown 2025-07-16 08:46:44 -07:00
  • 0f36025a0e Clean up the testing of alternate options that were removed in previous changes Derek Mauro 2025-07-16 07:01:49 -07:00
  • af00a9295f Only use generic stacktrace when ABSL_HAVE_THREAD_LOCAL. Krzysztof Kosiński 2025-07-14 23:12:53 -07:00
  • 878361312d Automated Code Change Abseil Team 2025-07-14 14:59:44 -07:00
  • f8b473612e Add triviality tests for absl::Span Abseil Team 2025-07-14 13:43:05 -07:00
  • 7be8bbbd9a Loosen the PointerAlignment test to allow up to 5 stuck bits to avoid flakiness. Evan Brown 2025-07-14 13:11:33 -07:00
  • f35d6ad413 Prevent conversion constructions from absl::Span to itself Abseil Team 2025-07-14 09:22:23 -07:00
  • 492fccd3ba Skip flaky expectations in waiter_test for MSVC. Evan Brown 2025-07-11 11:00:57 -07:00
  • 415dccbf09 Refactor: call AssertIsFull from iterator::assert_is_full to avoid passing the same arguments repeatedly. Evan Brown 2025-07-11 09:50:47 -07:00
  • f6bd67a2a3 In AssertSameContainer, remove the logic checking for whether the iterators are from SOO tables or not since we don't use it to generate a more informative debug message. Evan Brown 2025-07-11 08:42:45 -07:00
  • f76c21fad2 Remove unused NonIterableBitMask::HighestBitSet function. Evan Brown 2025-07-11 01:50:19 -07:00
  • 118924e83d Refactor: move iterator unchecked_* members before data members to comply with Google C++ style guide. Evan Brown 2025-07-11 01:19:21 -07:00
  • 6cd1763d9f Mix pointers once instead of twice now that we've improved mixing on 32-bit platforms and improved the kMul constant. Evan Brown 2025-07-10 10:07:59 -07:00
  • 3e72bdae2b Remove unused utility functions/constants. Vitaly Goldshteyn 2025-07-10 00:46:58 -07:00
  • fb2340658e Revert a change for breaking downstream third party libs Abseil Team 2025-07-09 19:17:45 -07:00
  • d851be6f01 Remove unneeded include from cord_rep_btree_navigator.h Abseil Team 2025-07-09 16:46:06 -07:00
  • 733069ae18 Refactor: move find_first_non_full into raw_hash_set.cc. Evan Brown 2025-07-09 08:11:41 -07:00
  • cf2b48cf45 Perform stronger mixing on 32-bit platforms and enable the LowEntropyStrings test. Evan Brown 2025-07-08 09:25:22 -07:00
  • ea50280aeb Include deallocated caller-provided size in delete hooks. Chris Kennelly 2025-07-07 15:27:31 -07:00
  • a09b217e30 Roll back one more time: In debug mode, assert that the probe sequence isn't excessively long. Vitaly Goldshteyn 2025-07-07 05:49:35 -07:00
  • 2ecc1dd00c Allow a std::move of delimiter_ to happen in ByString::ByString(ByString&&). Right now the move ctor is making a copy because the source object is const. Abseil Team 2025-07-03 00:48:37 -07:00
  • aad15c0e5b Assume that control bytes don't alias CommonFields. Evan Brown 2025-07-02 09:39:21 -07:00
  • ddbb5170bb Consistently use [[maybe_unused]] in raw_hash_set.h for better compiler warning compatibility. Krzysztof Kosiński 2025-07-01 18:31:16 -07:00
  • 4471fbf436 Roll forward: In debug mode, assert that the probe sequence isn't excessively long. Evan Brown 2025-07-01 13:36:53 -07:00
  • 43a3a66d9d Add a new test for hash collisions for short strings when PrecombineLengthMix has low quality. Evan Brown 2025-07-01 08:23:44 -07:00
  • d20bae7f98 Refactor: define CombineRawImpl for repeated Mix(state ^ value, kMul) operations. Evan Brown 2025-06-30 10:51:14 -07:00
  • 21db85548d Automated Code Change Abseil Team 2025-06-30 04:01:12 -07:00
  • d4e6b8cdb9 Mark hash_test as large so that the timeout is increased. Evan Brown 2025-06-27 14:43:23 -07:00
  • bca1ec088c Change the value of kMul to have higher entropy and prevent collisions when keys are aligned integers or pointers. Evan Brown 2025-06-27 09:11:53 -07:00
  • c6268453ad Fix LIFETIME annotations for op*/op->/value operators for reference types. Samuel Benzaquen 2025-06-27 08:10:12 -07:00
  • 2a2d6aad62 Update StatusOr to support lvalue reference value types. Samuel Benzaquen 2025-06-26 08:32:05 -07:00
  • 76a4803044 Rollback debug assertion that the probe sequence isn't excessively long. Abseil Team 2025-06-25 06:47:07 -07:00
  • 2c5af19487 AnyInvocable: Fix operator==/!= comments Jesse Rosenstock 2025-06-25 06:37:11 -07:00
  • 7e1f86ff30 In debug mode, assert that the probe sequence isn't excessively long. Evan Brown 2025-06-24 13:32:03 -07:00
  • aed3ddd948 Improve NaN handling in absl::Duration arithmetic. Tomas Dzetkulic 2025-06-23 14:52:10 -07:00
  • 4e5beaf3b8 Change PrecombineLengthMix to sample data from kStaticRandomData. Evan Brown 2025-06-23 12:52:24 -07:00
  • 2b320cbfaa Fix includes and fuse constructors of SpinLock. Abseil Team 2025-06-23 10:31:23 -07:00
  • b40953d886 Enable operator== for StatusOr only if the contained type is equality-comparable Abseil Team 2025-06-23 03:04:04 -07:00
  • f60bfd822e Enable SIMD memcpy-crc on ARM cores. Abseil Team 2025-06-20 10:12:46 -07:00
  • 9e7f3c020b Improve mixing on 32-bit platforms. Evan Brown 2025-06-20 09:54:09 -07:00
  • 212fcb96c8 Change DurationFromDouble to return -InfiniteDuration() for all NaNs. Tomas Dzetkulic 2025-06-19 06:42:48 -07:00
  • 278d661fb6 Change return type of hash internal Seed to size_t from uint64_t Abseil Team 2025-06-19 02:57:07 -07:00
  • 6ee80c1d4e CMake: Add a fatal error when the compiler defaults to or is set to a C++ language standard prior to C++17. Derek Mauro 2025-06-18 11:30:06 -07:00
  • cfe791308d Make bool true hash be ~size_t{} instead of 1 so that all bits are different between true/false instead of only one. Evan Brown 2025-06-18 09:28:35 -07:00
  • 23d40c5dbd Automated Code Change Abseil Team 2025-06-17 10:13:19 -07:00
  • 76bb24329e Abseil LTS Branch, May 2025, Patch 1 (#1900) 20250512.1 Derek Mauro 2025-06-17 10:48:08 -04:00
  • 52227846bb Pass swisstable seed as seed to absl::Hash so we can save an XOR in H1. Evan Brown 2025-06-16 10:18:49 -07:00
  • 888c22115f Add support for scoped enumerations in CHECK_XX(). Ryan Buckley 2025-06-13 09:54:28 -07:00
  • ca47784155 Revert no-inline on Voidify::operator&&() -- caused unexpected binary size growth Abseil Team 2025-06-12 14:43:31 -07:00
  • 58e9ca14e6 Mark Voidify::operator&&() as no-inline. This improves stack trace for LOG(FATAL) with optimization on. Abseil Team 2025-06-12 09:04:19 -07:00
  • 2ea5334068 Refactor long strings hash computations and move len <= PiecewiseChunkSize() out of the line to keep only one function call in the inlined hash code. Vitaly Goldshteyn 2025-06-12 08:47:30 -07:00
  • f8288c18a1 rotr/rotl: Fix undefined behavior when passing INT_MIN as the number of positions to rotate by Derek Mauro 2025-06-11 14:20:51 -07:00
  • 9ac131cf7d Reorder members of MixingHashState to comply with Google C++ style guide ordering of type declarations, static constants, ctors, non-ctor functions. Evan Brown 2025-06-10 09:35:00 -07:00
  • 76fd1e96c7 Delete unused function ShouldSampleHashtablezInfoOnResize. Evan Brown 2025-06-09 14:27:06 -07:00
  • 9c02e2cbe4 Remove redundant comments that just name the following symbol without providing additional information. Evan Brown 2025-06-06 12:11:16 -07:00
  • daff1b1a9c Remove unnecessary modification of growth info in small table case. Vitaly Goldshteyn 2025-06-05 15:20:43 -07:00
  • f8c9a088d6 Suppress CFI violation on VDSO call. Abseil Team 2025-06-05 10:08:54 -07:00
  • 34593c16e7 Replace WeakMix usage with Mix and change H2 to use the most significant 7 bits - saving 1 cycle in H1. Evan Brown 2025-06-04 10:41:07 -07:00
  • e430bb9b08 Fix -Wundef warning Derek Mauro 2025-06-04 09:29:31 -07:00
  • 669459108d Fix conditional constexpr in ToInt64{Nano|Micro|Milli}seconds under GCC7 and GCC8 using an else clause as a workaround Derek Mauro 2025-06-03 11:56:42 -07:00
  • 9e51ba2d4e Enable CompressedTupleTest.NestedEbo test case. Evan Brown 2025-06-03 09:53:46 -07:00
  • ccefe1eee0 Lift restriction on using EBCO[1] for nested CompressedTuples. The current implementation of CompressedTuple explicitly disallows EBCO for cases where CompressedTuples are nested. This is because the implentation for a tuple with EBCO-compatible element T inherits from Storage<T, I>, where I is the index of T in the tuple, and Abseil Team 2025-06-03 08:31:50 -07:00
  • 169c953aab absl::string_view: assert against (data() == nullptr && size() != 0) Derek Mauro 2025-06-02 10:16:25 -07:00
  • e1ff6a3339 Fix a false nullability warning in [Q]CHECK_OK by replacing nullptr with an empty char* Abseil Team 2025-05-30 14:49:48 -07:00
  • fbb1d06795 Make combine_contiguous to mix length in a weak way by adding size << 24, so that we can avoid a separate mixing of size later. The empty range is mixing 0x57 byte. Vitaly Goldshteyn 2025-05-30 12:00:14 -07:00
  • 1f10c0bee3 Add a test case that -1.0 and 1.0 have different hashes. Evan Brown 2025-05-30 10:05:04 -07:00
  • 2dd8036891 Update CI to a more recent Clang on Linux x86-64 Derek Mauro 2025-05-29 09:16:34 -07:00
  • 61103b948d absl::string_view: Add a debug assert to the single-argument constructor that the argument is not nullptr. Derek Mauro 2025-05-29 09:01:26 -07:00
  • 4d8e467f28 Fix CI on macOS Sequoia Derek Mauro 2025-05-29 07:46:46 -07:00
  • 7e67f4ffaa Use Xcode 16.3 for testing Derek Mauro 2025-05-29 06:00:34 -07:00
  • 3006ff8b41 Use a proper fix instead of a workaround for a parameter annotated absl_nonnull since the latest Clang can see through the workaround Derek Mauro 2025-05-28 14:55:27 -07:00
  • 8a5cefc62a Assert that SetCtrl isn't called on small tables - there are no control bytes in such cases. Evan Brown 2025-05-28 12:38:35 -07:00
  • 94be0866ac Use MaskFullOrSentinel in skip_empty_or_deleted. Vitaly Goldshteyn 2025-05-27 14:16:17 -07:00
  • 501d0a586e Reduce flakiness in MockDistributions.Examples test case. Evan Brown 2025-05-27 13:36:37 -07:00
  • 942af4809b Rename PrepareInsertNonSoo to PrepareInsertLarge now that it's no longer used in all non-SOO cases. Evan Brown 2025-05-27 12:31:37 -07:00
  • 8718e816c5 PR #1895: use c++17 in podspec Hannah Shi 2025-05-27 11:32:33 -07:00
  • bd4bfed9ba Avoid hashing the key in prefetch() for small tables. Evan Brown 2025-05-27 10:45:01 -07:00
  • e4c43850ad Remove template alias nullability annotations. Abseil Team 2025-05-22 18:22:20 -07:00
  • 9d51fa7835 Add Group::MaskFullOrSentinel implementation without usage. Vitaly Goldshteyn 2025-05-21 15:29:38 -07:00
  • 4e94319de3 Move hashtable_control_bytes tests into their own file. Vitaly Goldshteyn 2025-05-21 10:47:33 -07:00
  • 282d0fcc08 Simplify calls to EqualElement by introducing equal_to helper function. Vitaly Goldshteyn 2025-05-20 12:15:01 -07:00
  • 5914831e6d Do common.increment_size() directly in SmallNonSooPrepareInsert if inserting to reserved 1 element table. Vitaly Goldshteyn 2025-05-20 10:38:53 -07:00
  • 0c0879586e Import of CCTZ from GitHub. Abseil Team 2025-05-20 08:23:21 -07:00
  • 05ba922c12 Small cleanup of infoz processing to get the logic out of the line or removed. Vitaly Goldshteyn 2025-05-20 06:14:25 -07:00