| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1695
#1495 converted the `if (APPLE)` check for linking against `CoreFoundation` to generator expressions, which is fine and all.
The issue is that they forgot the other Apple platforms, making builds for iOS impossible.
This patch fixes this issue by adding the other Apple platforms that CMake support to the generator expression.
Merge 4f01df8e09f0dc216006dd7ca2d9ce216122b443 into 6dee153242d7becebe026a9bed52f4114441719d
Merging this change closes #1695
COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1695 from GeniusVentures:fix-time-build 4f01df8e09f0dc216006dd7ca2d9ce216122b443
PiperOrigin-RevId: 651416278
Change-Id: I47e4d52384e946cc9e421922f7c6edd5bfa1d976
|
|
|
|
|
| |
PiperOrigin-RevId: 648433954
Change-Id: I32e47a89685419ae8d37dfadb354cfaab2a35ae9
|
|
|
|
|
| |
PiperOrigin-RevId: 644150551
Change-Id: I11f3f8463fcfdb8d0284b1ab320624bbce6d1e48
|
|
|
|
|
| |
PiperOrigin-RevId: 627807723
Change-Id: I106cfe4d3d614b26422f632e856397b8bdcf743e
|
|
|
|
|
|
|
| |
Using `07` is a neat pun, but it not friendly to the reader. If the reader naively copies it and then changes the `7` to an `8` or a `9`, it will fail compilation: `invalid digit ... in octal constant`. Best avoided. Note that the other examples do not use octal literals.
PiperOrigin-RevId: 621335289
Change-Id: I6b11a639c5ba675eb29467baf45996ceff0ed9bf
|
|
|
|
|
| |
PiperOrigin-RevId: 615047295
Change-Id: I86e5de8543dc1ebee6d5a526846e9121b241b0fa
|
|
|
|
|
|
|
| |
comparisons in `IDivFastPath`.
PiperOrigin-RevId: 610758911
Change-Id: I3d0fa2f52a3bd75bdd2b5c365d79878b4160bd29
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`time_internal::IDivDuration`, by splitting the slow path to a separate function.
With that change, the compiler can inline the fast path. This is specially important in the context of `Duration::operator%=`, because it allows proving that the return value is unused, therefore avoiding expensive multiplies and divides (e.g. `*q = num_hi / den_hi;`).
```
name old cpu/op new cpu/op delta
BM_Duration_Modulo 23.1ns ± 0% 22.5ns ± 0% -2.42% (p=0.000 n=20+16)
BM_Duration_Modulo_FastPath 7.05ns ± 0% 4.85ns ± 0% -31.17% (p=0.000 n=20+20)
name old time/op new time/op delta
BM_Duration_Modulo 23.1ns ± 0% 22.6ns ± 0% -2.43% (p=0.000 n=20+16)
BM_Duration_Modulo_FastPath 7.06ns ± 0% 4.86ns ± 0% -31.18% (p=0.000 n=20+20)
name old INSTRUCTIONS/op new INSTRUCTIONS/op delta
BM_Duration_Modulo 188 ± 0% 178 ± 0% -5.32% (p=0.000 n=20+20)
BM_Duration_Modulo_FastPath 84.0 ± 0% 62.0 ± 0% -26.19% (p=0.000 n=20+20)
name old CYCLES/op new CYCLES/op delta
BM_Duration_Modulo 73.8 ± 0% 72.1 ± 0% -2.27% (p=0.000 n=19+20)
BM_Duration_Modulo_FastPath 22.5 ± 0% 15.5 ± 0% -31.13% (p=0.000 n=19+20)
```
Note: We don't need to expose `absl::time_internal::IDivDuration` at all given that we have a public `absl::IDivDuration`.
PiperOrigin-RevId: 610710635
Change-Id: Ief7c3d5b1c000b397d931e9249edcaef96e7151e
|
|
|
|
|
| |
PiperOrigin-RevId: 609351346
Change-Id: I40f44d42efe65fd8ca1a441e69a0769c87938b20
|
|
|
|
|
| |
PiperOrigin-RevId: 608705933
Change-Id: I9c11d8d8b3d9057bdf215863210f450332cf56cb
|
|
|
|
|
|
| |
absl::kuint128max should be replaced with absl::Uint128Max()
PiperOrigin-RevId: 606279299
Change-Id: Ib67b5431f14891f56bb706e62f183d0de75d335f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CycleClock::Now utilizes ABSL_INTERNAL_CYCLECLOCK_SHIFT to discourage reliance
on the raw CPU cycle counter values. As a side effect, it discourages
strictly-increasing assumption. Apply the idea to discourage over-reliance on
the precision of absl::Now/absl::GetCurrentTimeNanos.
Programs relying on a very high precision often exhibit portability issues on
machines with a lower cycle counter precision, or worse, race conditions. For
example, Apple M1 emulated x86 RDTSC only guarantees weakly-increasing RDTSC
values.
x86 clock speed is usually measured in GHz and is still precise after we drop 8
least significant bits.
PiperOrigin-RevId: 603493500
Change-Id: Ib1b00075109283f5dbcb39a43fe0ab722351a1e2
|
|
|
|
|
|
|
| |
https://bazel.build/build/style-guide#other-conventions
PiperOrigin-RevId: 603084345
Change-Id: Ibd7c9573d820f88059d12c46ff82d7d322d002ae
|
|
|
|
|
| |
PiperOrigin-RevId: 593889663
Change-Id: I589cd18922172d8aca99ddcc0d6f08a013bed9b4
|
|
|
|
|
| |
PiperOrigin-RevId: 593814844
Change-Id: If1967814b2b9273061b928bfee102faae1fad263
|
|
|
|
|
| |
PiperOrigin-RevId: 593780380
Change-Id: Id80217c63dd76bafbcfb79a7ee10807f1b771cb2
|
|
|
|
|
| |
PiperOrigin-RevId: 582342910
Change-Id: Iada5420867779ed352d8fb0695ff6d6044acfba2
|
|
|
|
|
| |
PiperOrigin-RevId: 580538328
Change-Id: I2699c77eeb68708584231d86ae2c0fca4870c17e
|
|
|
|
|
| |
PiperOrigin-RevId: 572591515
Change-Id: I7d2bd1f737efeeecb8a063ae94a696315bb14532
|
|
|
|
|
| |
PiperOrigin-RevId: 572575394
Change-Id: Ic1c5ac2423b1634e50c43bad6daa14e82a8f3e2c
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The layering_check feature ensures that rules that include a header
explicitly depend on a rule that exports that header. Compiler support
is required, and currently only Clang 16+ supports diagnoses
layering_check failures.
The parse_headers feature ensures headers are self-contained by
compiling them with -fsyntax-only on supported compilers.
PiperOrigin-RevId: 572350144
Change-Id: I37297f761566d686d9dd58d318979d688b7e36d1
|
|
|
|
|
| |
PiperOrigin-RevId: 567869792
Change-Id: I29948282b57b401f3199dc41160538aa9a8079a7
|
|
|
|
|
| |
PiperOrigin-RevId: 563201556
Change-Id: I2e1abde3944f3f3db532ce15db12adaf89207515
|
|
|
|
|
| |
PiperOrigin-RevId: 561095618
Change-Id: I1834e0155b05b9984145504d5925dc6fa8a3933b
|
|
|
|
|
| |
PiperOrigin-RevId: 555894810
Change-Id: I349c94e7c6e7ba1dbd817aa8e4340c1dada84654
|
|
|
|
|
|
|
| |
The MediaPipe library calls absl::SleepFor() but that causes linker errors in Chrome's (non-production) shared library build because AbslInternalSleepFor isn't exported.
PiperOrigin-RevId: 555699667
Change-Id: I95033857ec13ed72ff2a80001878b5e35bbeee91
|
|
|
|
|
|
|
|
| |
* 'DoNotOptimize<T>' is deprecated: The const-ref version of this method can permit undesired compiler optimizations in benchmarks
* missing #include <string> for 'std::string'
PiperOrigin-RevId: 554936149
Change-Id: Iaf06cd9b9b0762e3a514b7e1cfe4a4fd6df24083
|
|
|
|
|
| |
PiperOrigin-RevId: 554817008
Change-Id: If18f5992e2a65ce2e3e3cf7e0732767676c4320c
|
|
|
|
|
| |
PiperOrigin-RevId: 553878129
Change-Id: I054a5bd4c9011155c9fe03df0f07803ad7d2ade3
|
|
|
|
|
| |
PiperOrigin-RevId: 552848883
Change-Id: Ibcf4b59e2ab671d8dd8fddcbc9d74d4c8cd3f0ff
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Imported from GitHub PR https://github.com/abseil/abseil-cpp/pull/1495
This fixes https://github.com/abseil/abseil-cpp/issues/1494
With CMake 3.24 we can also use `$<LINK_LIBRARY:FRAMEWORK,CoreFoundation>`
but abseil is still at CMake 3.10
The change has been tested here: https://github.com/daschuer/vcpkg/actions/runs/5670741925
Merge f3ff6bc01ff45970d2b803ca51421483b423b72b into c9c0fd5185067208e1cc4227d16122571762af39
Merging this change closes #1495
COPYBARA_INTEGRATE_REVIEW=https://github.com/abseil/abseil-cpp/pull/1495 from daschuer:framework-link-fix f3ff6bc01ff45970d2b803ca51421483b423b72b
PiperOrigin-RevId: 552564485
Change-Id: I57b580e5795c54865576110e56220128d8b603b8
|
|
|
|
|
| |
PiperOrigin-RevId: 550964088
Change-Id: I54e4bff1cf72442c34e1668dbe8af9337eb0aa46
|
|
|
|
|
| |
PiperOrigin-RevId: 544445872
Change-Id: Ic7d42dca3461babdf8a6dff4c73a1596e795ffb2
|
|
|
|
|
| |
PiperOrigin-RevId: 544146637
Change-Id: I5ca44465f451956ae246081ce826891599b18b9c
|
|
|
|
|
| |
PiperOrigin-RevId: 544060862
Change-Id: I6ca631385826f6e10f6c3eeec1af532402d0b532
|
|
|
|
|
| |
PiperOrigin-RevId: 543896343
Change-Id: Ia91b3e082b764b750bbbe9a3ce63192263d51438
|
|
|
|
|
| |
PiperOrigin-RevId: 539104398
Change-Id: I6385662e0c5694d40c57887f983b16adc9eced14
|
|
|
|
|
| |
PiperOrigin-RevId: 538241594
Change-Id: Ie6f0d913bcf07dea2f33e47198ba952b3800d70e
|
|
|
|
|
| |
PiperOrigin-RevId: 537825067
Change-Id: I3ce8712d5130068fb7d77b563eb502e2e9560810
|
|\
| |
| |
| |
| | |
PiperOrigin-RevId: 537088042
Change-Id: I6ef219a1a76baf3a751a6084a8fb8639c9bdac51
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the cyclecounter by default, since it may be unsafe in some situations
(for example, if the system may enter a sleep state).
Fixes #1460
PiperOrigin-RevId: 535641718
Change-Id: I41c9cc4bc7a8ae7280ff9df00abd57668205045b
|
|/
|
|
| |
`time_zone_impl.cc` uses `std::mutex`.
|
|
|
|
|
| |
PiperOrigin-RevId: 534150392
Change-Id: I4c0c111202178031e08d9edad3a4501800d924f0
|
|
|
|
|
| |
PiperOrigin-RevId: 533455360
Change-Id: Ia95b225f8c186a831801f1ee008d7a5c0fff544b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
|
|
|
| |
This lets us avoid having to do the addition manually.
|
|
|
|
|
|
|
| |
usage needs when storing duration in containers (e.g. `vector<absl::Duration>` uses 25% less memory), and allows classes with `absl::Duration` fields to fit other stuff in memory previously used by tail padding (e.g. `std::optional<absl::Duration>` is now 16 bytes instead of 24)."
PiperOrigin-RevId: 524256689
Change-Id: Ibf40d9e5411020179fa34c972349c7b58aa9d908
|
|
|
|
|
| |
PiperOrigin-RevId: 521932692
Change-Id: If637de6501a4ac41f0078d581049d23aad3480a4
|