| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\
| |
| |
| |
| | |
PiperOrigin-RevId: 538778978
Change-Id: I0c04b09987eb4d97892825e3c994656d4e300f60
|
| | |
|
|\ \
| |/
|/|
| |
| | |
PiperOrigin-RevId: 538488164
Change-Id: I680dcbc2f27dca3beba416b3cd0a55943751cf4c
|
| |
| |
| |
| |
| |
| |
| |
| | |
The AIX assembler doesn't support numeric labels. Use a relative jump
instead to fix
Assembler:
/tmp/ccw16WCt.s: line 25: Error In Syntax
|
| |
| |
| |
| |
| |
| |
| | |
Motivation is for WebAssembly to avoid perror which in turn requires file system emulation.
PiperOrigin-RevId: 536737294
Change-Id: I5177064c9451fb630ec5e9d0c0a0679fabd98afa
|
| |
| |
| |
| |
| |
| |
| | |
The fallback isn't totally portable, even within POSIX, but we can special case any future platforms where it's not just like this change does for Apple.
PiperOrigin-RevId: 535324103
Change-Id: Ib628925c4946b6c112373678fe37e9bb44259090
|
| |
| |
| |
| |
| |
| |
| | |
of it into a lambda.
PiperOrigin-RevId: 535245982
Change-Id: I816f60c8b6476536df6836500f01c9a3ad88ddd4
|
|/
|
|
|
|
|
| |
for clang
PiperOrigin-RevId: 534824761
Change-Id: I0ab78fcb211bc5df756fb581761ed8febc3d18fd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
absl::FromDateTime().
These have been marked deprecated in the comments for some time,
(since f340f773edab951656b19b6f1a77c964a78ec4c2) but the warnings
were never enabled.
A warning suppression is enabled for Abseil code so that when we
declare types in our code, we don't get a warning.
PiperOrigin-RevId: 532891102
Change-Id: Ife0c5696a061ea44769e02869e4e3d1196e86f9d
|
|\
| |
| |
| |
| | |
PiperOrigin-RevId: 527066823
Change-Id: Ifa1e9a43c7490b34f9f4dbfa12d3acbed6b49777
|
|/ |
|
|
|
|
|
| |
PiperOrigin-RevId: 525462751
Change-Id: Ibd6202cb95e79a48a6b39ccc4b74ead04128eb91
|
|
|
|
|
| |
PiperOrigin-RevId: 525241200
Change-Id: I8d1536cb813da8b80a978340343b0243a49928f7
|
|
|
|
|
|
|
| |
std::is_trivially_copyable
PiperOrigin-RevId: 523724345
Change-Id: Id68c79c3bbb253d892bdef4659ac8a926e023d12
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use Linux's prctl(PR_SET_VMA) system call to name memory arenas being
allocated using mmap(MAP_ANONYMOUS).
This change allows Abseil's memory arena(s) to be distinguished from
other uses of anonymous memory within a process, which in turn helps
investigations into the memory usage of applications.
The change adds a new prctl() system call to the code paths that call
mmap(). This is not expected to add significant overhead to applications.
The call to prctl(PR_SET_VMA, ...) can fail if the Linux kernel in use was
not configured with the CONFIG_ANON_VMA_NAME kernel option. This should
be OK since the naming memory regions is primarily a debugging aid.
PiperOrigin-RevId: 523687348
Change-Id: Ie404e5eeef0a6da53330b3a56149c4f3bc6bf5c7
|
|
|
|
|
| |
PiperOrigin-RevId: 523220096
Change-Id: Iaffea2c9c4d112839ca8c2c7f130f72c3d7cc35b
|
|
|
|
|
|
|
| |
https://github.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md
PiperOrigin-RevId: 521573177
Change-Id: I1f12ddbd8516314ee2ed7f8ba6a6895b03c6c270
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://devblogs.microsoft.com/cppblog/msvc-cpp20-and-the-std-cpp20-switch/#c20-no_unique_address
MSVC disables [[no_unique_address]] by default because of ABI
compatibility. Since Abseil does not claim ABI compatibility in
mixed-mode builds, we can offer it unconditionally.
Fixes #1418
PiperOrigin-RevId: 518894036
Change-Id: If7653e65703b335783f11d296de7e32fc35d4fc6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This implementation may at some point become the default on some
platforms. Currently not all platforms have widespread support for
both real absolute timeouts or real relative timeouts (here "real"
means without converting to the other timeout type which is the only
one supported by the underlying APIs). In this case we can defer to
their standard library to implement correct support.
This is not currently the default on any platform
Note: The size of WaiterState had to increase to fit the new implementation
PiperOrigin-RevId: 518266646
Change-Id: I7f246646a960d6e1b155f9de0bf2f681c5d3d245
|
|
|
|
|
|
|
| |
Also makes `ABSL_INTERNAL_LOG(LEVEL(x), "oops")` not call unreachable (even when x == kFatal) for consistency.
PiperOrigin-RevId: 517894304
Change-Id: I798b1032d126330ace1e2b48edd8fc547a2ad2f8
|
|
|
|
|
| |
PiperOrigin-RevId: 517142676
Change-Id: If50a1bf5f92da166d6b4923110ec8b25446b6b11
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a path in which the guard_result_ member is
not initialized; this is benign as the code makes
sure that it only accesses an initialized state.
Static analysis tools (such as clang-tidy) might not
see that however, so to make them happy, initialize
that value.
PiperOrigin-RevId: 516876319
Change-Id: I1bd2e97ad9e1daaa1397f306df993de13f7e684e
|
|
|
|
|
| |
PiperOrigin-RevId: 516245113
Change-Id: Idaef538c9392decbfdeb3ed3b3c109c795f92f4d
|
|
|
|
|
|
|
| |
platforms.
PiperOrigin-RevId: 515353041
Change-Id: I2c88022d50a3351f70d09a2d63020470889752d9
|
|
|
|
|
|
|
| |
This was originally added in order to centralize the ifdefs, in cl/164484905. However, cl/337142938 undid this aspect of the change, because it broke on Android. What is left is vestigial: `Throw()` can be deleted at no loss, with a warning that should discourage us from ever reintroducing it.
PiperOrigin-RevId: 513391041
Change-Id: I1608a2007eb26ee95df07f3b4b1672c034743832
|
|
|
|
|
| |
PiperOrigin-RevId: 512974770
Change-Id: If7a8128996d2a73ac566faaa676ddd3858d51af6
|
|
|
|
|
| |
PiperOrigin-RevId: 512622121
Change-Id: If90aaf7939062bd475253c372d9d7950c98c7150
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Abseil defines `ABSL_INTERNAL_HAS_RTTI` by:
```
!defined(__GNUC__) || defined(__GXX_RTTI)
```
This predicate correctly decides rtti for GNU platforms. This predicate is always true for non-GNU platforms.
It is not true that rtti is always enabled for non-GNU platforms. For example, when building with `cl.exe` and disabling rtti with `\GR-`, this clause is true. This leads to errors in Windows builds that disable rtti.
This default behavior is not decidably correct, but the default behavior shouldn't change. It is better to guess that rtti is on, because if rtti is actually off, compilation will fail, and no programs will be harmed.
This change updates the non-default behavior to include a check for rtti on Windows platforms. This change preserves the default behavior.
PiperOrigin-RevId: 512085922
Change-Id: I1add0b9b8ca2de5d1313c8aed5ba2019632ab68a
|
|
|
|
| |
nullptr instead of 0 and nothing instead of void for function arguments is preferred.
|
|
|
|
|
|
|
|
|
| |
__builtin_prefetch()
Supporting _m_prefetchw() (officially part of 3DNOW) across various compilers and platforms turns out to be difficult. This change removes the explicit _m_prefetchw call aimed at MSVC compilers given that it causes issues in clang / chromium compilations.
PiperOrigin-RevId: 509632497
Change-Id: Ib1b6b2cf667cbc1af5ed6651cd9aa0294a9265b6
|
|\
| |
| |
| |
| | |
PiperOrigin-RevId: 509299527
Change-Id: I2f9a801faf87f968f1625711a67d38a528f0740c
|
|/ |
|
|
|
|
|
|
|
| |
not `__builtin_prefetch<addr>, 1, 0)`
PiperOrigin-RevId: 507015724
Change-Id: I99f44fe819c27e6dcc0bb7b36f1a37015c6f1987
|
|
|
|
|
| |
PiperOrigin-RevId: 505184961
Change-Id: I64482558a76abda6896bec4b2d323833b6cd7edf
|
|
|
|
|
| |
PiperOrigin-RevId: 504941246
Change-Id: I94c1e85afd254e84948477b511d41eeb8285fdae
|
|
|
|
|
|
|
| |
The DLL export issue isn't a problem currently, since we don't explicitly export any symbols from the test dll. This will be an issue in the future though. Additionally, there was a typo in absl_internal_test_dll_contains that caused abseil_test_dll to be empty (and therefore not create a lib file).
PiperOrigin-RevId: 504555797
Change-Id: Ic7b50bcbe704f7c8fd44028071abcf5d6babb2cf
|
|
|
|
|
| |
PiperOrigin-RevId: 503437019
Change-Id: I3630fec690f1472130fef21b16dfcd3c5208aa69
|
|
|
|
|
|
|
|
| |
the earliest supported GCC version according to
https://github.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md
PiperOrigin-RevId: 503337021
Change-Id: Ibc7b2453b7aa30779b76e2a4ad918e39d0efcabe
|
|
|
|
|
| |
PiperOrigin-RevId: 501014555
Change-Id: Ie204d307a4e537935a04c0f23bb13532e3c84bc8
|
|\
| |
| |
| |
| | |
PiperOrigin-RevId: 500300819
Change-Id: Iacff97071d158843d687c811b0d78d4ddeba9039
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
off64_t is not provided without defining _LARGEFILE64_SOURCE on musl
this define is not defined automatically like glibc where it gets
defined when _GNU_SOURCE is defined. Using off_t makes it portable
across musl/glibc and for using 64bit off_t on glibc 32bit systems
-D_FILE_OFFSET_BITS=64 can be defined during build via CXXFLAGS
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|/
|
|
|
|
|
| |
This is now available as the public symbol ABSL_UNREACHABLE().
PiperOrigin-RevId: 499578459
Change-Id: Ib36c1826eb733271a6b02e81d6c3d088b255180a
|
|
|
|
|
| |
PiperOrigin-RevId: 498179140
Change-Id: Ie18b68e6313817b4f41fec6b10dd878436431730
|
|
|
|
|
| |
PiperOrigin-RevId: 497197704
Change-Id: I3865a874e04f6f55a1ab374b03451535a86bc5a3
|
|
|
|
|
|
|
| |
that the assert can be a static_assert
PiperOrigin-RevId: 497161039
Change-Id: If714cb25ca1d9481ada94b3b5b4cb16a4dd4e85a
|
|
|
|
|
|
|
|
|
|
|
| |
ABSL_UNREACHABLE() is an unreachable statement. A program which reaches
one has undefined behavior, and the compiler may optimize accordingly.
The behavior is changed to abort the program in !NDEBUG or
ABSL_OPTION_HARDENED modes.
PiperOrigin-RevId: 496917150
Change-Id: If036b2d9567933fa266fbcd33f3f98c682ad7f41
|
|
|
|
|
|
|
|
|
| |
or ABSL_ATTRIBUTE_PURE_FUNCTION
However, both absl_attributes are now unimplemented to avoid breaking existing users.
PiperOrigin-RevId: 496769399
Change-Id: I9c00cb60b885526300d744f9ea7c0f2178f092bb
|
|
|
|
|
| |
PiperOrigin-RevId: 487707178
Change-Id: Ie8f57a6327a6460ab37566b8b6f56d470f6dd2dc
|
|
|
|
|
| |
PiperOrigin-RevId: 487592054
Change-Id: Iff24f6e2a304fbc85843f10417fc3343c41333da
|
|
|
|
|
| |
PiperOrigin-RevId: 483972593
Change-Id: I5358871cdf825bbfae65bf9f5872c4fd56005fb7
|