aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-autoroll <android-autoroll@skia-public.iam.gserviceaccount.com>2021-09-10 17:42:20 +0000
committerandroid-autoroll <android-autoroll@skia-public.iam.gserviceaccount.com>2021-09-10 17:42:20 +0000
commitd2f0284bc3ec6c00861cfb0147bee9406a0b74e8 (patch)
treef44520571d3af1de53d209b88390d73e4c245dcd
parent30b3c52f44a22edf16cf7ff302799891d46ec38f (diff)
parentac453e29bffd39333e4397ac468d2557cdec8b2e (diff)
downloadangle-d2f0284bc3ec6c00861cfb0147bee9406a0b74e8.tar.gz
Roll ANGLE from 856a0e03402b to ac453e29bffd (16 revisions)
https://chromium.googlesource.com/angle/angle.git/+log/856a0e03402b..ac453e29bffd If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/angle-android-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Test: Presubmit checks will test this change. Exempt-From-Owner-Approval: The autoroll bot does not require owner approval. Bug: b/186881553 Bug: b/196456356 Change-Id: Ic723c1f0e92c86bde3de37b54b2f12feee26fd7f
-rw-r--r--Android.bp231
-rw-r--r--BUILD.gn47
-rw-r--r--DEPS42
-rw-r--r--gni/angle.gni3
-rw-r--r--infra/config/generated/cr-buildbucket.cfg62
-rw-r--r--infra/config/generated/luci-milo.cfg8
-rw-r--r--infra/config/generated/luci-scheduler.cfg11
-rwxr-xr-xinfra/config/main.star7
-rw-r--r--infra/specs/angle.json462
-rw-r--r--infra/specs/angle_mb_config.pyl1
-rw-r--r--infra/specs/mixins.pyl10
-rw-r--r--infra/specs/waterfalls.pyl18
-rw-r--r--scripts/code_generation_hashes/Test_spec_JSON.json8
-rw-r--r--scripts/code_generation_hashes/restricted_traces.json8
-rw-r--r--src/compiler.gni6
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/FixTypeConstructors.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/HoistConstants.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/MapSymbols.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewriteKeywords.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewriteOutArgs.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewritePipelines.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/SymbolEnv.cpp2
-rw-r--r--src/compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.cpp2
-rw-r--r--src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp40
-rw-r--r--src/compiler/translator/tree_util/IntermRebuild.cpp (renamed from src/compiler/translator/TranslatorMetalDirect/IntermRebuild.cpp)23
-rw-r--r--src/compiler/translator/tree_util/IntermRebuild.h328
-rw-r--r--src/compiler/translator/tree_util/NodeType.h (renamed from src/compiler/translator/TranslatorMetalDirect/NodeType.h)0
-rw-r--r--src/libANGLE/capture/FrameCapture.h2
-rw-r--r--src/libANGLE/renderer/metal/DisplayMtl.mm4
-rw-r--r--src/libANGLE/renderer/vulkan/ContextVk.cpp11
-rw-r--r--src/libANGLE/renderer/vulkan/TextureVk.cpp3
-rw-r--r--src/libANGLE/renderer/vulkan/VertexArrayVk.cpp15
-rw-r--r--src/libANGLE/renderer/vulkan/vk_helpers.cpp4
-rwxr-xr-xsrc/tests/capture_replay_tests.py8
-rw-r--r--src/tests/capture_replay_tests/capture_replay_expectations.txt1
-rw-r--r--src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp17
-rw-r--r--src/tests/deqp_support/deqp_gles3_test_expectations.txt8
-rw-r--r--src/tests/perf_tests/TracePerfTest.cpp6
-rw-r--r--src/tests/restricted_traces/.gitignore1
-rw-r--r--src/tests/restricted_traces/restricted_traces.json1
-rw-r--r--src/tests/restricted_traces/restricted_traces_autogen.cpp25
-rw-r--r--src/tests/restricted_traces/restricted_traces_autogen.gni108
-rw-r--r--third_party/abseil-cpp/CMake/install_test_project/CMakeLists.txt2
-rw-r--r--third_party/abseil-cpp/CMake/install_test_project/simple.cc9
-rw-r--r--third_party/abseil-cpp/README.chromium2
-rw-r--r--third_party/abseil-cpp/README.md3
-rw-r--r--third_party/abseil-cpp/absl/CMakeLists.txt1
-rw-r--r--third_party/abseil-cpp/absl/base/attributes.h20
-rw-r--r--third_party/abseil-cpp/absl/base/config.h29
-rw-r--r--third_party/abseil-cpp/absl/base/dynamic_annotations.h25
-rw-r--r--third_party/abseil-cpp/absl/container/inlined_vector.h181
-rw-r--r--third_party/abseil-cpp/absl/container/internal/inlined_vector.h707
-rw-r--r--third_party/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake1
-rw-r--r--third_party/abseil-cpp/absl/copts/GENERATED_copts.bzl1
-rw-r--r--third_party/abseil-cpp/absl/copts/copts.py3
-rw-r--r--third_party/abseil-cpp/absl/profiling/BUILD.bazel17
-rw-r--r--third_party/abseil-cpp/absl/profiling/CMakeLists.txt14
-rw-r--r--third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc2
-rw-r--r--third_party/abseil-cpp/absl/strings/cord.cc11
-rw-r--r--third_party/abseil-cpp/absl/strings/cord_test.cc53
-rw-r--r--third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h1
-rw-r--r--third_party/abseil-cpp/absl/strings/internal/str_format/bind.h2
-rwxr-xr-xthird_party/abseil-cpp/create_lts.py7
-rw-r--r--third_party/abseil-cpp/symbols_arm64_dbg.def140
-rw-r--r--third_party/abseil-cpp/symbols_x64_dbg.def140
-rw-r--r--third_party/abseil-cpp/symbols_x86_dbg.def140
-rw-r--r--util/BUILD.gn2
74 files changed, 2081 insertions, 991 deletions
diff --git a/Android.bp b/Android.bp
index cf640c0ff8..616a2d91a1 100644
--- a/Android.bp
+++ b/Android.bp
@@ -16,7 +16,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -83,7 +83,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_EGL_LOADER",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DEGL_EGLEXT_PROTOTYPES",
@@ -180,7 +180,7 @@ cc_library_shared {
"-DANGLE_GLESV2_LIBRARY_NAME=\"libGLESv2_angle\"",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_EGL_LOADER",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DEGLAPI=__attribute__((visibility(\"default\")))",
@@ -277,7 +277,7 @@ cc_library_shared {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DEGL_EGLEXT_PROTOTYPES",
@@ -334,7 +334,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -393,7 +393,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_SHARED_LIBVULKAN=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -480,7 +480,7 @@ cc_defaults {
"-DANGLE_USE_ABSEIL",
"-DANGLE_VK_LAYERS_DIR=\"angledata\"",
"-DANGLE_VK_MOCK_ICD_JSON=\"angledata/VkICD_mock_icd.json\"",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -528,7 +528,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -574,7 +574,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_SHARED_LIBVULKAN=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -649,7 +649,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -712,7 +712,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -835,7 +835,7 @@ cc_defaults {
"-DANGLE_SHARED_LIBVULKAN=1",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_CUSTOM_VULKAN_CMD_BUFFERS=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1173,7 +1173,7 @@ cc_library_static {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1285,7 +1285,7 @@ cc_library_static {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1391,7 +1391,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DGLSLANG_ANGLE",
@@ -1444,7 +1444,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1503,7 +1503,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1543,7 +1543,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1582,7 +1582,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1640,7 +1640,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1699,7 +1699,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1771,7 +1771,7 @@ cc_library_static {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -1947,6 +1947,7 @@ cc_library_static {
"src/compiler/translator/tree_util/FindSymbolNode.cpp",
"src/compiler/translator/tree_util/IntermNodePatternMatcher.cpp",
"src/compiler/translator/tree_util/IntermNode_util.cpp",
+ "src/compiler/translator/tree_util/IntermRebuild.cpp",
"src/compiler/translator/tree_util/IntermTraverse.cpp",
"src/compiler/translator/tree_util/ReplaceArrayOfMatrixVarying.cpp",
"src/compiler/translator/tree_util/ReplaceClipCullDistanceVariable.cpp",
@@ -1965,7 +1966,7 @@ cc_library_static {
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_ENABLE_VULKAN",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2016,7 +2017,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2073,7 +2074,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2131,7 +2132,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2192,7 +2193,7 @@ cc_library_static {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2230,7 +2231,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2292,7 +2293,7 @@ cc_defaults {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2354,7 +2355,7 @@ cc_library_static {
"-DANGLE_ENABLE_VULKAN",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_CUSTOM_VULKAN_CMD_BUFFERS=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2397,7 +2398,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2468,7 +2469,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2541,7 +2542,7 @@ cc_defaults {
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DARMV8_OS_ANDROID",
"-DCRC32_ARMV8_CRC32",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2583,7 +2584,7 @@ cc_defaults {
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DARMV8_OS_ANDROID",
"-DCRC32_ARMV8_CRC32",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2625,7 +2626,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2669,7 +2670,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2738,7 +2739,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2798,7 +2799,7 @@ cc_library_static {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2892,7 +2893,7 @@ cc_library_static {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2949,7 +2950,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -2990,7 +2991,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3035,7 +3036,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3084,7 +3085,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3135,7 +3136,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3179,7 +3180,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3223,7 +3224,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3271,7 +3272,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3328,7 +3329,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3374,7 +3375,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3426,7 +3427,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3479,7 +3480,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3523,7 +3524,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3571,7 +3572,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3615,7 +3616,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3671,7 +3672,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3719,7 +3720,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3770,7 +3771,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3820,7 +3821,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3869,7 +3870,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3921,7 +3922,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -3970,7 +3971,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4025,7 +4026,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4083,7 +4084,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4142,7 +4143,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4194,7 +4195,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4245,7 +4246,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4295,7 +4296,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4354,7 +4355,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4402,7 +4403,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4449,7 +4450,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4506,7 +4507,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4562,7 +4563,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4608,7 +4609,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4655,7 +4656,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4703,7 +4704,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4754,7 +4755,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4819,7 +4820,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4864,7 +4865,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4916,7 +4917,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -4961,7 +4962,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5016,7 +5017,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5079,7 +5080,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5136,7 +5137,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5182,7 +5183,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5230,7 +5231,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5280,7 +5281,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5326,7 +5327,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5373,7 +5374,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5418,7 +5419,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5468,7 +5469,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5515,7 +5516,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5564,7 +5565,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5614,7 +5615,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5659,7 +5660,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5704,7 +5705,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5756,7 +5757,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5808,7 +5809,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5857,7 +5858,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5912,7 +5913,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -5959,7 +5960,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6004,7 +6005,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6050,7 +6051,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6095,7 +6096,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6142,7 +6143,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6186,7 +6187,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6226,7 +6227,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6271,7 +6272,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6315,7 +6316,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6361,7 +6362,7 @@ cc_defaults {
"-DABSL_ALLOCATOR_NOTHROW=1",
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6459,7 +6460,7 @@ cc_library_static {
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
"-DANGLE_USE_ABSEIL",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6642,7 +6643,7 @@ cc_defaults {
"-DANGLE_SHARED_LIBVULKAN=1",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_CUSTOM_VULKAN_CMD_BUFFERS=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6741,7 +6742,7 @@ cc_defaults {
"-DANGLE_SHARED_LIBVULKAN=1",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_CUSTOM_VULKAN_CMD_BUFFERS=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6781,7 +6782,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6839,7 +6840,7 @@ cc_defaults {
cflags: [
"-DANDROID",
"-DANDROID_NDK_VERSION_ROLL=r22_1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DHAVE_SYS_UIO_H",
@@ -6943,7 +6944,7 @@ cc_library_shared {
"-DANGLE_SHARED_LIBVULKAN=1",
"-DANGLE_USE_ABSEIL",
"-DANGLE_USE_CUSTOM_VULKAN_CMD_BUFFERS=1",
- "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-2\"",
+ "-DCR_CLANG_REVISION=\"llvmorg-14-init-3191-g0e03450a-1\"",
"-DCR_LIBCXX_REVISION=79a2e924d96e2fc1e4b937c42efd08898fa472d7",
"-DDYNAMIC_ANNOTATIONS_ENABLED=0",
"-DEGL_EGLEXT_PROTOTYPES",
diff --git a/BUILD.gn b/BUILD.gn
index f88a419509..c428510340 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -930,10 +930,6 @@ config("angle_frame_capture_disabled") {
defines = [ "ANGLE_CAPTURE_ENABLED=0" ]
}
-config("angle_frame_capture_enabled") {
- defines = [ "ANGLE_CAPTURE_ENABLED=1" ]
-}
-
angle_source_set("libANGLE") {
public_deps = [ ":libANGLE_base" ]
public_configs = [ ":angle_frame_capture_disabled" ]
@@ -1021,17 +1017,24 @@ if (angle_has_rapidjson) {
}
}
-angle_source_set("libANGLE_with_capture") {
- public_deps = [ ":libANGLE_base" ]
- deps = [ ":angle_compression" ]
- public_configs = [ ":angle_frame_capture_enabled" ]
- sources = libangle_capture_sources
+assert(angle_has_frame_capture || !angle_with_capture_by_default)
+if (angle_has_frame_capture) {
+ config("angle_frame_capture_enabled") {
+ defines = [ "ANGLE_CAPTURE_ENABLED=1" ]
+ }
- if (angle_has_rapidjson) {
- public_deps += [ ":angle_json_serializer" ]
- sources += [ "src/libANGLE/capture/frame_capture_utils.cpp" ]
- } else {
- sources += [ "src/libANGLE/capture/frame_capture_utils_mock.cpp" ]
+ angle_source_set("libANGLE_with_capture") {
+ public_deps = [ ":libANGLE_base" ]
+ deps = [ ":angle_compression" ]
+ public_configs = [ ":angle_frame_capture_enabled" ]
+ sources = libangle_capture_sources
+
+ if (angle_has_rapidjson) {
+ public_deps += [ ":angle_json_serializer" ]
+ sources += [ "src/libANGLE/capture/frame_capture_utils.cpp" ]
+ } else {
+ sources += [ "src/libANGLE/capture/frame_capture_utils_mock.cpp" ]
+ }
}
}
@@ -1133,13 +1136,15 @@ angle_libGLESv2("libGLESv2") {
}
# Output capture lib when `angle_with_capture_by_default` disabled, vice versa.
-angle_libGLESv2("libGLESv2_capture_complement") {
- if (angle_with_capture_by_default) {
- deps = [ ":libANGLE" ]
- output_name += "_no_capture"
- } else {
- deps = [ ":libANGLE_with_capture" ]
- output_name += "_with_capture"
+if (angle_has_frame_capture) {
+ angle_libGLESv2("libGLESv2_capture_complement") {
+ if (angle_with_capture_by_default) {
+ deps = [ ":libANGLE" ]
+ output_name += "_no_capture"
+ } else {
+ deps = [ ":libANGLE_with_capture" ]
+ output_name += "_with_capture"
+ }
}
}
diff --git a/DEPS b/DEPS
index c8528c8c87..fab77c7c31 100644
--- a/DEPS
+++ b/DEPS
@@ -34,7 +34,7 @@ vars = {
'checkout_android_native_support': 'checkout_android or checkout_chromeos',
# Version of Chromium our Chromium-based DEPS are mirrored from.
- 'chromium_revision': '3ce06be375f320f7d5887c2a38761cbb0db047f4',
+ 'chromium_revision': '6aa22be0c26ffa7e5020998616629b830c0796b3',
# We never want to checkout chromium,
# but need a dummy DEPS entry for the autoroller
'dummy_checkout_chromium': False,
@@ -79,12 +79,12 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling catapult
# and whatever else without interference from each other.
- 'catapult_revision': '2331f088546de8f58dcc02daf8212254aaeb2d4c',
+ 'catapult_revision': '8141144003019719d7aff618ecb8f3d3f3d6d36a',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling luci-go
# and whatever else without interference from each other.
- 'luci_go': 'git_revision:3e1f1f7a109ed8aefc7feba94fa737f0b5b4847e',
+ 'luci_go': 'git_revision:7b62727dc713b47d7a7ce9bca27500cb8e82ebd7',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling android_sdk_build-tools_version
@@ -119,7 +119,7 @@ vars = {
deps = {
'build': {
- 'url': '{chromium_git}/chromium/src/build.git@0cd7560da6e5561df324c1f6a60799d3f62427d7',
+ 'url': '{chromium_git}/chromium/src/build.git@0c04087fbf850f06f62336eeb5c355f857919e04',
'condition': 'not build_with_chromium',
},
@@ -161,7 +161,7 @@ deps = {
},
'buildtools/third_party/libc++abi/trunk': {
- 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxxabi.git@fc376196a1b4365b542db5ef2a07dcd1b557aa35',
+ 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxxabi.git@17de75220a90f23a16f9f87fbc5c00dce475b726',
'condition': 'not build_with_chromium',
},
@@ -177,12 +177,12 @@ deps = {
},
'testing': {
- 'url': '{chromium_git}/chromium/src/testing@3d3d7b154fb4ec6a593e09531da8aab7f1c17cd7',
+ 'url': '{chromium_git}/chromium/src/testing@2829dbd8e170a8968c63a00478c6ab7160665f82',
'condition': 'not build_with_chromium',
},
'third_party/abseil-cpp': {
- 'url': '{chromium_git}/chromium/src/third_party/abseil-cpp@789af048b388657987c59d4da406859034fe310f',
+ 'url': '{chromium_git}/chromium/src/third_party/abseil-cpp@fec7b4e901bbb77d9af10db1c11cb9f6c2116b73',
'condition': 'not build_with_chromium',
},
@@ -327,7 +327,7 @@ deps = {
},
'third_party/depot_tools': {
- 'url': '{chromium_git}/chromium/tools/depot_tools.git@49a18738d0cc669cde1ee50202d3157099152bad',
+ 'url': '{chromium_git}/chromium/tools/depot_tools.git@e1482c55484acb20a6383bd9e458a0e1574d0a10',
'condition': 'not build_with_chromium',
},
@@ -469,7 +469,7 @@ deps = {
'packages': [
{
'package': 'chromium/third_party/r8',
- 'version': 'dvPOJ_8iAF6OHGO79d86VbJjyKj7Xn0SFxlVVC9LHdcC',
+ 'version': 'j4P6kTwiJeMkYRbaOqRCB-ZrYyISP0NrcyNNAd8MRM0C',
},
],
'condition': 'checkout_android and not build_with_chromium',
@@ -491,7 +491,7 @@ deps = {
},
'third_party/SwiftShader': {
- 'url': '{swiftshader_git}/SwiftShader@83556eae921f35728029c7a51a7b00398bd76ebf',
+ 'url': '{swiftshader_git}/SwiftShader@446e61c24b37e2d3cb1bd3334dd3854ec8f682bb',
'condition': 'not build_with_chromium',
},
@@ -531,7 +531,7 @@ deps = {
},
'tools/clang': {
- 'url': '{chromium_git}/chromium/src/tools/clang.git@195c102c5a6c13f21b08b991389814fe63e5dff7',
+ 'url': '{chromium_git}/chromium/src/tools/clang.git@664e4259b150e07f1a1e440459f59fbc68edb82f',
'condition': 'not build_with_chromium',
},
@@ -566,7 +566,7 @@ deps = {
},
'tools/mb': {
- 'url': '{chromium_git}/chromium/src/tools/mb@34e8fbf156bd89868a0fb31789506da4032dd8a8',
+ 'url': '{chromium_git}/chromium/src/tools/mb@c56679b89ffe059f1c5389b09c530cbe447de1f2',
'condition': 'not build_with_chromium',
},
@@ -581,7 +581,7 @@ deps = {
},
'tools/perf': {
- 'url': '{chromium_git}/chromium/src/tools/perf@997a49b937fed68eec0966f0af77de610095a01a',
+ 'url': '{chromium_git}/chromium/src/tools/perf@184ebcc93f893895c8037c5fed1bcddbb37812df',
'condition': 'not build_with_chromium',
},
@@ -599,7 +599,7 @@ deps = {
'packages': [
{
'package': 'skia/tools/goldctl/linux-amd64',
- 'version': 'piyuI_96IF7jF_1vY-tHI0jfepKADnKhEEILxpHKvz4C',
+ 'version': 'rnLFFuc3uwQMer-UqF4iPw87LYBXcTHecmsEr5XSsqEC',
},
],
'dep_type': 'cipd',
@@ -610,7 +610,7 @@ deps = {
'packages': [
{
'package': 'skia/tools/goldctl/windows-amd64',
- 'version': 'AfrF2K3fb2csgVwLyDcljBC9fLFeLBpCqtTzxBiyMxgC',
+ 'version': '93HPekEUblvrn33MgtM_mPQjnsJ5_IqJUTt3XiUUloYC',
},
],
'dep_type': 'cipd',
@@ -621,7 +621,7 @@ deps = {
'packages': [
{
'package': 'skia/tools/goldctl/mac-amd64',
- 'version': 'hLDvCRtQ02S_V4ABz5oABBehzUF-j18kIHZwnU6gctYC',
+ 'version': 'Js84h2dElAXI-6j3tIs5oGaaEymkLbyu50DlJXn6WJIC',
},
],
'dep_type': 'cipd',
@@ -709,6 +709,16 @@ deps = {
'dep_type': 'cipd',
'condition': 'checkout_angle_restricted_traces',
},
+ 'src/tests/restricted_traces/blockman_go': {
+ 'packages': [
+ {
+ 'package': 'angle/traces/blockman_go',
+ 'version': 'version:1',
+ },
+ ],
+ 'dep_type': 'cipd',
+ 'condition': 'checkout_angle_restricted_traces',
+ },
'src/tests/restricted_traces/brawl_stars': {
'packages': [
{
diff --git a/gni/angle.gni b/gni/angle.gni
index 5706d6f4d0..747070172c 100644
--- a/gni/angle.gni
+++ b/gni/angle.gni
@@ -117,6 +117,9 @@ declare_args() {
# Currently Windows on Arm doesn't support OpenGL or Vulkan.
is_win_arm64 = is_win && target_cpu == "arm64"
+
+ # Frame capture code is enabled by default if rapidjson is available.
+ angle_has_frame_capture = angle_has_rapidjson
}
declare_args() {
diff --git a/infra/config/generated/cr-buildbucket.cfg b/infra/config/generated/cr-buildbucket.cfg
index 323e73965e..996f1bc161 100644
--- a/infra/config/generated/cr-buildbucket.cfg
+++ b/infra/config/generated/cr-buildbucket.cfg
@@ -432,6 +432,37 @@ buckets {
}
}
builders {
+ name: "mac-exp"
+ swarming_host: "chromium-swarm.appspot.com"
+ dimensions: "os:Mac"
+ exe {
+ cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+ cipd_version: "refs/heads/master"
+ cmd: "recipes"
+ }
+ properties:
+ '{'
+ ' "$build/goma": {'
+ ' "rpc_extra_params": "?prod",'
+ ' "server_host": "goma.chromium.org"'
+ ' },'
+ ' "builder_group": "angle",'
+ ' "platform": "mac",'
+ ' "recipe": "angle",'
+ ' "test_mode": "compile_and_test",'
+ ' "toolchain": "clang"'
+ '}'
+ build_numbers: YES
+ service_account: "angle-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+ experiments {
+ key: "luci.use_realms"
+ value: 100
+ }
+ resultdb {
+ enable: true
+ }
+ }
+ builders {
name: "mac-rel"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "os:Mac"
@@ -1228,6 +1259,37 @@ buckets {
}
}
builders {
+ name: "mac-exp"
+ swarming_host: "chromium-swarm.appspot.com"
+ dimensions: "os:Mac"
+ exe {
+ cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+ cipd_version: "refs/heads/master"
+ cmd: "recipes"
+ }
+ properties:
+ '{'
+ ' "$build/goma": {'
+ ' "rpc_extra_params": "?prod",'
+ ' "server_host": "goma.chromium.org"'
+ ' },'
+ ' "builder_group": "angle",'
+ ' "platform": "mac",'
+ ' "recipe": "angle",'
+ ' "test_mode": "compile_and_test",'
+ ' "toolchain": "clang"'
+ '}'
+ build_numbers: YES
+ service_account: "angle-try-builder@chops-service-accounts.iam.gserviceaccount.com"
+ experiments {
+ key: "luci.use_realms"
+ value: 100
+ }
+ resultdb {
+ enable: true
+ }
+ }
+ builders {
name: "mac-rel"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "os:Mac"
diff --git a/infra/config/generated/luci-milo.cfg b/infra/config/generated/luci-milo.cfg
index 2e3012e4c9..bce57a0e2f 100644
--- a/infra/config/generated/luci-milo.cfg
+++ b/infra/config/generated/luci-milo.cfg
@@ -56,6 +56,11 @@ consoles {
short_name: "dbg"
}
builders {
+ name: "buildbucket/luci.angle.ci/mac-exp"
+ category: "angle|mac|clang|x64"
+ short_name: "exp"
+ }
+ builders {
name: "buildbucket/luci.angle.ci/mac-rel"
category: "angle|mac|clang|x64"
short_name: "rel"
@@ -177,6 +182,9 @@ consoles {
name: "buildbucket/luci.angle.try/mac-dbg"
}
builders {
+ name: "buildbucket/luci.angle.try/mac-exp"
+ }
+ builders {
name: "buildbucket/luci.angle.try/mac-rel"
}
builders {
diff --git a/infra/config/generated/luci-scheduler.cfg b/infra/config/generated/luci-scheduler.cfg
index 3d1c61b7a7..93cf572825 100644
--- a/infra/config/generated/luci-scheduler.cfg
+++ b/infra/config/generated/luci-scheduler.cfg
@@ -135,6 +135,16 @@ job {
}
}
job {
+ id: "mac-exp"
+ realm: "ci"
+ acl_sets: "ci"
+ buildbucket {
+ server: "cr-buildbucket.appspot.com"
+ bucket: "luci.angle.ci"
+ builder: "mac-exp"
+ }
+}
+job {
id: "mac-rel"
realm: "ci"
acl_sets: "ci"
@@ -292,6 +302,7 @@ trigger {
triggers: "linux-nvidia-p400-perf"
triggers: "linux-trace-rel"
triggers: "mac-dbg"
+ triggers: "mac-exp"
triggers: "mac-rel"
triggers: "win-clang-x64-dbg"
triggers: "win-clang-x64-rel"
diff --git a/infra/config/main.star b/infra/config/main.star
index a57a3f1cef..10a6fa3dae 100755
--- a/infra/config/main.star
+++ b/infra/config/main.star
@@ -230,6 +230,7 @@ def angle_builder(name, debug, cpu, toolchain = "clang", uwp = False, test_mode
)
is_perf = "-perf" in name
+ is_experimental = "-exp" in name
# Trace tests are only included automatically if files in the capture folder change.
if test_mode == "trace_tests":
@@ -251,6 +252,8 @@ def angle_builder(name, debug, cpu, toolchain = "clang", uwp = False, test_mode
if is_perf:
short_name = get_gpu_type_from_builder_name(name)
+ elif is_experimental:
+ short_name = "exp"
elif debug:
short_name = "dbg"
else:
@@ -282,7 +285,8 @@ def angle_builder(name, debug, cpu, toolchain = "clang", uwp = False, test_mode
)
# Include all other bots in the CQ by default except the placeholder GCC configs.
- if toolchain != "gcc":
+ # Also exclude experimental bots.
+ if toolchain != "gcc" and not is_experimental:
luci.cq_tryjob_verifier(
cq_group = "master",
builder = "angle:try/" + name,
@@ -350,6 +354,7 @@ angle_builder("linux-clang-rel", debug = False, cpu = "x64")
angle_builder("linux-gcc-dbg", debug = True, cpu = "x64", toolchain = "gcc")
angle_builder("linux-gcc-rel", debug = False, cpu = "x64", toolchain = "gcc")
angle_builder("mac-dbg", debug = True, cpu = "x64")
+angle_builder("mac-exp", debug = False, cpu = "x64")
angle_builder("mac-rel", debug = False, cpu = "x64")
angle_builder("win-clang-x86-dbg", debug = True, cpu = "x86")
angle_builder("win-clang-x86-rel", debug = False, cpu = "x86")
diff --git a/infra/specs/angle.json b/infra/specs/angle.json
index 4d3eea558f..9f03116085 100644
--- a/infra/specs/angle.json
+++ b/infra/specs/angle.json
@@ -1964,6 +1964,245 @@
}
]
},
+ "mac-amd-exp": {
+ "gtest_tests": [
+ {
+ "args": [
+ "angle_deqp_egl_tests",
+ "--use-angle=gl",
+ "--bot-mode",
+ "--max-processes=1"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_egl_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_egl_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_egl_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_egl_tests",
+ "--use-angle=metal",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_egl_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_egl_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_egl_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles2_tests",
+ "--use-angle=gl",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles2_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_gles2_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles2_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles2_tests",
+ "--use-angle=metal",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles2_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_gles2_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles2_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=gl",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=metal",
+ "--flaky-retries=2",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_end2end_tests",
+ "--gtest_filter=-*Vulkan_SwiftShader*",
+ "--bot-mode"
+ ],
+ "merge": {
+ "args": [],
+ "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
+ },
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_end2end_tests",
+ "test_id_prefix": "ninja://src/tests:angle_end2end_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_unittests"
+ ],
+ "merge": {
+ "args": [],
+ "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
+ },
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "1002:6821",
+ "hidpi": "1",
+ "os": "Mac-11.4",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_unittests",
+ "test_id_prefix": "ninja://src/tests:angle_unittests/",
+ "use_isolated_scripts_api": true
+ }
+ ]
+ },
"mac-intel": {
"gtest_tests": [
{
@@ -2187,6 +2426,229 @@
}
]
},
+ "mac-intel-exp": {
+ "gtest_tests": [
+ {
+ "args": [
+ "angle_deqp_egl_tests",
+ "--use-angle=gl",
+ "--bot-mode",
+ "--max-processes=1"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_egl_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_egl_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_egl_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_egl_tests",
+ "--use-angle=metal",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_egl_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_egl_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_egl_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles2_tests",
+ "--use-angle=gl",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles2_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_gles2_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles2_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles2_tests",
+ "--use-angle=metal",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles2_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_gles2_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles2_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=gl",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_gl_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=metal",
+ "--flaky-retries=2",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_metal_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_end2end_tests",
+ "--gtest_filter=-*Vulkan_SwiftShader*",
+ "--bot-mode"
+ ],
+ "merge": {
+ "args": [],
+ "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
+ },
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_end2end_tests",
+ "test_id_prefix": "ninja://src/tests:angle_end2end_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_unittests"
+ ],
+ "merge": {
+ "args": [],
+ "script": "//testing/merge_scripts/standard_isolated_script_merge.py"
+ },
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "cpu": "x86-64",
+ "display_attached": "1",
+ "gpu": "8086:3e9b",
+ "os": "Mac-11.5.2"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_unittests",
+ "test_id_prefix": "ninja://src/tests:angle_unittests/",
+ "use_isolated_scripts_api": true
+ }
+ ]
+ },
"mac-nvidia": {
"gtest_tests": [
{
diff --git a/infra/specs/angle_mb_config.pyl b/infra/specs/angle_mb_config.pyl
index 05e9f86d72..d44056d84f 100644
--- a/infra/specs/angle_mb_config.pyl
+++ b/infra/specs/angle_mb_config.pyl
@@ -26,6 +26,7 @@
'linux-intel-hd630-perf': 'angle_goma_perf_bot',
'linux-nvidia-p400-perf': 'angle_goma_perf_bot',
'mac-dbg': 'angle_goma_debug_bot',
+ 'mac-exp': 'angle_goma_release_bot',
'mac-rel': 'angle_goma_release_bot',
'win-clang-x64-dbg': 'angle_goma_debug_bot',
'win-clang-x64-rel': 'angle_goma_release_bot',
diff --git a/infra/specs/mixins.pyl b/infra/specs/mixins.pyl
index f4d66e1d5e..64dfd7eaa2 100644
--- a/infra/specs/mixins.pyl
+++ b/infra/specs/mixins.pyl
@@ -33,6 +33,16 @@
'display_attached': '1',
'gpu': '8086:0a2e',
'os': 'Mac-10.15.7'}}},
+ 'mac_mini_intel_uhd_630_gpu_stable': { 'swarming': { 'dimensions': { 'cpu': 'x86-64',
+ 'display_attached': '1',
+ 'gpu': '8086:3e9b',
+ 'os': 'Mac-11.5.2'}}},
+ 'mac_retina_amd_gpu_experimental': { 'swarming': { 'dimensions': { 'cpu': 'x86-64',
+ 'display_attached': '1',
+ 'gpu': '1002:6821',
+ 'hidpi': '1',
+ 'os': 'Mac-11.4',
+ 'pool': 'chromium.tests.gpu'}}},
'mac_retina_amd_gpu_stable': { 'swarming': { 'dimensions': { 'cpu': 'x86-64',
'display_attached': '1',
'gpu': '1002:6821',
diff --git a/infra/specs/waterfalls.pyl b/infra/specs/waterfalls.pyl
index 3df1070c90..66cf7e3fee 100644
--- a/infra/specs/waterfalls.pyl
+++ b/infra/specs/waterfalls.pyl
@@ -89,6 +89,15 @@
'gtest_tests': 'mac_amd_and_intel_gtests',
},
},
+ 'mac-amd-exp': {
+ 'os_type': 'mac',
+ 'mixins': [
+ 'mac_retina_amd_gpu_experimental',
+ ],
+ 'test_suites': {
+ 'gtest_tests': 'mac_amd_and_intel_gtests',
+ },
+ },
'mac-intel': {
'os_type': 'mac',
'mixins': [
@@ -98,6 +107,15 @@
'gtest_tests': 'mac_amd_and_intel_gtests',
},
},
+ 'mac-intel-exp': {
+ 'os_type': 'mac',
+ 'mixins': [
+ 'mac_mini_intel_uhd_630_gpu_stable',
+ ],
+ 'test_suites': {
+ 'gtest_tests': 'mac_amd_and_intel_gtests',
+ },
+ },
'mac-nvidia': {
'os_type': 'mac',
'mixins': [
diff --git a/scripts/code_generation_hashes/Test_spec_JSON.json b/scripts/code_generation_hashes/Test_spec_JSON.json
index 265bff8073..c46b5b219e 100644
--- a/scripts/code_generation_hashes/Test_spec_JSON.json
+++ b/scripts/code_generation_hashes/Test_spec_JSON.json
@@ -1,10 +1,10 @@
{
"infra/specs/angle.json":
- "ac4e0fa2f8991a24ef234ef3ed14ba95",
+ "afe18ee5bf271576b28369d8ecdb56cb",
"infra/specs/generate_test_spec_json.py":
"348921bf70270ec6ee51fbb7e97d6925",
"infra/specs/mixins.pyl":
- "902aa44f4dbcaf91d313e3de008ee422",
+ "4c2309d7cebe8a1d43292c5c2012b1db",
"infra/specs/test_suite_exceptions.pyl":
"723460da84a90884a9668c07a0893390",
"infra/specs/test_suites.pyl":
@@ -12,9 +12,9 @@
"infra/specs/variants.pyl":
"8cfcaa99fa07ad2a2d5d14f220fd5037",
"infra/specs/waterfalls.pyl":
- "7aadb90c13b22384200c56bd07de652d",
+ "a196371a2661764b889ed75cb1e243f5",
"testing/buildbot/generate_buildbot_json.py":
"3071268b1128295391f5b9b88cbb0253",
"testing/buildbot/mixins.pyl":
- "4a2304cb7344cd5e61890852baf810c4"
+ "2f889f478c07a446d626bdcb47e1b39d"
} \ No newline at end of file
diff --git a/scripts/code_generation_hashes/restricted_traces.json b/scripts/code_generation_hashes/restricted_traces.json
index 74812212bc..21c95ffdfe 100644
--- a/scripts/code_generation_hashes/restricted_traces.json
+++ b/scripts/code_generation_hashes/restricted_traces.json
@@ -1,14 +1,14 @@
{
"src/tests/restricted_traces/.gitignore":
- "111524060c1eb48a1969a91f8ae13e59",
+ "0df08b32b1950844c103ca9b5bf5493b",
"src/tests/restricted_traces/gen_restricted_traces.py":
"47c2ec4e240ad36c7610d90a9a3f0b7b",
"src/tests/restricted_traces/restricted_traces.json":
- "b7d9e3fe8e34d206a147d6be3a60a688",
+ "6dfaf6c6950d6d985f9a1ad270b487cf",
"src/tests/restricted_traces/restricted_traces_autogen.cpp":
- "3d8027c784f8a0305d29a9c8db676947",
+ "418bb3340f1060c193dfcf1a0c117a7f",
"src/tests/restricted_traces/restricted_traces_autogen.gni":
- "a5daf01e76886d5208139bc4fa53a870",
+ "27cb9560a4eacfd79ae82c9ab4574afd",
"src/tests/restricted_traces/restricted_traces_autogen.h":
"77a97c4bb042e28be314bf45e915e013"
} \ No newline at end of file
diff --git a/src/compiler.gni b/src/compiler.gni
index 1f36ce5978..ed9e07a3ce 100644
--- a/src/compiler.gni
+++ b/src/compiler.gni
@@ -215,9 +215,12 @@ angle_translator_sources = [
"src/compiler/translator/tree_util/IntermNodePatternMatcher.h",
"src/compiler/translator/tree_util/IntermNode_util.cpp",
"src/compiler/translator/tree_util/IntermNode_util.h",
+ "src/compiler/translator/tree_util/IntermRebuild.cpp",
+ "src/compiler/translator/tree_util/IntermRebuild.h",
"src/compiler/translator/tree_util/IntermTraverse.cpp",
"src/compiler/translator/tree_util/IntermTraverse.h",
"src/compiler/translator/tree_util/NodeSearch.h",
+ "src/compiler/translator/tree_util/NodeType.h",
"src/compiler/translator/tree_util/ReplaceArrayOfMatrixVarying.cpp",
"src/compiler/translator/tree_util/ReplaceArrayOfMatrixVarying.h",
"src/compiler/translator/tree_util/ReplaceClipCullDistanceVariable.cpp",
@@ -380,8 +383,6 @@ angle_translator_lib_metal_sources = [
"src/compiler/translator/TranslatorMetalDirect/HoistConstants.h",
"src/compiler/translator/TranslatorMetalDirect/IdGen.cpp",
"src/compiler/translator/TranslatorMetalDirect/IdGen.h",
- "src/compiler/translator/TranslatorMetalDirect/IntermRebuild.cpp",
- "src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h",
"src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp",
"src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.h",
"src/compiler/translator/TranslatorMetalDirect/Layout.cpp",
@@ -396,7 +397,6 @@ angle_translator_lib_metal_sources = [
"src/compiler/translator/TranslatorMetalDirect/Name.h",
"src/compiler/translator/TranslatorMetalDirect/NameEmbeddedUniformStructsMetal.cpp",
"src/compiler/translator/TranslatorMetalDirect/NameEmbeddedUniformStructsMetal.h",
- "src/compiler/translator/TranslatorMetalDirect/NodeType.h",
"src/compiler/translator/TranslatorMetalDirect/Pipeline.cpp",
"src/compiler/translator/TranslatorMetalDirect/Pipeline.h",
"src/compiler/translator/TranslatorMetalDirect/ProgramPrelude.cpp",
diff --git a/src/compiler/translator/TranslatorMetalDirect/FixTypeConstructors.cpp b/src/compiler/translator/TranslatorMetalDirect/FixTypeConstructors.cpp
index 58f0c233cd..f76db461a1 100644
--- a/src/compiler/translator/TranslatorMetalDirect/FixTypeConstructors.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/FixTypeConstructors.cpp
@@ -7,8 +7,8 @@
#include "compiler/translator/TranslatorMetalDirect/FixTypeConstructors.h"
#include <unordered_map>
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/tree_ops/SimplifyLoopConditions.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
////////////////////////////////////////////////////////////////////////////////
namespace
diff --git a/src/compiler/translator/TranslatorMetalDirect/HoistConstants.cpp b/src/compiler/translator/TranslatorMetalDirect/HoistConstants.cpp
index eaea46950c..ce9c03eb5d 100644
--- a/src/compiler/translator/TranslatorMetalDirect/HoistConstants.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/HoistConstants.cpp
@@ -6,9 +6,9 @@
#include "compiler/translator/TranslatorMetalDirect/HoistConstants.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/Layout.h"
#include "compiler/translator/tree_util/FindFunction.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
#include "compiler/translator/tree_util/ReplaceVariable.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h b/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h
index 22ad92ca82..675d747100 100644
--- a/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h
+++ b/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.h
@@ -7,8 +7,8 @@
#ifndef COMPILER_TRANSLATOR_TRANSLATORMETALDIRECT_INTERMREBUILD_H_
#define COMPILER_TRANSLATOR_TRANSLATORMETALDIRECT_INTERMREBUILD_H_
-#include "compiler/translator/TranslatorMetalDirect/NodeType.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
+#include "compiler/translator/tree_util/NodeType.h"
namespace sh
{
diff --git a/src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp b/src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp
index 2eb9353e6f..efb3c1204d 100644
--- a/src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.cpp
@@ -7,8 +7,8 @@
#include "compiler/translator/TranslatorMetalDirect/IntroduceVertexIndexID.h"
#include "compiler/translator/StaticType.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/tree_util/BuiltIn.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/compiler/translator/TranslatorMetalDirect/MapSymbols.cpp b/src/compiler/translator/TranslatorMetalDirect/MapSymbols.cpp
index 5631be6e81..035c930469 100644
--- a/src/compiler/translator/TranslatorMetalDirect/MapSymbols.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/MapSymbols.cpp
@@ -5,7 +5,7 @@
//
#include "compiler/translator/TranslatorMetalDirect/MapSymbols.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.cpp b/src/compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.cpp
index 6778d3b4f1..45053e2297 100644
--- a/src/compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.cpp
@@ -10,9 +10,9 @@
#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/TranslatorMetalDirect.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/ReduceInterfaceBlocks.h"
#include "compiler/translator/tree_ops/SeparateDeclarations.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.cpp b/src/compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.cpp
index 1272acb536..c7781776c5 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.cpp
@@ -6,7 +6,7 @@
#include "compiler/translator/TranslatorMetalDirect/RewriteCaseDeclarations.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.cpp b/src/compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.cpp
index 9c3f82c57e..20d9f2a9ee 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.cpp
@@ -5,7 +5,7 @@
//
#include "compiler/translator/TranslatorMetalDirect/RewriteGlobalQualifierDecls.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewriteKeywords.cpp b/src/compiler/translator/TranslatorMetalDirect/RewriteKeywords.cpp
index e1e227810a..0cfc0458a7 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewriteKeywords.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewriteKeywords.cpp
@@ -12,8 +12,8 @@
#include <unordered_set>
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/RewriteKeywords.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewriteOutArgs.cpp b/src/compiler/translator/TranslatorMetalDirect/RewriteOutArgs.cpp
index 0743cb85d5..55b71b9785 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewriteOutArgs.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewriteOutArgs.cpp
@@ -5,7 +5,7 @@
//
#include "compiler/translator/TranslatorMetalDirect/RewriteOutArgs.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewritePipelines.cpp b/src/compiler/translator/TranslatorMetalDirect/RewritePipelines.cpp
index 2e9bf4b0ac..c487048938 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewritePipelines.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewritePipelines.cpp
@@ -12,7 +12,6 @@
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
#include "compiler/translator/TranslatorMetalDirect/DiscoverDependentFunctions.h"
#include "compiler/translator/TranslatorMetalDirect/IdGen.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/MapSymbols.h"
#include "compiler/translator/TranslatorMetalDirect/Pipeline.h"
#include "compiler/translator/TranslatorMetalDirect/RewritePipelines.h"
@@ -20,6 +19,7 @@
#include "compiler/translator/tree_ops/PruneNoOps.h"
#include "compiler/translator/tree_util/DriverUniform.h"
#include "compiler/translator/tree_util/FindMain.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.cpp b/src/compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.cpp
index e1d26c1b32..7721350c87 100644
--- a/src/compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.cpp
@@ -6,8 +6,8 @@
#include "compiler/translator/TranslatorMetalDirect/RewriteUnaddressableReferences.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/tree_util/AsNode.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.cpp b/src/compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.cpp
index 7bcce718b1..41897a0488 100644
--- a/src/compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.cpp
@@ -8,9 +8,9 @@
#include "common/system_utils.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/SeparateCompoundExpressions.h"
#include "compiler/translator/tree_ops/SimplifyLoopConditions.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/SymbolEnv.cpp b/src/compiler/translator/TranslatorMetalDirect/SymbolEnv.cpp
index ce3633ef8e..220c1a5c49 100644
--- a/src/compiler/translator/TranslatorMetalDirect/SymbolEnv.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/SymbolEnv.cpp
@@ -9,8 +9,8 @@
#include "compiler/translator/ImmutableStringBuilder.h"
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/SymbolEnv.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.cpp b/src/compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.cpp
index e7c6372edf..0db66cd346 100644
--- a/src/compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.cpp
+++ b/src/compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.cpp
@@ -8,8 +8,8 @@
#include <unordered_map>
#include "compiler/translator/TranslatorMetalDirect/AstHelpers.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/TranslatorMetalDirect/TransposeRowMajorMatrices.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
using namespace sh;
diff --git a/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp b/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp
index c711fbc1a1..195ca53157 100644
--- a/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp
+++ b/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp
@@ -27,12 +27,12 @@ namespace sh
namespace
{
-TIntermBinary *ConstructVectorIndexBinaryNode(TIntermSymbol *symbolNode, int index)
+TIntermBinary *ConstructVectorIndexBinaryNode(TIntermTyped *symbolNode, int index)
{
return new TIntermBinary(EOpIndexDirect, symbolNode, CreateIndexNode(index));
}
-TIntermBinary *ConstructMatrixIndexBinaryNode(TIntermSymbol *symbolNode, int colIndex, int rowIndex)
+TIntermBinary *ConstructMatrixIndexBinaryNode(TIntermTyped *symbolNode, int colIndex, int rowIndex)
{
TIntermBinary *colVectorNode = ConstructVectorIndexBinaryNode(symbolNode, colIndex);
@@ -63,7 +63,7 @@ class ScalarizeArgsTraverser : public TIntermTraverser
// vec4 v(1, s0[0][0], s0[0][1], s0[0][2]);
// This function is to create nodes for "mat4 s0 = m;" and insert it to the code sequence. This
// way the possible side effects of the constructor argument will only be evaluated once.
- TVariable *createTempVariable(TIntermTyped *original);
+ TIntermTyped *createTempVariable(TIntermTyped *original);
std::vector<TIntermSequence> mBlockStack;
@@ -123,10 +123,10 @@ void ScalarizeArgsTraverser::scalarizeArgs(TIntermAggregate *aggregate,
ASSERT(size > 0);
TIntermTyped *originalArg = originalArgNode->getAsTyped();
ASSERT(originalArg);
- TVariable *argVariable = createTempVariable(originalArg);
+ TIntermTyped *argVariable = createTempVariable(originalArg);
if (originalArg->isScalar())
{
- sequence->push_back(CreateTempSymbolNode(argVariable));
+ sequence->push_back(argVariable);
size--;
}
else if (originalArg->isVector())
@@ -137,15 +137,14 @@ void ScalarizeArgsTraverser::scalarizeArgs(TIntermAggregate *aggregate,
size -= repeat;
for (int index = 0; index < repeat; ++index)
{
- TIntermSymbol *symbolNode = CreateTempSymbolNode(argVariable);
- TIntermBinary *newNode = ConstructVectorIndexBinaryNode(symbolNode, index);
+ TIntermBinary *newNode =
+ ConstructVectorIndexBinaryNode(argVariable->deepCopy(), index);
sequence->push_back(newNode);
}
}
else
{
- TIntermSymbol *symbolNode = CreateTempSymbolNode(argVariable);
- sequence->push_back(symbolNode);
+ sequence->push_back(argVariable);
size -= originalArg->getNominalSize();
}
}
@@ -159,9 +158,8 @@ void ScalarizeArgsTraverser::scalarizeArgs(TIntermAggregate *aggregate,
size -= repeat;
while (repeat > 0)
{
- TIntermSymbol *symbolNode = CreateTempSymbolNode(argVariable);
TIntermBinary *newNode =
- ConstructMatrixIndexBinaryNode(symbolNode, colIndex, rowIndex);
+ ConstructMatrixIndexBinaryNode(argVariable->deepCopy(), colIndex, rowIndex);
sequence->push_back(newNode);
rowIndex++;
if (rowIndex >= originalArg->getRows())
@@ -174,15 +172,14 @@ void ScalarizeArgsTraverser::scalarizeArgs(TIntermAggregate *aggregate,
}
else
{
- TIntermSymbol *symbolNode = CreateTempSymbolNode(argVariable);
- sequence->push_back(symbolNode);
+ sequence->push_back(argVariable);
size -= originalArg->getCols() * originalArg->getRows();
}
}
}
}
-TVariable *ScalarizeArgsTraverser::createTempVariable(TIntermTyped *original)
+TIntermTyped *ScalarizeArgsTraverser::createTempVariable(TIntermTyped *original)
{
ASSERT(original);
@@ -190,9 +187,16 @@ TVariable *ScalarizeArgsTraverser::createTempVariable(TIntermTyped *original)
type->setQualifier(EvqTemporary);
// The precision of the constant must have been retained (or derived), which will now apply to
- // the temp variable.
- ASSERT(!IsPrecisionApplicableToType(type->getBasicType()) ||
- type->getPrecision() != EbpUndefined);
+ // the temp variable. In some cases, the precision cannot be derived, so use the constant as
+ // is. For example, in the following standalone statement, the precision of the constant 0
+ // cannot be determined:
+ //
+ // mat2(0, bvec3(m));
+ //
+ if (IsPrecisionApplicableToType(type->getBasicType()) && type->getPrecision() == EbpUndefined)
+ {
+ return original;
+ }
TVariable *variable = CreateTempVariable(mSymbolTable, type);
@@ -201,7 +205,7 @@ TVariable *ScalarizeArgsTraverser::createTempVariable(TIntermTyped *original)
TIntermDeclaration *declaration = CreateTempInitDeclarationNode(variable, original);
sequence.push_back(declaration);
- return variable;
+ return CreateTempSymbolNode(variable);
}
} // namespace
diff --git a/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.cpp b/src/compiler/translator/tree_util/IntermRebuild.cpp
index bc49927ae0..46615711f3 100644
--- a/src/compiler/translator/TranslatorMetalDirect/IntermRebuild.cpp
+++ b/src/compiler/translator/tree_util/IntermRebuild.cpp
@@ -8,8 +8,8 @@
#include "compiler/translator/Compiler.h"
#include "compiler/translator/SymbolTable.h"
-#include "compiler/translator/TranslatorMetalDirect/IntermRebuild.h"
#include "compiler/translator/tree_util/AsNode.h"
+#include "compiler/translator/tree_util/IntermRebuild.h"
#define GUARD2(cond, failVal) \
do \
@@ -251,7 +251,7 @@ bool TIntermRebuild::traverseAnyAs(TIntermNode &node, Node *&out)
return true;
}
out = asNode<Node>(result.mSingle);
- return out;
+ return out != nullptr;
}
bool TIntermRebuild::traverseAggregateBaseChildren(TIntermAggregateBase &node)
@@ -286,6 +286,10 @@ bool TIntermRebuild::traverseAggregateBaseChildren(TIntermAggregateBase &node)
case Action::Fail:
return false;
+
+ default:
+ ASSERT(false);
+ return false;
}
}
@@ -382,6 +386,9 @@ PreResult TIntermRebuild::traversePre(TIntermNode &originalNode)
return visitLoopPre(*originalNode.getAsLoopNode());
case NodeType::Branch:
return visitBranchPre(*originalNode.getAsBranchNode());
+ default:
+ ASSERT(false);
+ return Fail();
}
}
@@ -445,6 +452,9 @@ TIntermNode *TIntermRebuild::traverseChildren(NodeType currNodeType,
return traverseLoopChildren(*currNode.getAsLoopNode());
case NodeType::Branch:
return traverseBranchChildren(*currNode.getAsBranchNode());
+ default:
+ ASSERT(false);
+ return nullptr;
}
}
@@ -513,6 +523,9 @@ PostResult TIntermRebuild::traversePost(NodeType currNodeType,
return visitLoopPost(*currNode.getAsLoopNode());
case NodeType::Branch:
return visitBranchPost(*currNode.getAsBranchNode());
+ default:
+ ASSERT(false);
+ return Fail();
}
}
@@ -781,6 +794,9 @@ TIntermNode *TIntermRebuild::traverseLoopChildren(TIntermLoop &node)
ASSERT(cond);
ASSERT(!init && !expr);
break;
+ default:
+ ASSERT(false);
+ break;
}
#endif
@@ -814,6 +830,9 @@ TIntermNode *TIntermRebuild::traverseLoopChildren(TIntermLoop &node)
GUARD(newCond && newBody);
GUARD(!newInit && !newExpr);
break;
+ default:
+ ASSERT(false);
+ break;
}
return new TIntermLoop(loopType, newInit, newCond, newExpr, newBody);
}
diff --git a/src/compiler/translator/tree_util/IntermRebuild.h b/src/compiler/translator/tree_util/IntermRebuild.h
new file mode 100644
index 0000000000..675d747100
--- /dev/null
+++ b/src/compiler/translator/tree_util/IntermRebuild.h
@@ -0,0 +1,328 @@
+//
+// Copyright 2020 The ANGLE Project Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+
+#ifndef COMPILER_TRANSLATOR_TRANSLATORMETALDIRECT_INTERMREBUILD_H_
+#define COMPILER_TRANSLATOR_TRANSLATORMETALDIRECT_INTERMREBUILD_H_
+
+#include "compiler/translator/tree_util/IntermTraverse.h"
+#include "compiler/translator/tree_util/NodeType.h"
+
+namespace sh
+{
+
+// Walks the tree to rebuild nodes.
+// This class is intended to be derived with overridden visitXXX functions.
+//
+// Each visitXXX function that does not have a Visit parameter simply has the visitor called
+// exactly once, regardless of (preVisit) or (postVisit) values.
+
+// Each visitXXX function that has a Visit parameter behaves as follows:
+// * If (preVisit):
+// - The node is visited before children are traversed.
+// - The returned value is used to replace the visited node. The returned value may be the same
+// as the original node.
+// - If multiple nodes are returned, children and post visits of the returned nodes are not
+// preformed, even if it is a singleton collection.
+// * If (childVisit)
+// - If any new children are returned, the node is automatically rebuilt with the new children
+// before post visit.
+// - Depending on the type of the node, null children may be discarded.
+// - Ill-typed children cause rebuild errors. Ill-typed means the node to automatically rebuild
+// cannot accept a child of a certain type as input to its constructor.
+// - Only instances of TIntermAggregateBase can accept Multi results for any of its children.
+// If supplied, the nodes are spliced children at the spot of the original child.
+// * If (postVisit)
+// - The node is visited after any children are traversed.
+// - Only after such a rebuild (or lack thereof), the post-visit is performed.
+//
+// Nodes in visit functions are allowed to be modified in place, including TIntermAggregateBase
+// child sequences.
+//
+// The default implementations of all the visitXXX functions support full pre and post traversal
+// without modifying the visited nodes.
+//
+class TIntermRebuild : angle::NonCopyable
+{
+
+ enum class Action
+ {
+ ReplaceSingle,
+ ReplaceMulti,
+ Drop,
+ Fail,
+ };
+
+ public:
+ struct Fail
+ {};
+
+ enum VisitBits : size_t
+ {
+ // No bits are set.
+ Empty = 0u,
+
+ // Allow visit of returned node's children.
+ Children = 1u << 0u,
+
+ // Allow post visit of returned node.
+ Post = 1u << 1u,
+
+ // If (Children) bit, only visit if the returned node is the same as the original node.
+ ChildrenRequiresSame = 1u << 2u,
+
+ // If (Post) bit, only visit if the returned node is the same as the original node.
+ PostRequiresSame = 1u << 3u,
+
+ RequireSame = ChildrenRequiresSame | PostRequiresSame,
+ Neither = Empty,
+ Both = Children | Post,
+ BothWhenSame = Both | RequireSame,
+ };
+
+ private:
+ struct NodeStackGuard;
+
+ template <typename T>
+ struct ConsList
+ {
+ T value;
+ ConsList<T> *tail;
+ };
+
+ class BaseResult
+ {
+ BaseResult(const BaseResult &) = delete;
+ BaseResult &operator=(const BaseResult &) = delete;
+
+ public:
+ BaseResult(BaseResult &&other) = default;
+ BaseResult(BaseResult &other); // For subclass move constructor impls
+ BaseResult(TIntermNode &node, VisitBits visit);
+ BaseResult(TIntermNode *node, VisitBits visit);
+ BaseResult(nullptr_t);
+ BaseResult(Fail);
+ BaseResult(std::vector<TIntermNode *> &&nodes);
+
+ void moveAssignImpl(BaseResult &other); // For subclass move assign impls
+
+ static BaseResult Multi(std::vector<TIntermNode *> &&nodes);
+
+ template <typename Iter>
+ static BaseResult Multi(Iter nodesBegin, Iter nodesEnd)
+ {
+ std::vector<TIntermNode *> nodes;
+ for (Iter nodesCurr = nodesBegin; nodesCurr != nodesEnd; ++nodesCurr)
+ {
+ nodes.push_back(*nodesCurr);
+ }
+ return std::move(nodes);
+ }
+
+ bool isFail() const;
+ bool isDrop() const;
+ TIntermNode *single() const;
+ const std::vector<TIntermNode *> *multi() const;
+
+ public:
+ Action mAction;
+ VisitBits mVisit;
+ TIntermNode *mSingle;
+ std::vector<TIntermNode *> mMulti;
+ };
+
+ public:
+ class PreResult : private BaseResult
+ {
+ friend class TIntermRebuild;
+
+ public:
+ PreResult(PreResult &&other);
+ PreResult(TIntermNode &node, VisitBits visit = VisitBits::BothWhenSame);
+ PreResult(TIntermNode *node, VisitBits visit = VisitBits::BothWhenSame);
+ PreResult(nullptr_t); // Used to drop a node.
+ PreResult(Fail); // Used to signal failure.
+
+ void operator=(PreResult &&other);
+
+ static PreResult Multi(std::vector<TIntermNode *> &&nodes)
+ {
+ return BaseResult::Multi(std::move(nodes));
+ }
+
+ template <typename Iter>
+ static PreResult Multi(Iter nodesBegin, Iter nodesEnd)
+ {
+ return BaseResult::Multi(nodesBegin, nodesEnd);
+ }
+
+ using BaseResult::isDrop;
+ using BaseResult::isFail;
+ using BaseResult::multi;
+ using BaseResult::single;
+
+ private:
+ PreResult(BaseResult &&other);
+ };
+
+ class PostResult : private BaseResult
+ {
+ friend class TIntermRebuild;
+
+ public:
+ PostResult(PostResult &&other);
+ PostResult(TIntermNode &node);
+ PostResult(TIntermNode *node);
+ PostResult(nullptr_t); // Used to drop a node
+ PostResult(Fail); // Used to signal failure.
+
+ void operator=(PostResult &&other);
+
+ static PostResult Multi(std::vector<TIntermNode *> &&nodes)
+ {
+ return BaseResult::Multi(std::move(nodes));
+ }
+
+ template <typename Iter>
+ static PostResult Multi(Iter nodesBegin, Iter nodesEnd)
+ {
+ return BaseResult::Multi(nodesBegin, nodesEnd);
+ }
+
+ using BaseResult::isDrop;
+ using BaseResult::isFail;
+ using BaseResult::multi;
+ using BaseResult::single;
+
+ private:
+ PostResult(BaseResult &&other);
+ };
+
+ public:
+ TIntermRebuild(TCompiler &compiler, bool preVisit, bool postVisit);
+
+ virtual ~TIntermRebuild();
+
+ // Rebuilds the tree starting at the provided root. If a new node would be returned for the
+ // root, the root node's children become that of the new node instead. Returns false if failure
+ // occurred.
+ ANGLE_NO_DISCARD bool rebuildRoot(TIntermBlock &root);
+
+ protected:
+ virtual PreResult visitSymbolPre(TIntermSymbol &node);
+ virtual PreResult visitConstantUnionPre(TIntermConstantUnion &node);
+ virtual PreResult visitFunctionPrototypePre(TIntermFunctionPrototype &node);
+ virtual PreResult visitPreprocessorDirectivePre(TIntermPreprocessorDirective &node);
+ virtual PreResult visitUnaryPre(TIntermUnary &node);
+ virtual PreResult visitBinaryPre(TIntermBinary &node);
+ virtual PreResult visitTernaryPre(TIntermTernary &node);
+ virtual PreResult visitSwizzlePre(TIntermSwizzle &node);
+ virtual PreResult visitIfElsePre(TIntermIfElse &node);
+ virtual PreResult visitSwitchPre(TIntermSwitch &node);
+ virtual PreResult visitCasePre(TIntermCase &node);
+ virtual PreResult visitLoopPre(TIntermLoop &node);
+ virtual PreResult visitBranchPre(TIntermBranch &node);
+ virtual PreResult visitDeclarationPre(TIntermDeclaration &node);
+ virtual PreResult visitBlockPre(TIntermBlock &node);
+ virtual PreResult visitAggregatePre(TIntermAggregate &node);
+ virtual PreResult visitFunctionDefinitionPre(TIntermFunctionDefinition &node);
+ virtual PreResult visitGlobalQualifierDeclarationPre(TIntermGlobalQualifierDeclaration &node);
+
+ virtual PostResult visitSymbolPost(TIntermSymbol &node);
+ virtual PostResult visitConstantUnionPost(TIntermConstantUnion &node);
+ virtual PostResult visitFunctionPrototypePost(TIntermFunctionPrototype &node);
+ virtual PostResult visitPreprocessorDirectivePost(TIntermPreprocessorDirective &node);
+ virtual PostResult visitUnaryPost(TIntermUnary &node);
+ virtual PostResult visitBinaryPost(TIntermBinary &node);
+ virtual PostResult visitTernaryPost(TIntermTernary &node);
+ virtual PostResult visitSwizzlePost(TIntermSwizzle &node);
+ virtual PostResult visitIfElsePost(TIntermIfElse &node);
+ virtual PostResult visitSwitchPost(TIntermSwitch &node);
+ virtual PostResult visitCasePost(TIntermCase &node);
+ virtual PostResult visitLoopPost(TIntermLoop &node);
+ virtual PostResult visitBranchPost(TIntermBranch &node);
+ virtual PostResult visitDeclarationPost(TIntermDeclaration &node);
+ virtual PostResult visitBlockPost(TIntermBlock &node);
+ virtual PostResult visitAggregatePost(TIntermAggregate &node);
+ virtual PostResult visitFunctionDefinitionPost(TIntermFunctionDefinition &node);
+ virtual PostResult visitGlobalQualifierDeclarationPost(TIntermGlobalQualifierDeclaration &node);
+
+ // Can be used to rebuild a specific node during a traversal. Useful for fine control of
+ // rebuilding a node's children.
+ ANGLE_NO_DISCARD PostResult rebuild(TIntermNode &node);
+
+ // Rebuilds the provided node in place. If a new node would be returned, the old node's children
+ // become that of the new node instead. Returns false if failure occurred.
+ ANGLE_NO_DISCARD bool rebuildInPlace(TIntermAggregate &node);
+
+ // Rebuilds the provided node in place. If a new node would be returned, the old node's children
+ // become that of the new node instead. Returns false if failure occurred.
+ ANGLE_NO_DISCARD bool rebuildInPlace(TIntermBlock &node);
+
+ // Rebuilds the provided node in place. If a new node would be returned, the old node's children
+ // become that of the new node instead. Returns false if failure occurred.
+ ANGLE_NO_DISCARD bool rebuildInPlace(TIntermDeclaration &node);
+
+ // If currently at or below a function declaration body, this returns the function that encloses
+ // the currently visited node. (This returns null if at a function declaration node.)
+ const TFunction *getParentFunction() const;
+
+ TIntermNode *getParentNode(size_t offset = 0) const;
+
+ private:
+ template <typename Node>
+ ANGLE_NO_DISCARD bool rebuildInPlaceImpl(Node &node);
+
+ PostResult traverseAny(TIntermNode &node);
+
+ template <typename Node>
+ Node *traverseAnyAs(TIntermNode &node);
+
+ template <typename Node>
+ bool traverseAnyAs(TIntermNode &node, Node *&out);
+
+ PreResult traversePre(TIntermNode &originalNode);
+ TIntermNode *traverseChildren(NodeType currNodeType,
+ const TIntermNode &originalNode,
+ TIntermNode &currNode,
+ VisitBits visit);
+ PostResult traversePost(NodeType nodeType,
+ const TIntermNode &originalNode,
+ TIntermNode &currNode,
+ VisitBits visit);
+
+ bool traverseAggregateBaseChildren(TIntermAggregateBase &node);
+
+ TIntermNode *traverseUnaryChildren(TIntermUnary &node);
+ TIntermNode *traverseBinaryChildren(TIntermBinary &node);
+ TIntermNode *traverseTernaryChildren(TIntermTernary &node);
+ TIntermNode *traverseSwizzleChildren(TIntermSwizzle &node);
+ TIntermNode *traverseIfElseChildren(TIntermIfElse &node);
+ TIntermNode *traverseSwitchChildren(TIntermSwitch &node);
+ TIntermNode *traverseCaseChildren(TIntermCase &node);
+ TIntermNode *traverseLoopChildren(TIntermLoop &node);
+ TIntermNode *traverseBranchChildren(TIntermBranch &node);
+ TIntermNode *traverseDeclarationChildren(TIntermDeclaration &node);
+ TIntermNode *traverseBlockChildren(TIntermBlock &node);
+ TIntermNode *traverseAggregateChildren(TIntermAggregate &node);
+ TIntermNode *traverseFunctionDefinitionChildren(TIntermFunctionDefinition &node);
+ TIntermNode *traverseGlobalQualifierDeclarationChildren(
+ TIntermGlobalQualifierDeclaration &node);
+
+ protected:
+ TCompiler &mCompiler;
+ TSymbolTable &mSymbolTable;
+ const TFunction *mParentFunc = nullptr;
+ GetNodeType getNodeType;
+
+ private:
+ ConsList<TIntermNode *> mNodeStack{nullptr, nullptr};
+ bool mPreVisit;
+ bool mPostVisit;
+};
+
+} // namespace sh
+
+#endif // COMPILER_TRANSLATOR_TRANSLATORMETALDIRECT_INTERMREBUILD_H_
diff --git a/src/compiler/translator/TranslatorMetalDirect/NodeType.h b/src/compiler/translator/tree_util/NodeType.h
index 4ab63dbebb..4ab63dbebb 100644
--- a/src/compiler/translator/TranslatorMetalDirect/NodeType.h
+++ b/src/compiler/translator/tree_util/NodeType.h
diff --git a/src/libANGLE/capture/FrameCapture.h b/src/libANGLE/capture/FrameCapture.h
index 8d5a66416f..e588df1c68 100644
--- a/src/libANGLE/capture/FrameCapture.h
+++ b/src/libANGLE/capture/FrameCapture.h
@@ -621,8 +621,6 @@ void ParamBuffer::addEnumParam(const char *paramName,
mParamCaptures.emplace_back(std::move(capture));
}
-std::ostream &operator<<(std::ostream &os, const ParamCapture &capture);
-
// Pointer capture helpers.
void CaptureMemory(const void *source, size_t size, ParamCapture *paramCapture);
void CaptureString(const GLchar *str, ParamCapture *paramCapture);
diff --git a/src/libANGLE/renderer/metal/DisplayMtl.mm b/src/libANGLE/renderer/metal/DisplayMtl.mm
index 1875730ff2..9acc4f8a9b 100644
--- a/src/libANGLE/renderer/metal/DisplayMtl.mm
+++ b/src/libANGLE/renderer/metal/DisplayMtl.mm
@@ -750,7 +750,7 @@ void DisplayMtl::ensureCapsInitialized() const
mNativeCaps.programBinaryFormats.push_back(GL_PROGRAM_BINARY_ANGLE);
// GL_APPLE_clip_distance
- mNativeCaps.maxClipDistances = 8;
+ mNativeCaps.maxClipDistances = mFeatures.directMetalGeneration.enabled ? 0 : 8;
// Metal doesn't support GL_TEXTURE_COMPARE_MODE=GL_NONE for shadow samplers
mNativeLimitations.noShadowSamplerCompareModeNone = true;
@@ -857,7 +857,7 @@ void DisplayMtl::initializeExtensions() const
mNativeExtensions.getProgramBinaryOES = true;
// GL_APPLE_clip_distance
- mNativeExtensions.clipDistanceAPPLE = true;
+ mNativeExtensions.clipDistanceAPPLE = !mFeatures.directMetalGeneration.enabled;
// GL_NV_pixel_buffer_object
mNativeExtensions.pixelBufferObjectNV = true;
diff --git a/src/libANGLE/renderer/vulkan/ContextVk.cpp b/src/libANGLE/renderer/vulkan/ContextVk.cpp
index 5b8af77032..b779d3a8e4 100644
--- a/src/libANGLE/renderer/vulkan/ContextVk.cpp
+++ b/src/libANGLE/renderer/vulkan/ContextVk.cpp
@@ -5086,6 +5086,17 @@ angle::Result ContextVk::updateActiveTextures(const gl::Context *context)
ANGLE_TRY(textureVk->ensureMutable(this));
}
+ if (textureVk->getImage().hasEmulatedImageFormat())
+ {
+ char stringBuffer[100];
+ snprintf(
+ stringBuffer, sizeof(stringBuffer),
+ "The Vulkan driver does not support texture format 0x%04X, emulating with 0x%04X",
+ textureVk->getImage().getIntendedFormat().glInternalFormat,
+ textureVk->getImage().getActualFormat().glInternalFormat);
+ ANGLE_PERF_WARNING(getDebug(), GL_DEBUG_SEVERITY_LOW, stringBuffer);
+ }
+
vk::ImageOrBufferViewSubresourceSerial imageViewSerial =
textureVk->getImageViewSubresourceSerial(samplerState);
mActiveTexturesDesc.update(textureUnit, imageViewSerial, samplerHelper.getSamplerSerial());
diff --git a/src/libANGLE/renderer/vulkan/TextureVk.cpp b/src/libANGLE/renderer/vulkan/TextureVk.cpp
index 3849462004..9df14e4f30 100644
--- a/src/libANGLE/renderer/vulkan/TextureVk.cpp
+++ b/src/libANGLE/renderer/vulkan/TextureVk.cpp
@@ -2088,6 +2088,9 @@ angle::Result TextureVk::reinitImageAsRenderable(ContextVk *contextVk,
return angle::Result::Continue;
}
+ ANGLE_PERF_WARNING(contextVk->getDebug(), GL_DEBUG_SEVERITY_LOW,
+ "Copying data due to texture format fallback");
+
// Make sure the source is initialized and it's staged updates are flushed.
ASSERT(mImage->valid());
ANGLE_TRY(flushImageStagedUpdates(contextVk));
diff --git a/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp b/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
index a02a2dad7d..2cec92a5f6 100644
--- a/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
+++ b/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
@@ -59,16 +59,17 @@ angle::Result WarnOnVertexFormatConversion(ContextVk *contextVk,
return angle::Result::Continue;
}
- std::ostringstream stream;
- stream << "The Vulkan driver does not support the 0x" << std::hex
- << vertexFormat.getIntendedFormat().glInternalFormat
- << " vertex attribute format; emulating with 0x"
- << vertexFormat.getActualBufferFormat(compressed).glInternalFormat;
- ANGLE_PERF_WARNING(contextVk->getDebug(), GL_DEBUG_SEVERITY_LOW, stream.str().c_str());
+ char stringBuffer[100];
+ snprintf(
+ stringBuffer, sizeof(stringBuffer),
+ "The Vulkan driver does not support vertex attribute format 0x%04X, emulating with 0x%04X",
+ vertexFormat.getIntendedFormat().glInternalFormat,
+ vertexFormat.getActualBufferFormat(compressed).glInternalFormat);
+ ANGLE_PERF_WARNING(contextVk->getDebug(), GL_DEBUG_SEVERITY_LOW, stringBuffer);
if (insertEventMarker)
{
- ANGLE_TRY(contextVk->insertEventMarker(0, stream.str().c_str()));
+ ANGLE_TRY(contextVk->insertEventMarker(0, stringBuffer));
}
return angle::Result::Continue;
diff --git a/src/libANGLE/renderer/vulkan/vk_helpers.cpp b/src/libANGLE/renderer/vulkan/vk_helpers.cpp
index fedf1422e2..336915df5a 100644
--- a/src/libANGLE/renderer/vulkan/vk_helpers.cpp
+++ b/src/libANGLE/renderer/vulkan/vk_helpers.cpp
@@ -6364,8 +6364,8 @@ angle::Result ImageHelper::flushStagedUpdates(ContextVk *contextVk,
{
if (update.data.buffer.formatID != mActualFormatID)
{
- // ToDo: anglebug:6368, we should handle this in higher level code.
- // If we have incompatible updates, skip but keept it.
+ // TODD: http://anglebug.com/6368, we should handle this in higher level code.
+ // If we have incompatible updates, skip but keep it.
updatesToKeep.emplace_back(std::move(update));
continue;
}
diff --git a/src/tests/capture_replay_tests.py b/src/tests/capture_replay_tests.py
index e87ae2b9bc..6a7d4a3fdb 100755
--- a/src/tests/capture_replay_tests.py
+++ b/src/tests/capture_replay_tests.py
@@ -52,6 +52,7 @@ SUBPROCESS_TIMEOUT = 600 # in seconds
DEFAULT_RESULT_FILE = "results.txt"
DEFAULT_LOG_LEVEL = "info"
DEFAULT_MAX_JOBS = 8
+DEFAULT_MAX_NINJA_JOBS = 3
REPLAY_BINARY = "capture_replay_tests"
if sys.platform == "win32":
REPLAY_BINARY += ".exe"
@@ -800,7 +801,7 @@ def main(args):
logger = multiprocessing.log_to_stderr()
logger.setLevel(level=args.log.upper())
- ninja_lock = multiprocessing.Lock()
+ ninja_lock = multiprocessing.Semaphore(args.max_ninja_jobs)
child_processes_manager = ChildProcessesManager(logger, ninja_lock)
try:
start_time = time.time()
@@ -1053,6 +1054,11 @@ if __name__ == '__main__':
'--also-run-skipped-for-capture-tests',
action='store_true',
help='Also run tests that are disabled in the expectations by SKIP_FOR_CAPTURE')
+ parser.add_argument(
+ '--max-ninja-jobs',
+ type=int,
+ default=DEFAULT_MAX_NINJA_JOBS,
+ help='Maximum number of concurrent ninja jobs to run at once.')
# TODO(jmadill): Remove this argument. http://anglebug.com/6102
parser.add_argument('--depot-tools-path', default=None, help='Path to depot tools')
diff --git a/src/tests/capture_replay_tests/capture_replay_expectations.txt b/src/tests/capture_replay_tests/capture_replay_expectations.txt
index 55294cc225..23ac84a30f 100644
--- a/src/tests/capture_replay_tests/capture_replay_expectations.txt
+++ b/src/tests/capture_replay_tests/capture_replay_expectations.txt
@@ -97,6 +97,7 @@
6180 : DrawBuffersTest.UnwrittenOutputVariablesShouldNotCrash/ES2_Vulkan_SwiftShader = FLAKY
6180 : WebGLCompatibilityTest.DrawElementsBufferOutOfBoundsInIndexBuffer/ES2_Vulkan_SwiftShader = FLAKY
6180 : ImageTest.MipLevels/* = FLAKY
+6373 : WebGLCompatibilityTest.DrawArraysBufferOutOfBoundsNonInstanced/* = FLAKY
# ES3
6180 : BlitFramebufferTest.BlitDepthStencilPixelByPixel/ES3_Vulkan_SwiftShader = SKIPPED_BY_GTEST
diff --git a/src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp b/src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp
index 6518e2afc0..80b0582a70 100644
--- a/src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp
+++ b/src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp
@@ -116,4 +116,21 @@ TEST_F(ScalarizeVecAndMatConstructorArgsTest, MultiDeclaration)
EXPECT_TRUE(foundInCodeInOrder(expectedStrings));
}
+// Verifies that constructors without precision don't cause issues.
+TEST_F(ScalarizeVecAndMatConstructorArgsTest, ConstructorWithoutPrecision)
+{
+ const std::string shaderString =
+ R"(
+ precision mediump float;
+
+ uniform float u;
+
+ void main()
+ {
+ mat4 m = mat4(u);
+ mat2(0, bvec3(m));
+ })";
+ compile(shaderString);
+}
+
} // anonymous namespace
diff --git a/src/tests/deqp_support/deqp_gles3_test_expectations.txt b/src/tests/deqp_support/deqp_gles3_test_expectations.txt
index c96d68e8c1..779ff6a0e8 100644
--- a/src/tests/deqp_support/deqp_gles3_test_expectations.txt
+++ b/src/tests/deqp_support/deqp_gles3_test_expectations.txt
@@ -376,6 +376,8 @@
2137 MAC OPENGL INTEL : dEQP-GLES3.functional.shaders.discard.function_static_loop_never = SKIP
2137 MAC OPENGL INTEL : dEQP-GLES3.functional.shaders.discard.dynamic_loop_never = SKIP
2137 MAC OPENGL INTEL : dEQP-GLES3.functional.shaders.discard.static_loop_never = SKIP
+// Mac Intel UHD 630 crashes
+6376 MAC OPENGL INTEL : dEQP-GLES3.functional.draw.random.127 = SKIP
// Mac Intel failures
2137 MAC OPENGL INTEL : dEQP-GLES3.functional.color_clear.* = FAIL
@@ -444,6 +446,12 @@
5172 MAC OPENGL INTEL : dEQP-GLES3.functional.fragment_out.basic.int.* = FAIL
5172 MAC OPENGL INTEL : dEQP-GLES3.functional.fragment_out.basic.uint.* = FAIL
+// Mac Intel UHD 630 failures
+6376 MAC OPENGL INTEL : dEQP-GLES3.functional.shaders.texture_functions.textureprojlod.isampler3d_vertex = FAIL
+6376 MAC OPENGL INTEL : dEQP-GLES3.functional.shaders.texture_functions.textureprojlod.usampler3d_vertex = FAIL
+6376 MAC OPENGL INTEL : dEQP-GLES3.functional.texture.mipmap.cube.base_level.linear_linear = FAIL
+6376 MAC OPENGL INTEL : dEQP-GLES3.functional.texture.mipmap.cube.base_level.linear_nearest = FAIL
+
// Android only failures
1487 ANDROID GLES : dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.red_half_float_oes = FAIL
1487 ANDROID GLES : dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rg_half_float_oes = FAIL
diff --git a/src/tests/perf_tests/TracePerfTest.cpp b/src/tests/perf_tests/TracePerfTest.cpp
index ab23f285f3..8c9d868d8d 100644
--- a/src/tests/perf_tests/TracePerfTest.cpp
+++ b/src/tests/perf_tests/TracePerfTest.cpp
@@ -1317,12 +1317,6 @@ void TracePerfTest::drawBenchmark()
uint32_t windowX = kOffscreenOffsetX + frameX * kOffscreenFrameWidth;
uint32_t windowY = kOffscreenOffsetY + frameY * kOffscreenFrameHeight;
- if (gVerboseLogging)
- {
- printf("Frame %d: x %d y %d (screen x %d, screen y %d)\n", mOffscreenFrameCount,
- frameX, frameY, windowX, windowY);
- }
-
GLboolean scissorTest = GL_FALSE;
glGetBooleanv(GL_SCISSOR_TEST, &scissorTest);
diff --git a/src/tests/restricted_traces/.gitignore b/src/tests/restricted_traces/.gitignore
index 85baa5fbe1..fba8fa117a 100644
--- a/src/tests/restricted_traces/.gitignore
+++ b/src/tests/restricted_traces/.gitignore
@@ -6,6 +6,7 @@ asphalt_8/
avakin_life/
aztec_ruins/
beach_buggy_racing/
+blockman_go/
brawl_stars/
bricks_breaker_quest/
bubble_shooter/
diff --git a/src/tests/restricted_traces/restricted_traces.json b/src/tests/restricted_traces/restricted_traces.json
index a9b0b24ee2..69bb1d2b58 100644
--- a/src/tests/restricted_traces/restricted_traces.json
+++ b/src/tests/restricted_traces/restricted_traces.json
@@ -16,6 +16,7 @@
"avakin_life 1",
"aztec_ruins 1",
"beach_buggy_racing 1",
+ "blockman_go 1",
"brawl_stars 1",
"bricks_breaker_quest 1",
"bubble_shooter 1",
diff --git a/src/tests/restricted_traces/restricted_traces_autogen.cpp b/src/tests/restricted_traces/restricted_traces_autogen.cpp
index cd4f439bb2..214fe352b2 100644
--- a/src/tests/restricted_traces/restricted_traces_autogen.cpp
+++ b/src/tests/restricted_traces/restricted_traces_autogen.cpp
@@ -20,6 +20,7 @@
#include "avakin_life/avakin_life_capture_context1.h"
#include "aztec_ruins/aztec_ruins_capture_context1.h"
#include "beach_buggy_racing/beach_buggy_racing_capture_context1.h"
+#include "blockman_go/blockman_go_capture_context2.h"
#include "brawl_stars/brawl_stars_capture_context1.h"
#include "bricks_breaker_quest/bricks_breaker_quest_capture_context2.h"
#include "bubble_shooter/bubble_shooter_capture_context5.h"
@@ -119,7 +120,7 @@ namespace trace_angle
{
namespace
{
-constexpr size_t kNumTraces = 102;
+constexpr size_t kNumTraces = 103;
struct TracePair
{
const char name[kTraceInfoMaxNameLen];
@@ -302,6 +303,28 @@ constexpr TracePair kTraceInfos[kNumTraces] = {
false,
false,
false}},
+ {"blockman_go",
+ {"blockman_go",
+ blockman_go::kReplayContextClientMajorVersion,
+ blockman_go::kReplayContextClientMinorVersion,
+ blockman_go::kReplayFrameStart,
+ blockman_go::kReplayFrameEnd,
+ blockman_go::kReplayDrawSurfaceWidth,
+ blockman_go::kReplayDrawSurfaceHeight,
+ blockman_go::kReplayDrawSurfaceColorSpace,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ false,
+ false,
+ false,
+ false,
+ false}},
{"brawl_stars",
{"brawl_stars",
brawl_stars::kReplayContextClientMajorVersion,
diff --git a/src/tests/restricted_traces/restricted_traces_autogen.gni b/src/tests/restricted_traces/restricted_traces_autogen.gni
index d489e6d089..3de91c1871 100644
--- a/src/tests/restricted_traces/restricted_traces_autogen.gni
+++ b/src/tests/restricted_traces/restricted_traces_autogen.gni
@@ -187,6 +187,114 @@ angle_restricted_traces = [
[ "beach_buggy_racing/beach_buggy_racing_capture_context1.angledata.gz" ],
],
[
+ "blockman_go",
+ 2,
+ [
+ "blockman_go/blockman_go_capture_context2_frame001.cpp",
+ "blockman_go/blockman_go_capture_context2_frame002.cpp",
+ "blockman_go/blockman_go_capture_context2_frame003.cpp",
+ "blockman_go/blockman_go_capture_context2_frame004.cpp",
+ "blockman_go/blockman_go_capture_context2_frame005.cpp",
+ "blockman_go/blockman_go_capture_context2_frame006.cpp",
+ "blockman_go/blockman_go_capture_context2_frame007.cpp",
+ "blockman_go/blockman_go_capture_context2_frame008.cpp",
+ "blockman_go/blockman_go_capture_context2_frame009.cpp",
+ "blockman_go/blockman_go_capture_context2_frame010.cpp",
+ "blockman_go/blockman_go_capture_context2_frame011.cpp",
+ "blockman_go/blockman_go_capture_context2_frame012.cpp",
+ "blockman_go/blockman_go_capture_context2_frame013.cpp",
+ "blockman_go/blockman_go_capture_context2_frame014.cpp",
+ "blockman_go/blockman_go_capture_context2_frame015.cpp",
+ "blockman_go/blockman_go_capture_context2_frame016.cpp",
+ "blockman_go/blockman_go_capture_context2_frame017.cpp",
+ "blockman_go/blockman_go_capture_context2_frame018.cpp",
+ "blockman_go/blockman_go_capture_context2_frame019.cpp",
+ "blockman_go/blockman_go_capture_context2_frame020.cpp",
+ "blockman_go/blockman_go_capture_context2_frame021.cpp",
+ "blockman_go/blockman_go_capture_context2_frame022.cpp",
+ "blockman_go/blockman_go_capture_context2_frame023.cpp",
+ "blockman_go/blockman_go_capture_context2_frame024.cpp",
+ "blockman_go/blockman_go_capture_context2_frame025.cpp",
+ "blockman_go/blockman_go_capture_context2_frame026.cpp",
+ "blockman_go/blockman_go_capture_context2_frame027.cpp",
+ "blockman_go/blockman_go_capture_context2_frame028.cpp",
+ "blockman_go/blockman_go_capture_context2_frame029.cpp",
+ "blockman_go/blockman_go_capture_context2_frame030.cpp",
+ "blockman_go/blockman_go_capture_context2_frame031.cpp",
+ "blockman_go/blockman_go_capture_context2_frame032.cpp",
+ "blockman_go/blockman_go_capture_context2_frame033.cpp",
+ "blockman_go/blockman_go_capture_context2_frame034.cpp",
+ "blockman_go/blockman_go_capture_context2_frame035.cpp",
+ "blockman_go/blockman_go_capture_context2_frame036.cpp",
+ "blockman_go/blockman_go_capture_context2_frame037.cpp",
+ "blockman_go/blockman_go_capture_context2_frame038.cpp",
+ "blockman_go/blockman_go_capture_context2_frame039.cpp",
+ "blockman_go/blockman_go_capture_context2_frame040.cpp",
+ "blockman_go/blockman_go_capture_context2_frame041.cpp",
+ "blockman_go/blockman_go_capture_context2_frame042.cpp",
+ "blockman_go/blockman_go_capture_context2_frame043.cpp",
+ "blockman_go/blockman_go_capture_context2_frame044.cpp",
+ "blockman_go/blockman_go_capture_context2_frame045.cpp",
+ "blockman_go/blockman_go_capture_context2_frame046.cpp",
+ "blockman_go/blockman_go_capture_context2_frame047.cpp",
+ "blockman_go/blockman_go_capture_context2_frame048.cpp",
+ "blockman_go/blockman_go_capture_context2_frame049.cpp",
+ "blockman_go/blockman_go_capture_context2_frame050.cpp",
+ "blockman_go/blockman_go_capture_context2_frame051.cpp",
+ "blockman_go/blockman_go_capture_context2_frame052.cpp",
+ "blockman_go/blockman_go_capture_context2_frame053.cpp",
+ "blockman_go/blockman_go_capture_context2_frame054.cpp",
+ "blockman_go/blockman_go_capture_context2_frame055.cpp",
+ "blockman_go/blockman_go_capture_context2_frame056.cpp",
+ "blockman_go/blockman_go_capture_context2_frame057.cpp",
+ "blockman_go/blockman_go_capture_context2_frame058.cpp",
+ "blockman_go/blockman_go_capture_context2_frame059.cpp",
+ "blockman_go/blockman_go_capture_context2_frame060.cpp",
+ "blockman_go/blockman_go_capture_context2_frame061.cpp",
+ "blockman_go/blockman_go_capture_context2_frame062.cpp",
+ "blockman_go/blockman_go_capture_context2_frame063.cpp",
+ "blockman_go/blockman_go_capture_context2_frame064.cpp",
+ "blockman_go/blockman_go_capture_context2_frame065.cpp",
+ "blockman_go/blockman_go_capture_context2_frame066.cpp",
+ "blockman_go/blockman_go_capture_context2_frame067.cpp",
+ "blockman_go/blockman_go_capture_context2_frame068.cpp",
+ "blockman_go/blockman_go_capture_context2_frame069.cpp",
+ "blockman_go/blockman_go_capture_context2_frame070.cpp",
+ "blockman_go/blockman_go_capture_context2_frame071.cpp",
+ "blockman_go/blockman_go_capture_context2_frame072.cpp",
+ "blockman_go/blockman_go_capture_context2_frame073.cpp",
+ "blockman_go/blockman_go_capture_context2_frame074.cpp",
+ "blockman_go/blockman_go_capture_context2_frame075.cpp",
+ "blockman_go/blockman_go_capture_context2_frame076.cpp",
+ "blockman_go/blockman_go_capture_context2_frame077.cpp",
+ "blockman_go/blockman_go_capture_context2_frame078.cpp",
+ "blockman_go/blockman_go_capture_context2_frame079.cpp",
+ "blockman_go/blockman_go_capture_context2_frame080.cpp",
+ "blockman_go/blockman_go_capture_context2_frame081.cpp",
+ "blockman_go/blockman_go_capture_context2_frame082.cpp",
+ "blockman_go/blockman_go_capture_context2_frame083.cpp",
+ "blockman_go/blockman_go_capture_context2_frame084.cpp",
+ "blockman_go/blockman_go_capture_context2_frame085.cpp",
+ "blockman_go/blockman_go_capture_context2_frame086.cpp",
+ "blockman_go/blockman_go_capture_context2_frame087.cpp",
+ "blockman_go/blockman_go_capture_context2_frame088.cpp",
+ "blockman_go/blockman_go_capture_context2_frame089.cpp",
+ "blockman_go/blockman_go_capture_context2_frame090.cpp",
+ "blockman_go/blockman_go_capture_context2_frame091.cpp",
+ "blockman_go/blockman_go_capture_context2_frame092.cpp",
+ "blockman_go/blockman_go_capture_context2_frame093.cpp",
+ "blockman_go/blockman_go_capture_context2_frame094.cpp",
+ "blockman_go/blockman_go_capture_context2_frame095.cpp",
+ "blockman_go/blockman_go_capture_context2_frame096.cpp",
+ "blockman_go/blockman_go_capture_context2_frame097.cpp",
+ "blockman_go/blockman_go_capture_context2_frame098.cpp",
+ "blockman_go/blockman_go_capture_context2_frame099.cpp",
+ "blockman_go/blockman_go_capture_context2_frame100.cpp",
+ "blockman_go/blockman_go_capture_shared.cpp",
+ ],
+ [ "blockman_go/blockman_go.angledata.gz" ],
+ ],
+ [
"brawl_stars",
1,
[
diff --git a/third_party/abseil-cpp/CMake/install_test_project/CMakeLists.txt b/third_party/abseil-cpp/CMake/install_test_project/CMakeLists.txt
index eebfe617a4..b865b2ec50 100644
--- a/third_party/abseil-cpp/CMake/install_test_project/CMakeLists.txt
+++ b/third_party/abseil-cpp/CMake/install_test_project/CMakeLists.txt
@@ -22,4 +22,4 @@ add_executable(simple simple.cc)
find_package(absl REQUIRED)
-target_link_libraries(simple absl::strings)
+target_link_libraries(simple absl::strings absl::config)
diff --git a/third_party/abseil-cpp/CMake/install_test_project/simple.cc b/third_party/abseil-cpp/CMake/install_test_project/simple.cc
index e9e352912b..7daa7f0901 100644
--- a/third_party/abseil-cpp/CMake/install_test_project/simple.cc
+++ b/third_party/abseil-cpp/CMake/install_test_project/simple.cc
@@ -14,8 +14,17 @@
// limitations under the License.
#include <iostream>
+#include "absl/base/config.h"
#include "absl/strings/substitute.h"
+#if !defined(ABSL_LTS_RELEASE_VERSION) || ABSL_LTS_RELEASE_VERSION != 99998877
+#error ABSL_LTS_RELEASE_VERSION is not set correctly.
+#endif
+
+#if !defined(ABSL_LTS_RELEASE_PATCH_LEVEL) || ABSL_LTS_RELEASE_PATCH_LEVEL != 0
+#error ABSL_LTS_RELEASE_PATCH_LEVEL is not set correctly.
+#endif
+
int main(int argc, char** argv) {
for (int i = 0; i < argc; ++i) {
std::cout << absl::Substitute("Arg $0: $1\n", i, argv[i]);
diff --git a/third_party/abseil-cpp/README.chromium b/third_party/abseil-cpp/README.chromium
index 9ecfe0f345..8d27557d1d 100644
--- a/third_party/abseil-cpp/README.chromium
+++ b/third_party/abseil-cpp/README.chromium
@@ -4,7 +4,7 @@ URL: https://github.com/abseil/abseil-cpp
License: Apache 2.0
License File: LICENSE
Version: 0
-Revision: 637722af3a60c17915d3325604a0435ee92a41b4
+Revision: 8c800bb08d353c73d7dd68538388cf3bd2bcc6d0
Security Critical: yes
Description:
diff --git a/third_party/abseil-cpp/README.md b/third_party/abseil-cpp/README.md
index 264c4b3fea..db3a7b447a 100644
--- a/third_party/abseil-cpp/README.md
+++ b/third_party/abseil-cpp/README.md
@@ -92,6 +92,9 @@ Abseil contains the following C++ library components:
available within C++14 and C++17 versions of the C++ `<type_traits>` library.
* [`numeric`](absl/numeric/)
<br /> The `numeric` library contains C++11-compatible 128-bit integers.
+* [`profiling`](absl/profiling/)
+ <br /> The `profiling` library contains utility code for profiling C++
+ entities. It is currently a private dependency of other Abseil libraries.
* [`status`](absl/status/)
<br /> The `status` contains abstractions for error handling, specifically
`absl::Status` and `absl::StatusOr<T>`.
diff --git a/third_party/abseil-cpp/absl/CMakeLists.txt b/third_party/abseil-cpp/absl/CMakeLists.txt
index a41e1eeb35..b1715846f0 100644
--- a/third_party/abseil-cpp/absl/CMakeLists.txt
+++ b/third_party/abseil-cpp/absl/CMakeLists.txt
@@ -25,6 +25,7 @@ add_subdirectory(hash)
add_subdirectory(memory)
add_subdirectory(meta)
add_subdirectory(numeric)
+add_subdirectory(profiling)
add_subdirectory(random)
add_subdirectory(status)
add_subdirectory(strings)
diff --git a/third_party/abseil-cpp/absl/base/attributes.h b/third_party/abseil-cpp/absl/base/attributes.h
index 52139556f2..2665d8f387 100644
--- a/third_party/abseil-cpp/absl/base/attributes.h
+++ b/third_party/abseil-cpp/absl/base/attributes.h
@@ -548,13 +548,19 @@
// ABSL_ATTRIBUTE_PACKED
//
// Instructs the compiler not to use natural alignment for a tagged data
-// structure, but instead to reduce its alignment to 1. This attribute can
-// either be applied to members of a structure or to a structure in its
-// entirety. Applying this attribute (judiciously) to a structure in its
-// entirety to optimize the memory footprint of very commonly-used structs is
-// fine. Do not apply this attribute to a structure in its entirety if the
-// purpose is to control the offsets of the members in the structure. Instead,
-// apply this attribute only to structure members that need it.
+// structure, but instead to reduce its alignment to 1.
+//
+// Therefore, DO NOT APPLY THIS ATTRIBUTE TO STRUCTS CONTAINING ATOMICS. Doing
+// so can cause atomic variables to be mis-aligned and silently violate
+// atomicity on x86.
+//
+// This attribute can either be applied to members of a structure or to a
+// structure in its entirety. Applying this attribute (judiciously) to a
+// structure in its entirety to optimize the memory footprint of very
+// commonly-used structs is fine. Do not apply this attribute to a structure in
+// its entirety if the purpose is to control the offsets of the members in the
+// structure. Instead, apply this attribute only to structure members that need
+// it.
//
// When applying ABSL_ATTRIBUTE_PACKED only to specific structure members the
// natural alignment of structure members not annotated is preserved. Aligned
diff --git a/third_party/abseil-cpp/absl/base/config.h b/third_party/abseil-cpp/absl/base/config.h
index 0524196d56..c7b2e64de8 100644
--- a/third_party/abseil-cpp/absl/base/config.h
+++ b/third_party/abseil-cpp/absl/base/config.h
@@ -66,6 +66,35 @@
#include "absl/base/options.h"
#include "absl/base/policy_checks.h"
+// Abseil long-term support (LTS) releases will define
+// `ABSL_LTS_RELEASE_VERSION` to the integer representing the date string of the
+// LTS release version, and will define `ABSL_LTS_RELEASE_PATCH_LEVEL` to the
+// integer representing the patch-level for that release.
+//
+// For example, for LTS release version "20300401.2", this would give us
+// ABSL_LTS_RELEASE_VERSION == 20300401 && ABSL_LTS_RELEASE_PATCH_LEVEL == 2
+//
+// These symbols will not be defined in non-LTS code.
+//
+// Abseil recommends that clients live-at-head. Therefore, if you are using
+// these symbols to assert a minimum version requirement, we recommend you do it
+// as
+//
+// #if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20300401
+// #error Project foo requires Abseil LTS version >= 20300401
+// #endif
+//
+// The `defined(ABSL_LTS_RELEASE_VERSION)` part of the check excludes
+// live-at-head clients from the minimum version assertion.
+//
+// See https://abseil.io/about/releases for more information on Abseil release
+// management.
+//
+// LTS releases can be obtained from
+// https://github.com/abseil/abseil-cpp/releases.
+#undef ABSL_LTS_RELEASE_VERSION
+#undef ABSL_LTS_RELEASE_PATCH_LEVEL
+
// Helper macro to convert a CPP variable to a string literal.
#define ABSL_INTERNAL_DO_TOKEN_STR(x) #x
#define ABSL_INTERNAL_TOKEN_STR(x) ABSL_INTERNAL_DO_TOKEN_STR(x)
diff --git a/third_party/abseil-cpp/absl/base/dynamic_annotations.h b/third_party/abseil-cpp/absl/base/dynamic_annotations.h
index 065bd5be09..1ebf1d124b 100644
--- a/third_party/abseil-cpp/absl/base/dynamic_annotations.h
+++ b/third_party/abseil-cpp/absl/base/dynamic_annotations.h
@@ -430,31 +430,6 @@ ABSL_NAMESPACE_END
#endif
-#ifdef __cplusplus
-#ifdef ABSL_HAVE_THREAD_SANITIZER
-ABSL_INTERNAL_BEGIN_EXTERN_C
-int RunningOnValgrind();
-double ValgrindSlowdown();
-ABSL_INTERNAL_END_EXTERN_C
-#else
-namespace absl {
-ABSL_NAMESPACE_BEGIN
-namespace base_internal {
-ABSL_DEPRECATED(
- "Don't use this interface. It is misleading and is being deleted.")
-ABSL_ATTRIBUTE_ALWAYS_INLINE inline int RunningOnValgrind() { return 0; }
-ABSL_DEPRECATED(
- "Don't use this interface. It is misleading and is being deleted.")
-ABSL_ATTRIBUTE_ALWAYS_INLINE inline double ValgrindSlowdown() { return 1.0; }
-} // namespace base_internal
-ABSL_NAMESPACE_END
-} // namespace absl
-
-using absl::base_internal::RunningOnValgrind;
-using absl::base_internal::ValgrindSlowdown;
-#endif
-#endif
-
// -------------------------------------------------------------------------
// Address sanitizer annotations
diff --git a/third_party/abseil-cpp/absl/container/inlined_vector.h b/third_party/abseil-cpp/absl/container/inlined_vector.h
index 7c18234235..37e5fef8fd 100644
--- a/third_party/abseil-cpp/absl/container/inlined_vector.h
+++ b/third_party/abseil-cpp/absl/container/inlined_vector.h
@@ -72,37 +72,43 @@ class InlinedVector {
using Storage = inlined_vector_internal::Storage<T, N, A>;
- using AllocatorTraits = typename Storage::AllocatorTraits;
- using RValueReference = typename Storage::RValueReference;
- using MoveIterator = typename Storage::MoveIterator;
- using IsMemcpyOk = typename Storage::IsMemcpyOk;
-
- template <typename Iterator>
+ template <typename TheA>
+ using AllocatorTraits = inlined_vector_internal::AllocatorTraits<TheA>;
+ template <typename TheA>
+ using MoveIterator = inlined_vector_internal::MoveIterator<TheA>;
+ template <typename TheA>
+ using IsMemcpyOk = inlined_vector_internal::IsMemcpyOk<TheA>;
+
+ template <typename TheA, typename Iterator>
using IteratorValueAdapter =
- typename Storage::template IteratorValueAdapter<Iterator>;
- using CopyValueAdapter = typename Storage::CopyValueAdapter;
- using DefaultValueAdapter = typename Storage::DefaultValueAdapter;
+ inlined_vector_internal::IteratorValueAdapter<TheA, Iterator>;
+ template <typename TheA>
+ using CopyValueAdapter = inlined_vector_internal::CopyValueAdapter<TheA>;
+ template <typename TheA>
+ using DefaultValueAdapter =
+ inlined_vector_internal::DefaultValueAdapter<TheA>;
template <typename Iterator>
using EnableIfAtLeastForwardIterator = absl::enable_if_t<
- inlined_vector_internal::IsAtLeastForwardIterator<Iterator>::value>;
+ inlined_vector_internal::IsAtLeastForwardIterator<Iterator>::value, int>;
template <typename Iterator>
using DisableIfAtLeastForwardIterator = absl::enable_if_t<
- !inlined_vector_internal::IsAtLeastForwardIterator<Iterator>::value>;
+ !inlined_vector_internal::IsAtLeastForwardIterator<Iterator>::value, int>;
public:
- using allocator_type = typename Storage::allocator_type;
- using value_type = typename Storage::value_type;
- using pointer = typename Storage::pointer;
- using const_pointer = typename Storage::const_pointer;
- using size_type = typename Storage::size_type;
- using difference_type = typename Storage::difference_type;
- using reference = typename Storage::reference;
- using const_reference = typename Storage::const_reference;
- using iterator = typename Storage::iterator;
- using const_iterator = typename Storage::const_iterator;
- using reverse_iterator = typename Storage::reverse_iterator;
- using const_reverse_iterator = typename Storage::const_reverse_iterator;
+ using allocator_type = A;
+ using value_type = inlined_vector_internal::ValueType<A>;
+ using pointer = inlined_vector_internal::Pointer<A>;
+ using const_pointer = inlined_vector_internal::ConstPointer<A>;
+ using size_type = inlined_vector_internal::SizeType<A>;
+ using difference_type = inlined_vector_internal::DifferenceType<A>;
+ using reference = inlined_vector_internal::Reference<A>;
+ using const_reference = inlined_vector_internal::ConstReference<A>;
+ using iterator = inlined_vector_internal::Iterator<A>;
+ using const_iterator = inlined_vector_internal::ConstIterator<A>;
+ using reverse_iterator = inlined_vector_internal::ReverseIterator<A>;
+ using const_reverse_iterator =
+ inlined_vector_internal::ConstReverseIterator<A>;
// ---------------------------------------------------------------------------
// InlinedVector Constructors and Destructor
@@ -111,28 +117,28 @@ class InlinedVector {
// Creates an empty inlined vector with a value-initialized allocator.
InlinedVector() noexcept(noexcept(allocator_type())) : storage_() {}
- // Creates an empty inlined vector with a copy of `alloc`.
- explicit InlinedVector(const allocator_type& alloc) noexcept
- : storage_(alloc) {}
+ // Creates an empty inlined vector with a copy of `allocator`.
+ explicit InlinedVector(const allocator_type& allocator) noexcept
+ : storage_(allocator) {}
// Creates an inlined vector with `n` copies of `value_type()`.
explicit InlinedVector(size_type n,
- const allocator_type& alloc = allocator_type())
- : storage_(alloc) {
- storage_.Initialize(DefaultValueAdapter(), n);
+ const allocator_type& allocator = allocator_type())
+ : storage_(allocator) {
+ storage_.Initialize(DefaultValueAdapter<A>(), n);
}
// Creates an inlined vector with `n` copies of `v`.
InlinedVector(size_type n, const_reference v,
- const allocator_type& alloc = allocator_type())
- : storage_(alloc) {
- storage_.Initialize(CopyValueAdapter(v), n);
+ const allocator_type& allocator = allocator_type())
+ : storage_(allocator) {
+ storage_.Initialize(CopyValueAdapter<A>(std::addressof(v)), n);
}
// Creates an inlined vector with copies of the elements of `list`.
InlinedVector(std::initializer_list<value_type> list,
- const allocator_type& alloc = allocator_type())
- : InlinedVector(list.begin(), list.end(), alloc) {}
+ const allocator_type& allocator = allocator_type())
+ : InlinedVector(list.begin(), list.end(), allocator) {}
// Creates an inlined vector with elements constructed from the provided
// forward iterator range [`first`, `last`).
@@ -141,35 +147,36 @@ class InlinedVector {
// this constructor with two integral arguments and a call to the above
// `InlinedVector(size_type, const_reference)` constructor.
template <typename ForwardIterator,
- EnableIfAtLeastForwardIterator<ForwardIterator>* = nullptr>
+ EnableIfAtLeastForwardIterator<ForwardIterator> = 0>
InlinedVector(ForwardIterator first, ForwardIterator last,
- const allocator_type& alloc = allocator_type())
- : storage_(alloc) {
- storage_.Initialize(IteratorValueAdapter<ForwardIterator>(first),
+ const allocator_type& allocator = allocator_type())
+ : storage_(allocator) {
+ storage_.Initialize(IteratorValueAdapter<A, ForwardIterator>(first),
std::distance(first, last));
}
// Creates an inlined vector with elements constructed from the provided input
// iterator range [`first`, `last`).
template <typename InputIterator,
- DisableIfAtLeastForwardIterator<InputIterator>* = nullptr>
+ DisableIfAtLeastForwardIterator<InputIterator> = 0>
InlinedVector(InputIterator first, InputIterator last,
- const allocator_type& alloc = allocator_type())
- : storage_(alloc) {
+ const allocator_type& allocator = allocator_type())
+ : storage_(allocator) {
std::copy(first, last, std::back_inserter(*this));
}
// Creates an inlined vector by copying the contents of `other` using
// `other`'s allocator.
InlinedVector(const InlinedVector& other)
- : InlinedVector(other, *other.storage_.GetAllocPtr()) {}
+ : InlinedVector(other, other.storage_.GetAllocator()) {}
- // Creates an inlined vector by copying the contents of `other` using `alloc`.
- InlinedVector(const InlinedVector& other, const allocator_type& alloc)
- : storage_(alloc) {
+ // Creates an inlined vector by copying the contents of `other` using the
+ // provided `allocator`.
+ InlinedVector(const InlinedVector& other, const allocator_type& allocator)
+ : storage_(allocator) {
if (other.empty()) {
// Empty; nothing to do.
- } else if (IsMemcpyOk::value && !other.storage_.GetIsAllocated()) {
+ } else if (IsMemcpyOk<A>::value && !other.storage_.GetIsAllocated()) {
// Memcpy-able and do not need allocation.
storage_.MemcpyFrom(other.storage_);
} else {
@@ -194,8 +201,8 @@ class InlinedVector {
InlinedVector(InlinedVector&& other) noexcept(
absl::allocator_is_nothrow<allocator_type>::value ||
std::is_nothrow_move_constructible<value_type>::value)
- : storage_(*other.storage_.GetAllocPtr()) {
- if (IsMemcpyOk::value) {
+ : storage_(other.storage_.GetAllocator()) {
+ if (IsMemcpyOk<A>::value) {
storage_.MemcpyFrom(other.storage_);
other.storage_.SetInlinedSize(0);
@@ -206,11 +213,11 @@ class InlinedVector {
other.storage_.SetInlinedSize(0);
} else {
- IteratorValueAdapter<MoveIterator> other_values(
- MoveIterator(other.storage_.GetInlinedData()));
+ IteratorValueAdapter<A, MoveIterator<A>> other_values(
+ MoveIterator<A>(other.storage_.GetInlinedData()));
- inlined_vector_internal::ConstructElements(
- storage_.GetAllocPtr(), storage_.GetInlinedData(), &other_values,
+ inlined_vector_internal::ConstructElements<A>(
+ storage_.GetAllocator(), storage_.GetInlinedData(), other_values,
other.storage_.GetSize());
storage_.SetInlinedSize(other.storage_.GetSize());
@@ -218,20 +225,22 @@ class InlinedVector {
}
// Creates an inlined vector by moving in the contents of `other` with a copy
- // of `alloc`.
+ // of `allocator`.
//
- // NOTE: if `other`'s allocator is not equal to `alloc`, even if `other`
+ // NOTE: if `other`'s allocator is not equal to `allocator`, even if `other`
// contains allocated memory, this move constructor will still allocate. Since
// allocation is performed, this constructor can only be `noexcept` if the
// specified allocator is also `noexcept`.
- InlinedVector(InlinedVector&& other, const allocator_type& alloc) noexcept(
- absl::allocator_is_nothrow<allocator_type>::value)
- : storage_(alloc) {
- if (IsMemcpyOk::value) {
+ InlinedVector(
+ InlinedVector&& other,
+ const allocator_type& allocator)
+ noexcept(absl::allocator_is_nothrow<allocator_type>::value)
+ : storage_(allocator) {
+ if (IsMemcpyOk<A>::value) {
storage_.MemcpyFrom(other.storage_);
other.storage_.SetInlinedSize(0);
- } else if ((*storage_.GetAllocPtr() == *other.storage_.GetAllocPtr()) &&
+ } else if ((storage_.GetAllocator() == other.storage_.GetAllocator()) &&
other.storage_.GetIsAllocated()) {
storage_.SetAllocatedData(other.storage_.GetAllocatedData(),
other.storage_.GetAllocatedCapacity());
@@ -239,9 +248,9 @@ class InlinedVector {
other.storage_.SetInlinedSize(0);
} else {
- storage_.Initialize(
- IteratorValueAdapter<MoveIterator>(MoveIterator(other.data())),
- other.size());
+ storage_.Initialize(IteratorValueAdapter<A, MoveIterator<A>>(
+ MoveIterator<A>(other.data())),
+ other.size());
}
}
@@ -442,7 +451,7 @@ class InlinedVector {
// `InlinedVector::get_allocator()`
//
// Returns a copy of the inlined vector's allocator.
- allocator_type get_allocator() const { return *storage_.GetAllocPtr(); }
+ allocator_type get_allocator() const { return storage_.GetAllocator(); }
// ---------------------------------------------------------------------------
// InlinedVector Member Mutators
@@ -476,16 +485,16 @@ class InlinedVector {
// unspecified state.
InlinedVector& operator=(InlinedVector&& other) {
if (ABSL_PREDICT_TRUE(this != std::addressof(other))) {
- if (IsMemcpyOk::value || other.storage_.GetIsAllocated()) {
- inlined_vector_internal::DestroyElements(storage_.GetAllocPtr(), data(),
- size());
+ if (IsMemcpyOk<A>::value || other.storage_.GetIsAllocated()) {
+ inlined_vector_internal::DestroyElements<A>(storage_.GetAllocator(),
+ data(), size());
storage_.DeallocateIfAllocated();
storage_.MemcpyFrom(other.storage_);
other.storage_.SetInlinedSize(0);
} else {
- storage_.Assign(IteratorValueAdapter<MoveIterator>(
- MoveIterator(other.storage_.GetInlinedData())),
+ storage_.Assign(IteratorValueAdapter<A, MoveIterator<A>>(
+ MoveIterator<A>(other.storage_.GetInlinedData())),
other.size());
}
}
@@ -497,7 +506,7 @@ class InlinedVector {
//
// Replaces the contents of the inlined vector with `n` copies of `v`.
void assign(size_type n, const_reference v) {
- storage_.Assign(CopyValueAdapter(v), n);
+ storage_.Assign(CopyValueAdapter<A>(std::addressof(v)), n);
}
// Overload of `InlinedVector::assign(...)` that replaces the contents of the
@@ -511,9 +520,9 @@ class InlinedVector {
//
// NOTE: this overload is for iterators that are "forward" category or better.
template <typename ForwardIterator,
- EnableIfAtLeastForwardIterator<ForwardIterator>* = nullptr>
+ EnableIfAtLeastForwardIterator<ForwardIterator> = 0>
void assign(ForwardIterator first, ForwardIterator last) {
- storage_.Assign(IteratorValueAdapter<ForwardIterator>(first),
+ storage_.Assign(IteratorValueAdapter<A, ForwardIterator>(first),
std::distance(first, last));
}
@@ -522,7 +531,7 @@ class InlinedVector {
//
// NOTE: this overload is for iterators that are "input" category.
template <typename InputIterator,
- DisableIfAtLeastForwardIterator<InputIterator>* = nullptr>
+ DisableIfAtLeastForwardIterator<InputIterator> = 0>
void assign(InputIterator first, InputIterator last) {
size_type i = 0;
for (; i < size() && first != last; ++i, static_cast<void>(++first)) {
@@ -541,7 +550,7 @@ class InlinedVector {
// is larger than `size()`, new elements are value-initialized.
void resize(size_type n) {
ABSL_HARDENING_ASSERT(n <= max_size());
- storage_.Resize(DefaultValueAdapter(), n);
+ storage_.Resize(DefaultValueAdapter<A>(), n);
}
// Overload of `InlinedVector::resize(...)` that resizes the inlined vector to
@@ -551,7 +560,7 @@ class InlinedVector {
// is larger than `size()`, new elements are copied-constructed from `v`.
void resize(size_type n, const_reference v) {
ABSL_HARDENING_ASSERT(n <= max_size());
- storage_.Resize(CopyValueAdapter(v), n);
+ storage_.Resize(CopyValueAdapter<A>(std::addressof(v)), n);
}
// `InlinedVector::insert(...)`
@@ -564,7 +573,7 @@ class InlinedVector {
// Overload of `InlinedVector::insert(...)` that inserts `v` at `pos` using
// move semantics, returning an `iterator` to the newly inserted element.
- iterator insert(const_iterator pos, RValueReference v) {
+ iterator insert(const_iterator pos, value_type&& v) {
return emplace(pos, std::move(v));
}
@@ -577,7 +586,8 @@ class InlinedVector {
if (ABSL_PREDICT_TRUE(n != 0)) {
value_type dealias = v;
- return storage_.Insert(pos, CopyValueAdapter(dealias), n);
+ return storage_.Insert(pos, CopyValueAdapter<A>(std::addressof(dealias)),
+ n);
} else {
return const_cast<iterator>(pos);
}
@@ -596,14 +606,15 @@ class InlinedVector {
//
// NOTE: this overload is for iterators that are "forward" category or better.
template <typename ForwardIterator,
- EnableIfAtLeastForwardIterator<ForwardIterator>* = nullptr>
+ EnableIfAtLeastForwardIterator<ForwardIterator> = 0>
iterator insert(const_iterator pos, ForwardIterator first,
ForwardIterator last) {
ABSL_HARDENING_ASSERT(pos >= begin());
ABSL_HARDENING_ASSERT(pos <= end());
if (ABSL_PREDICT_TRUE(first != last)) {
- return storage_.Insert(pos, IteratorValueAdapter<ForwardIterator>(first),
+ return storage_.Insert(pos,
+ IteratorValueAdapter<A, ForwardIterator>(first),
std::distance(first, last));
} else {
return const_cast<iterator>(pos);
@@ -616,7 +627,7 @@ class InlinedVector {
//
// NOTE: this overload is for iterators that are "input" category.
template <typename InputIterator,
- DisableIfAtLeastForwardIterator<InputIterator>* = nullptr>
+ DisableIfAtLeastForwardIterator<InputIterator> = 0>
iterator insert(const_iterator pos, InputIterator first, InputIterator last) {
ABSL_HARDENING_ASSERT(pos >= begin());
ABSL_HARDENING_ASSERT(pos <= end());
@@ -640,8 +651,8 @@ class InlinedVector {
value_type dealias(std::forward<Args>(args)...);
return storage_.Insert(pos,
- IteratorValueAdapter<MoveIterator>(
- MoveIterator(std::addressof(dealias))),
+ IteratorValueAdapter<A, MoveIterator<A>>(
+ MoveIterator<A>(std::addressof(dealias))),
1);
}
@@ -661,7 +672,7 @@ class InlinedVector {
// Overload of `InlinedVector::push_back(...)` for inserting `v` at `end()`
// using move semantics.
- void push_back(RValueReference v) {
+ void push_back(value_type&& v) {
static_cast<void>(emplace_back(std::move(v)));
}
@@ -671,7 +682,7 @@ class InlinedVector {
void pop_back() noexcept {
ABSL_HARDENING_ASSERT(!empty());
- AllocatorTraits::destroy(*storage_.GetAllocPtr(), data() + (size() - 1));
+ AllocatorTraits<A>::destroy(storage_.GetAllocator(), data() + (size() - 1));
storage_.SubtractSize(1);
}
@@ -710,8 +721,8 @@ class InlinedVector {
// Destroys all elements in the inlined vector, setting the size to `0` and
// deallocating any held memory.
void clear() noexcept {
- inlined_vector_internal::DestroyElements(storage_.GetAllocPtr(), data(),
- size());
+ inlined_vector_internal::DestroyElements<A>(storage_.GetAllocator(), data(),
+ size());
storage_.DeallocateIfAllocated();
storage_.SetInlinedSize(0);
diff --git a/third_party/abseil-cpp/absl/container/internal/inlined_vector.h b/third_party/abseil-cpp/absl/container/internal/inlined_vector.h
index 49822af0b7..1cfba9b218 100644
--- a/third_party/abseil-cpp/absl/container/internal/inlined_vector.h
+++ b/third_party/abseil-cpp/absl/container/internal/inlined_vector.h
@@ -40,45 +40,65 @@ namespace inlined_vector_internal {
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
#endif
+template <typename A>
+using AllocatorTraits = std::allocator_traits<A>;
+template <typename A>
+using ValueType = typename AllocatorTraits<A>::value_type;
+template <typename A>
+using SizeType = typename AllocatorTraits<A>::size_type;
+template <typename A>
+using Pointer = typename AllocatorTraits<A>::pointer;
+template <typename A>
+using ConstPointer = typename AllocatorTraits<A>::const_pointer;
+template <typename A>
+using SizeType = typename AllocatorTraits<A>::size_type;
+template <typename A>
+using DifferenceType = typename AllocatorTraits<A>::difference_type;
+template <typename A>
+using Reference = ValueType<A>&;
+template <typename A>
+using ConstReference = const ValueType<A>&;
+template <typename A>
+using Iterator = Pointer<A>;
+template <typename A>
+using ConstIterator = ConstPointer<A>;
+template <typename A>
+using ReverseIterator = typename std::reverse_iterator<Iterator<A>>;
+template <typename A>
+using ConstReverseIterator = typename std::reverse_iterator<ConstIterator<A>>;
+template <typename A>
+using MoveIterator = typename std::move_iterator<Iterator<A>>;
+
template <typename Iterator>
using IsAtLeastForwardIterator = std::is_convertible<
typename std::iterator_traits<Iterator>::iterator_category,
std::forward_iterator_tag>;
-template <typename AllocatorType,
- typename ValueType =
- typename absl::allocator_traits<AllocatorType>::value_type>
+template <typename A>
using IsMemcpyOk =
- absl::conjunction<std::is_same<AllocatorType, std::allocator<ValueType>>,
- absl::is_trivially_copy_constructible<ValueType>,
- absl::is_trivially_copy_assignable<ValueType>,
- absl::is_trivially_destructible<ValueType>>;
+ absl::conjunction<std::is_same<A, std::allocator<ValueType<A>>>,
+ absl::is_trivially_copy_constructible<ValueType<A>>,
+ absl::is_trivially_copy_assignable<ValueType<A>>,
+ absl::is_trivially_destructible<ValueType<A>>>;
+
+template <typename T>
+struct TypeIdentity {
+ using type = T;
+};
-template <typename AllocatorType, typename Pointer, typename SizeType>
-void DestroyElements(AllocatorType* alloc_ptr, Pointer destroy_first,
- SizeType destroy_size) {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
+// Used for function arguments in template functions to prevent ADL by forcing
+// callers to explicitly specify the template parameter.
+template <typename T>
+using NoTypeDeduction = typename TypeIdentity<T>::type;
+template <typename A>
+void DestroyElements(NoTypeDeduction<A>& allocator, Pointer<A> destroy_first,
+ SizeType<A> destroy_size) {
if (destroy_first != nullptr) {
for (auto i = destroy_size; i != 0;) {
--i;
- AllocatorTraits::destroy(*alloc_ptr, destroy_first + i);
+ AllocatorTraits<A>::destroy(allocator, destroy_first + i);
}
-
-#if !defined(NDEBUG)
- {
- using ValueType = typename AllocatorTraits::value_type;
-
- // Overwrite unused memory with `0xab` so we can catch uninitialized
- // usage.
- //
- // Cast to `void*` to tell the compiler that we don't care that we might
- // be scribbling on a vtable pointer.
- void* memory_ptr = destroy_first;
- auto memory_size = destroy_size * sizeof(ValueType);
- std::memset(memory_ptr, 0xab, memory_size);
- }
-#endif // !defined(NDEBUG)
}
}
@@ -99,54 +119,45 @@ inline void MemcpyIfAllowed<true>(void* dst, const void* src, size_t n) {
template <>
inline void MemcpyIfAllowed<false>(void*, const void*, size_t) {}
-template <typename AllocatorType, typename Pointer, typename ValueAdapter,
- typename SizeType>
-void ConstructElements(AllocatorType* alloc_ptr, Pointer construct_first,
- ValueAdapter* values_ptr, SizeType construct_size) {
- for (SizeType i = 0; i < construct_size; ++i) {
- ABSL_INTERNAL_TRY {
- values_ptr->ConstructNext(alloc_ptr, construct_first + i);
- }
+template <typename A, typename ValueAdapter>
+void ConstructElements(NoTypeDeduction<A>& allocator,
+ Pointer<A> construct_first, ValueAdapter& values,
+ SizeType<A> construct_size) {
+ for (SizeType<A> i = 0; i < construct_size; ++i) {
+ ABSL_INTERNAL_TRY { values.ConstructNext(allocator, construct_first + i); }
ABSL_INTERNAL_CATCH_ANY {
- inlined_vector_internal::DestroyElements(alloc_ptr, construct_first, i);
+ DestroyElements<A>(allocator, construct_first, i);
ABSL_INTERNAL_RETHROW;
}
}
}
-template <typename Pointer, typename ValueAdapter, typename SizeType>
-void AssignElements(Pointer assign_first, ValueAdapter* values_ptr,
- SizeType assign_size) {
- for (SizeType i = 0; i < assign_size; ++i) {
- values_ptr->AssignNext(assign_first + i);
+template <typename A, typename ValueAdapter>
+void AssignElements(Pointer<A> assign_first, ValueAdapter& values,
+ SizeType<A> assign_size) {
+ for (SizeType<A> i = 0; i < assign_size; ++i) {
+ values.AssignNext(assign_first + i);
}
}
-template <typename AllocatorType>
+template <typename A>
struct StorageView {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using Pointer = typename AllocatorTraits::pointer;
- using SizeType = typename AllocatorTraits::size_type;
-
- Pointer data;
- SizeType size;
- SizeType capacity;
+ Pointer<A> data;
+ SizeType<A> size;
+ SizeType<A> capacity;
};
-template <typename AllocatorType, typename Iterator>
+template <typename A, typename Iterator>
class IteratorValueAdapter {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using Pointer = typename AllocatorTraits::pointer;
-
public:
explicit IteratorValueAdapter(const Iterator& it) : it_(it) {}
- void ConstructNext(AllocatorType* alloc_ptr, Pointer construct_at) {
- AllocatorTraits::construct(*alloc_ptr, construct_at, *it_);
+ void ConstructNext(A& allocator, Pointer<A> construct_at) {
+ AllocatorTraits<A>::construct(allocator, construct_at, *it_);
++it_;
}
- void AssignNext(Pointer assign_at) {
+ void AssignNext(Pointer<A> assign_at) {
*assign_at = *it_;
++it_;
}
@@ -155,68 +166,55 @@ class IteratorValueAdapter {
Iterator it_;
};
-template <typename AllocatorType>
+template <typename A>
class CopyValueAdapter {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using ValueType = typename AllocatorTraits::value_type;
- using Pointer = typename AllocatorTraits::pointer;
- using ConstPointer = typename AllocatorTraits::const_pointer;
-
public:
- explicit CopyValueAdapter(const ValueType& v) : ptr_(std::addressof(v)) {}
+ explicit CopyValueAdapter(ConstPointer<A> p) : ptr_(p) {}
- void ConstructNext(AllocatorType* alloc_ptr, Pointer construct_at) {
- AllocatorTraits::construct(*alloc_ptr, construct_at, *ptr_);
+ void ConstructNext(A& allocator, Pointer<A> construct_at) {
+ AllocatorTraits<A>::construct(allocator, construct_at, *ptr_);
}
- void AssignNext(Pointer assign_at) { *assign_at = *ptr_; }
+ void AssignNext(Pointer<A> assign_at) { *assign_at = *ptr_; }
private:
- ConstPointer ptr_;
+ ConstPointer<A> ptr_;
};
-template <typename AllocatorType>
+template <typename A>
class DefaultValueAdapter {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using ValueType = typename AllocatorTraits::value_type;
- using Pointer = typename AllocatorTraits::pointer;
-
public:
explicit DefaultValueAdapter() {}
- void ConstructNext(AllocatorType* alloc_ptr, Pointer construct_at) {
- AllocatorTraits::construct(*alloc_ptr, construct_at);
+ void ConstructNext(A& allocator, Pointer<A> construct_at) {
+ AllocatorTraits<A>::construct(allocator, construct_at);
}
- void AssignNext(Pointer assign_at) { *assign_at = ValueType(); }
+ void AssignNext(Pointer<A> assign_at) { *assign_at = ValueType<A>(); }
};
-template <typename AllocatorType>
+template <typename A>
class AllocationTransaction {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using Pointer = typename AllocatorTraits::pointer;
- using SizeType = typename AllocatorTraits::size_type;
-
public:
- explicit AllocationTransaction(AllocatorType* alloc_ptr)
- : alloc_data_(*alloc_ptr, nullptr) {}
+ explicit AllocationTransaction(A& allocator)
+ : allocator_data_(allocator, nullptr), capacity_(0) {}
~AllocationTransaction() {
if (DidAllocate()) {
- AllocatorTraits::deallocate(GetAllocator(), GetData(), GetCapacity());
+ AllocatorTraits<A>::deallocate(GetAllocator(), GetData(), GetCapacity());
}
}
AllocationTransaction(const AllocationTransaction&) = delete;
void operator=(const AllocationTransaction&) = delete;
- AllocatorType& GetAllocator() { return alloc_data_.template get<0>(); }
- Pointer& GetData() { return alloc_data_.template get<1>(); }
- SizeType& GetCapacity() { return capacity_; }
+ A& GetAllocator() { return allocator_data_.template get<0>(); }
+ Pointer<A>& GetData() { return allocator_data_.template get<1>(); }
+ SizeType<A>& GetCapacity() { return capacity_; }
bool DidAllocate() { return GetData() != nullptr; }
- Pointer Allocate(SizeType capacity) {
- GetData() = AllocatorTraits::allocate(GetAllocator(), capacity);
+ Pointer<A> Allocate(SizeType<A> capacity) {
+ GetData() = AllocatorTraits<A>::allocate(GetAllocator(), capacity);
GetCapacity() = capacity;
return GetData();
}
@@ -227,39 +225,33 @@ class AllocationTransaction {
}
private:
- container_internal::CompressedTuple<AllocatorType, Pointer> alloc_data_;
- SizeType capacity_ = 0;
+ container_internal::CompressedTuple<A, Pointer<A>> allocator_data_;
+ SizeType<A> capacity_;
};
-template <typename AllocatorType>
+template <typename A>
class ConstructionTransaction {
- using AllocatorTraits = absl::allocator_traits<AllocatorType>;
- using Pointer = typename AllocatorTraits::pointer;
- using SizeType = typename AllocatorTraits::size_type;
-
public:
- explicit ConstructionTransaction(AllocatorType* alloc_ptr)
- : alloc_data_(*alloc_ptr, nullptr) {}
+ explicit ConstructionTransaction(A& allocator)
+ : allocator_data_(allocator, nullptr), size_(0) {}
~ConstructionTransaction() {
if (DidConstruct()) {
- inlined_vector_internal::DestroyElements(std::addressof(GetAllocator()),
- GetData(), GetSize());
+ DestroyElements<A>(GetAllocator(), GetData(), GetSize());
}
}
ConstructionTransaction(const ConstructionTransaction&) = delete;
void operator=(const ConstructionTransaction&) = delete;
- AllocatorType& GetAllocator() { return alloc_data_.template get<0>(); }
- Pointer& GetData() { return alloc_data_.template get<1>(); }
- SizeType& GetSize() { return size_; }
+ A& GetAllocator() { return allocator_data_.template get<0>(); }
+ Pointer<A>& GetData() { return allocator_data_.template get<1>(); }
+ SizeType<A>& GetSize() { return size_; }
bool DidConstruct() { return GetData() != nullptr; }
template <typename ValueAdapter>
- void Construct(Pointer data, ValueAdapter* values_ptr, SizeType size) {
- inlined_vector_internal::ConstructElements(std::addressof(GetAllocator()),
- data, values_ptr, size);
+ void Construct(Pointer<A> data, ValueAdapter& values, SizeType<A> size) {
+ ConstructElements<A>(GetAllocator(), data, values, size);
GetData() = data;
GetSize() = size;
}
@@ -269,52 +261,19 @@ class ConstructionTransaction {
}
private:
- container_internal::CompressedTuple<AllocatorType, Pointer> alloc_data_;
- SizeType size_ = 0;
+ container_internal::CompressedTuple<A, Pointer<A>> allocator_data_;
+ SizeType<A> size_;
};
template <typename T, size_t N, typename A>
class Storage {
public:
- using AllocatorTraits = absl::allocator_traits<A>;
- using allocator_type = typename AllocatorTraits::allocator_type;
- using value_type = typename AllocatorTraits::value_type;
- using pointer = typename AllocatorTraits::pointer;
- using const_pointer = typename AllocatorTraits::const_pointer;
- using size_type = typename AllocatorTraits::size_type;
- using difference_type = typename AllocatorTraits::difference_type;
-
- using reference = value_type&;
- using const_reference = const value_type&;
- using RValueReference = value_type&&;
- using iterator = pointer;
- using const_iterator = const_pointer;
- using reverse_iterator = std::reverse_iterator<iterator>;
- using const_reverse_iterator = std::reverse_iterator<const_iterator>;
- using MoveIterator = std::move_iterator<iterator>;
- using IsMemcpyOk = inlined_vector_internal::IsMemcpyOk<allocator_type>;
-
- using StorageView = inlined_vector_internal::StorageView<allocator_type>;
-
- template <typename Iterator>
- using IteratorValueAdapter =
- inlined_vector_internal::IteratorValueAdapter<allocator_type, Iterator>;
- using CopyValueAdapter =
- inlined_vector_internal::CopyValueAdapter<allocator_type>;
- using DefaultValueAdapter =
- inlined_vector_internal::DefaultValueAdapter<allocator_type>;
-
- using AllocationTransaction =
- inlined_vector_internal::AllocationTransaction<allocator_type>;
- using ConstructionTransaction =
- inlined_vector_internal::ConstructionTransaction<allocator_type>;
-
- static size_type NextCapacity(size_type current_capacity) {
+ static SizeType<A> NextCapacity(SizeType<A> current_capacity) {
return current_capacity * 2;
}
- static size_type ComputeCapacity(size_type current_capacity,
- size_type requested_capacity) {
+ static SizeType<A> ComputeCapacity(SizeType<A> current_capacity,
+ SizeType<A> requested_capacity) {
return (std::max)(NextCapacity(current_capacity), requested_capacity);
}
@@ -322,15 +281,15 @@ class Storage {
// Storage Constructors and Destructor
// ---------------------------------------------------------------------------
- Storage() : metadata_(allocator_type(), /* size and is_allocated */ 0) {}
+ Storage() : metadata_(A(), /* size and is_allocated */ 0) {}
- explicit Storage(const allocator_type& alloc)
- : metadata_(alloc, /* size and is_allocated */ 0) {}
+ explicit Storage(const A& allocator)
+ : metadata_(allocator, /* size and is_allocated */ 0) {}
~Storage() {
if (GetSizeAndIsAllocated() == 0) {
// Empty and not allocated; nothing to do.
- } else if (IsMemcpyOk::value) {
+ } else if (IsMemcpyOk<A>::value) {
// No destructors need to be run; just deallocate if necessary.
DeallocateIfAllocated();
} else {
@@ -342,52 +301,48 @@ class Storage {
// Storage Member Accessors
// ---------------------------------------------------------------------------
- size_type& GetSizeAndIsAllocated() { return metadata_.template get<1>(); }
+ SizeType<A>& GetSizeAndIsAllocated() { return metadata_.template get<1>(); }
- const size_type& GetSizeAndIsAllocated() const {
+ const SizeType<A>& GetSizeAndIsAllocated() const {
return metadata_.template get<1>();
}
- size_type GetSize() const { return GetSizeAndIsAllocated() >> 1; }
+ SizeType<A> GetSize() const { return GetSizeAndIsAllocated() >> 1; }
bool GetIsAllocated() const { return GetSizeAndIsAllocated() & 1; }
- pointer GetAllocatedData() { return data_.allocated.allocated_data; }
+ Pointer<A> GetAllocatedData() { return data_.allocated.allocated_data; }
- const_pointer GetAllocatedData() const {
+ ConstPointer<A> GetAllocatedData() const {
return data_.allocated.allocated_data;
}
- pointer GetInlinedData() {
- return reinterpret_cast<pointer>(
+ Pointer<A> GetInlinedData() {
+ return reinterpret_cast<Pointer<A>>(
std::addressof(data_.inlined.inlined_data[0]));
}
- const_pointer GetInlinedData() const {
- return reinterpret_cast<const_pointer>(
+ ConstPointer<A> GetInlinedData() const {
+ return reinterpret_cast<ConstPointer<A>>(
std::addressof(data_.inlined.inlined_data[0]));
}
- size_type GetAllocatedCapacity() const {
+ SizeType<A> GetAllocatedCapacity() const {
return data_.allocated.allocated_capacity;
}
- size_type GetInlinedCapacity() const { return static_cast<size_type>(N); }
+ SizeType<A> GetInlinedCapacity() const { return static_cast<SizeType<A>>(N); }
- StorageView MakeStorageView() {
- return GetIsAllocated()
- ? StorageView{GetAllocatedData(), GetSize(),
- GetAllocatedCapacity()}
- : StorageView{GetInlinedData(), GetSize(), GetInlinedCapacity()};
+ StorageView<A> MakeStorageView() {
+ return GetIsAllocated() ? StorageView<A>{GetAllocatedData(), GetSize(),
+ GetAllocatedCapacity()}
+ : StorageView<A>{GetInlinedData(), GetSize(),
+ GetInlinedCapacity()};
}
- allocator_type* GetAllocPtr() {
- return std::addressof(metadata_.template get<0>());
- }
+ A& GetAllocator() { return metadata_.template get<0>(); }
- const allocator_type* GetAllocPtr() const {
- return std::addressof(metadata_.template get<0>());
- }
+ const A& GetAllocator() const { return metadata_.template get<0>(); }
// ---------------------------------------------------------------------------
// Storage Member Mutators
@@ -396,74 +351,73 @@ class Storage {
ABSL_ATTRIBUTE_NOINLINE void InitFrom(const Storage& other);
template <typename ValueAdapter>
- void Initialize(ValueAdapter values, size_type new_size);
+ void Initialize(ValueAdapter values, SizeType<A> new_size);
template <typename ValueAdapter>
- void Assign(ValueAdapter values, size_type new_size);
+ void Assign(ValueAdapter values, SizeType<A> new_size);
template <typename ValueAdapter>
- void Resize(ValueAdapter values, size_type new_size);
+ void Resize(ValueAdapter values, SizeType<A> new_size);
template <typename ValueAdapter>
- iterator Insert(const_iterator pos, ValueAdapter values,
- size_type insert_count);
+ Iterator<A> Insert(ConstIterator<A> pos, ValueAdapter values,
+ SizeType<A> insert_count);
template <typename... Args>
- reference EmplaceBack(Args&&... args);
+ Reference<A> EmplaceBack(Args&&... args);
- iterator Erase(const_iterator from, const_iterator to);
+ Iterator<A> Erase(ConstIterator<A> from, ConstIterator<A> to);
- void Reserve(size_type requested_capacity);
+ void Reserve(SizeType<A> requested_capacity);
void ShrinkToFit();
void Swap(Storage* other_storage_ptr);
void SetIsAllocated() {
- GetSizeAndIsAllocated() |= static_cast<size_type>(1);
+ GetSizeAndIsAllocated() |= static_cast<SizeType<A>>(1);
}
void UnsetIsAllocated() {
- GetSizeAndIsAllocated() &= ((std::numeric_limits<size_type>::max)() - 1);
+ GetSizeAndIsAllocated() &= ((std::numeric_limits<SizeType<A>>::max)() - 1);
}
- void SetSize(size_type size) {
+ void SetSize(SizeType<A> size) {
GetSizeAndIsAllocated() =
- (size << 1) | static_cast<size_type>(GetIsAllocated());
+ (size << 1) | static_cast<SizeType<A>>(GetIsAllocated());
}
- void SetAllocatedSize(size_type size) {
- GetSizeAndIsAllocated() = (size << 1) | static_cast<size_type>(1);
+ void SetAllocatedSize(SizeType<A> size) {
+ GetSizeAndIsAllocated() = (size << 1) | static_cast<SizeType<A>>(1);
}
- void SetInlinedSize(size_type size) {
- GetSizeAndIsAllocated() = size << static_cast<size_type>(1);
+ void SetInlinedSize(SizeType<A> size) {
+ GetSizeAndIsAllocated() = size << static_cast<SizeType<A>>(1);
}
- void AddSize(size_type count) {
- GetSizeAndIsAllocated() += count << static_cast<size_type>(1);
+ void AddSize(SizeType<A> count) {
+ GetSizeAndIsAllocated() += count << static_cast<SizeType<A>>(1);
}
- void SubtractSize(size_type count) {
+ void SubtractSize(SizeType<A> count) {
assert(count <= GetSize());
- GetSizeAndIsAllocated() -= count << static_cast<size_type>(1);
+ GetSizeAndIsAllocated() -= count << static_cast<SizeType<A>>(1);
}
- void SetAllocatedData(pointer data, size_type capacity) {
+ void SetAllocatedData(Pointer<A> data, SizeType<A> capacity) {
data_.allocated.allocated_data = data;
data_.allocated.allocated_capacity = capacity;
}
- void AcquireAllocatedData(AllocationTransaction* allocation_tx_ptr) {
- SetAllocatedData(allocation_tx_ptr->GetData(),
- allocation_tx_ptr->GetCapacity());
+ void AcquireAllocatedData(AllocationTransaction<A>& allocation_tx) {
+ SetAllocatedData(allocation_tx.GetData(), allocation_tx.GetCapacity());
- allocation_tx_ptr->Reset();
+ allocation_tx.Reset();
}
void MemcpyFrom(const Storage& other_storage) {
- assert(IsMemcpyOk::value || other_storage.GetIsAllocated());
+ assert(IsMemcpyOk<A>::value || other_storage.GetIsAllocated());
GetSizeAndIsAllocated() = other_storage.GetSizeAndIsAllocated();
data_ = other_storage.data_;
@@ -471,24 +425,23 @@ class Storage {
void DeallocateIfAllocated() {
if (GetIsAllocated()) {
- AllocatorTraits::deallocate(*GetAllocPtr(), GetAllocatedData(),
- GetAllocatedCapacity());
+ AllocatorTraits<A>::deallocate(GetAllocator(), GetAllocatedData(),
+ GetAllocatedCapacity());
}
}
private:
ABSL_ATTRIBUTE_NOINLINE void DestroyContents();
- using Metadata =
- container_internal::CompressedTuple<allocator_type, size_type>;
+ using Metadata = container_internal::CompressedTuple<A, SizeType<A>>;
struct Allocated {
- pointer allocated_data;
- size_type allocated_capacity;
+ Pointer<A> allocated_data;
+ SizeType<A> allocated_capacity;
};
struct Inlined {
- alignas(value_type) char inlined_data[sizeof(value_type[N])];
+ alignas(ValueType<A>) char inlined_data[sizeof(ValueType<A>[N])];
};
union Data {
@@ -497,7 +450,7 @@ class Storage {
};
template <typename... Args>
- ABSL_ATTRIBUTE_NOINLINE reference EmplaceBackSlow(Args&&... args);
+ ABSL_ATTRIBUTE_NOINLINE Reference<A> EmplaceBackSlow(Args&&... args);
Metadata metadata_;
Data data_;
@@ -505,8 +458,8 @@ class Storage {
template <typename T, size_t N, typename A>
void Storage<T, N, A>::DestroyContents() {
- pointer data = GetIsAllocated() ? GetAllocatedData() : GetInlinedData();
- inlined_vector_internal::DestroyElements(GetAllocPtr(), data, GetSize());
+ Pointer<A> data = GetIsAllocated() ? GetAllocatedData() : GetInlinedData();
+ DestroyElements<A>(GetAllocator(), data, GetSize());
DeallocateIfAllocated();
}
@@ -514,8 +467,8 @@ template <typename T, size_t N, typename A>
void Storage<T, N, A>::InitFrom(const Storage& other) {
const auto n = other.GetSize();
assert(n > 0); // Empty sources handled handled in caller.
- const_pointer src;
- pointer dst;
+ ConstPointer<A> src;
+ Pointer<A> dst;
if (!other.GetIsAllocated()) {
dst = GetInlinedData();
src = other.GetInlinedData();
@@ -523,43 +476,42 @@ void Storage<T, N, A>::InitFrom(const Storage& other) {
// Because this is only called from the `InlinedVector` constructors, it's
// safe to take on the allocation with size `0`. If `ConstructElements(...)`
// throws, deallocation will be automatically handled by `~Storage()`.
- size_type new_capacity = ComputeCapacity(GetInlinedCapacity(), n);
- dst = AllocatorTraits::allocate(*GetAllocPtr(), new_capacity);
+ SizeType<A> new_capacity = ComputeCapacity(GetInlinedCapacity(), n);
+ dst = AllocatorTraits<A>::allocate(GetAllocator(), new_capacity);
SetAllocatedData(dst, new_capacity);
src = other.GetAllocatedData();
}
- if (IsMemcpyOk::value) {
- MemcpyIfAllowed<IsMemcpyOk::value>(dst, src, sizeof(dst[0]) * n);
+ if (IsMemcpyOk<A>::value) {
+ MemcpyIfAllowed<IsMemcpyOk<A>::value>(dst, src, sizeof(dst[0]) * n);
} else {
- auto values = IteratorValueAdapter<const_pointer>(src);
- inlined_vector_internal::ConstructElements(GetAllocPtr(), dst, &values, n);
+ auto values = IteratorValueAdapter<A, ConstPointer<A>>(src);
+ ConstructElements<A>(GetAllocator(), dst, values, n);
}
GetSizeAndIsAllocated() = other.GetSizeAndIsAllocated();
}
template <typename T, size_t N, typename A>
template <typename ValueAdapter>
-auto Storage<T, N, A>::Initialize(ValueAdapter values, size_type new_size)
+auto Storage<T, N, A>::Initialize(ValueAdapter values, SizeType<A> new_size)
-> void {
// Only callable from constructors!
assert(!GetIsAllocated());
assert(GetSize() == 0);
- pointer construct_data;
+ Pointer<A> construct_data;
if (new_size > GetInlinedCapacity()) {
// Because this is only called from the `InlinedVector` constructors, it's
// safe to take on the allocation with size `0`. If `ConstructElements(...)`
// throws, deallocation will be automatically handled by `~Storage()`.
- size_type new_capacity = ComputeCapacity(GetInlinedCapacity(), new_size);
- construct_data = AllocatorTraits::allocate(*GetAllocPtr(), new_capacity);
+ SizeType<A> new_capacity = ComputeCapacity(GetInlinedCapacity(), new_size);
+ construct_data = AllocatorTraits<A>::allocate(GetAllocator(), new_capacity);
SetAllocatedData(construct_data, new_capacity);
SetIsAllocated();
} else {
construct_data = GetInlinedData();
}
- inlined_vector_internal::ConstructElements(GetAllocPtr(), construct_data,
- &values, new_size);
+ ConstructElements<A>(GetAllocator(), construct_data, values, new_size);
// Since the initial size was guaranteed to be `0` and the allocated bit is
// already correct for either case, *adding* `new_size` gives us the correct
@@ -569,17 +521,18 @@ auto Storage<T, N, A>::Initialize(ValueAdapter values, size_type new_size)
template <typename T, size_t N, typename A>
template <typename ValueAdapter>
-auto Storage<T, N, A>::Assign(ValueAdapter values, size_type new_size) -> void {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::Assign(ValueAdapter values, SizeType<A> new_size)
+ -> void {
+ StorageView<A> storage_view = MakeStorageView();
- AllocationTransaction allocation_tx(GetAllocPtr());
+ AllocationTransaction<A> allocation_tx(GetAllocator());
- absl::Span<value_type> assign_loop;
- absl::Span<value_type> construct_loop;
- absl::Span<value_type> destroy_loop;
+ absl::Span<ValueType<A>> assign_loop;
+ absl::Span<ValueType<A>> construct_loop;
+ absl::Span<ValueType<A>> destroy_loop;
if (new_size > storage_view.capacity) {
- size_type new_capacity = ComputeCapacity(storage_view.capacity, new_size);
+ SizeType<A> new_capacity = ComputeCapacity(storage_view.capacity, new_size);
construct_loop = {allocation_tx.Allocate(new_capacity), new_size};
destroy_loop = {storage_view.data, storage_view.size};
} else if (new_size > storage_view.size) {
@@ -591,18 +544,16 @@ auto Storage<T, N, A>::Assign(ValueAdapter values, size_type new_size) -> void {
destroy_loop = {storage_view.data + new_size, storage_view.size - new_size};
}
- inlined_vector_internal::AssignElements(assign_loop.data(), &values,
- assign_loop.size());
+ AssignElements<A>(assign_loop.data(), values, assign_loop.size());
- inlined_vector_internal::ConstructElements(
- GetAllocPtr(), construct_loop.data(), &values, construct_loop.size());
+ ConstructElements<A>(GetAllocator(), construct_loop.data(), values,
+ construct_loop.size());
- inlined_vector_internal::DestroyElements(GetAllocPtr(), destroy_loop.data(),
- destroy_loop.size());
+ DestroyElements<A>(GetAllocator(), destroy_loop.data(), destroy_loop.size());
if (allocation_tx.DidAllocate()) {
DeallocateIfAllocated();
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
SetIsAllocated();
}
@@ -611,19 +562,18 @@ auto Storage<T, N, A>::Assign(ValueAdapter values, size_type new_size) -> void {
template <typename T, size_t N, typename A>
template <typename ValueAdapter>
-auto Storage<T, N, A>::Resize(ValueAdapter values, size_type new_size) -> void {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::Resize(ValueAdapter values, SizeType<A> new_size)
+ -> void {
+ StorageView<A> storage_view = MakeStorageView();
auto* const base = storage_view.data;
- const size_type size = storage_view.size;
- auto* alloc = GetAllocPtr();
+ const SizeType<A> size = storage_view.size;
+ auto& alloc = GetAllocator();
if (new_size <= size) {
// Destroy extra old elements.
- inlined_vector_internal::DestroyElements(alloc, base + new_size,
- size - new_size);
+ DestroyElements<A>(alloc, base + new_size, size - new_size);
} else if (new_size <= storage_view.capacity) {
// Construct new elements in place.
- inlined_vector_internal::ConstructElements(alloc, base + size, &values,
- new_size - size);
+ ConstructElements<A>(alloc, base + size, values, new_size - size);
} else {
// Steps:
// a. Allocate new backing store.
@@ -632,21 +582,21 @@ auto Storage<T, N, A>::Resize(ValueAdapter values, size_type new_size) -> void {
// d. Destroy all elements in old backing store.
// Use transactional wrappers for the first two steps so we can roll
// back if necessary due to exceptions.
- AllocationTransaction allocation_tx(alloc);
- size_type new_capacity = ComputeCapacity(storage_view.capacity, new_size);
- pointer new_data = allocation_tx.Allocate(new_capacity);
+ AllocationTransaction<A> allocation_tx(alloc);
+ SizeType<A> new_capacity = ComputeCapacity(storage_view.capacity, new_size);
+ Pointer<A> new_data = allocation_tx.Allocate(new_capacity);
- ConstructionTransaction construction_tx(alloc);
- construction_tx.Construct(new_data + size, &values, new_size - size);
+ ConstructionTransaction<A> construction_tx(alloc);
+ construction_tx.Construct(new_data + size, values, new_size - size);
- IteratorValueAdapter<MoveIterator> move_values((MoveIterator(base)));
- inlined_vector_internal::ConstructElements(alloc, new_data, &move_values,
- size);
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ (MoveIterator<A>(base)));
+ ConstructElements<A>(alloc, new_data, move_values, size);
- inlined_vector_internal::DestroyElements(alloc, base, size);
+ DestroyElements<A>(alloc, base, size);
construction_tx.Commit();
DeallocateIfAllocated();
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
SetIsAllocated();
}
SetSize(new_size);
@@ -654,76 +604,75 @@ auto Storage<T, N, A>::Resize(ValueAdapter values, size_type new_size) -> void {
template <typename T, size_t N, typename A>
template <typename ValueAdapter>
-auto Storage<T, N, A>::Insert(const_iterator pos, ValueAdapter values,
- size_type insert_count) -> iterator {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::Insert(ConstIterator<A> pos, ValueAdapter values,
+ SizeType<A> insert_count) -> Iterator<A> {
+ StorageView<A> storage_view = MakeStorageView();
- size_type insert_index =
- std::distance(const_iterator(storage_view.data), pos);
- size_type insert_end_index = insert_index + insert_count;
- size_type new_size = storage_view.size + insert_count;
+ SizeType<A> insert_index =
+ std::distance(ConstIterator<A>(storage_view.data), pos);
+ SizeType<A> insert_end_index = insert_index + insert_count;
+ SizeType<A> new_size = storage_view.size + insert_count;
if (new_size > storage_view.capacity) {
- AllocationTransaction allocation_tx(GetAllocPtr());
- ConstructionTransaction construction_tx(GetAllocPtr());
- ConstructionTransaction move_construciton_tx(GetAllocPtr());
+ AllocationTransaction<A> allocation_tx(GetAllocator());
+ ConstructionTransaction<A> construction_tx(GetAllocator());
+ ConstructionTransaction<A> move_construction_tx(GetAllocator());
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(storage_view.data));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(storage_view.data));
- size_type new_capacity = ComputeCapacity(storage_view.capacity, new_size);
- pointer new_data = allocation_tx.Allocate(new_capacity);
+ SizeType<A> new_capacity = ComputeCapacity(storage_view.capacity, new_size);
+ Pointer<A> new_data = allocation_tx.Allocate(new_capacity);
- construction_tx.Construct(new_data + insert_index, &values, insert_count);
+ construction_tx.Construct(new_data + insert_index, values, insert_count);
- move_construciton_tx.Construct(new_data, &move_values, insert_index);
+ move_construction_tx.Construct(new_data, move_values, insert_index);
- inlined_vector_internal::ConstructElements(
- GetAllocPtr(), new_data + insert_end_index, &move_values,
- storage_view.size - insert_index);
+ ConstructElements<A>(GetAllocator(), new_data + insert_end_index,
+ move_values, storage_view.size - insert_index);
- inlined_vector_internal::DestroyElements(GetAllocPtr(), storage_view.data,
- storage_view.size);
+ DestroyElements<A>(GetAllocator(), storage_view.data, storage_view.size);
construction_tx.Commit();
- move_construciton_tx.Commit();
+ move_construction_tx.Commit();
DeallocateIfAllocated();
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
SetAllocatedSize(new_size);
- return iterator(new_data + insert_index);
+ return Iterator<A>(new_data + insert_index);
} else {
- size_type move_construction_destination_index =
+ SizeType<A> move_construction_destination_index =
(std::max)(insert_end_index, storage_view.size);
- ConstructionTransaction move_construction_tx(GetAllocPtr());
+ ConstructionTransaction<A> move_construction_tx(GetAllocator());
- IteratorValueAdapter<MoveIterator> move_construction_values(
- MoveIterator(storage_view.data +
- (move_construction_destination_index - insert_count)));
- absl::Span<value_type> move_construction = {
+ IteratorValueAdapter<A, MoveIterator<A>> move_construction_values(
+ MoveIterator<A>(storage_view.data +
+ (move_construction_destination_index - insert_count)));
+ absl::Span<ValueType<A>> move_construction = {
storage_view.data + move_construction_destination_index,
new_size - move_construction_destination_index};
- pointer move_assignment_values = storage_view.data + insert_index;
- absl::Span<value_type> move_assignment = {
+ Pointer<A> move_assignment_values = storage_view.data + insert_index;
+ absl::Span<ValueType<A>> move_assignment = {
storage_view.data + insert_end_index,
move_construction_destination_index - insert_end_index};
- absl::Span<value_type> insert_assignment = {move_assignment_values,
- move_construction.size()};
+ absl::Span<ValueType<A>> insert_assignment = {move_assignment_values,
+ move_construction.size()};
- absl::Span<value_type> insert_construction = {
+ absl::Span<ValueType<A>> insert_construction = {
insert_assignment.data() + insert_assignment.size(),
insert_count - insert_assignment.size()};
move_construction_tx.Construct(move_construction.data(),
- &move_construction_values,
+ move_construction_values,
move_construction.size());
- for (pointer destination = move_assignment.data() + move_assignment.size(),
- last_destination = move_assignment.data(),
- source = move_assignment_values + move_assignment.size();
+ for (Pointer<A>
+ destination = move_assignment.data() + move_assignment.size(),
+ last_destination = move_assignment.data(),
+ source = move_assignment_values + move_assignment.size();
;) {
--destination;
--source;
@@ -731,30 +680,29 @@ auto Storage<T, N, A>::Insert(const_iterator pos, ValueAdapter values,
*destination = std::move(*source);
}
- inlined_vector_internal::AssignElements(insert_assignment.data(), &values,
- insert_assignment.size());
+ AssignElements<A>(insert_assignment.data(), values,
+ insert_assignment.size());
- inlined_vector_internal::ConstructElements(
- GetAllocPtr(), insert_construction.data(), &values,
- insert_construction.size());
+ ConstructElements<A>(GetAllocator(), insert_construction.data(), values,
+ insert_construction.size());
move_construction_tx.Commit();
AddSize(insert_count);
- return iterator(storage_view.data + insert_index);
+ return Iterator<A>(storage_view.data + insert_index);
}
}
template <typename T, size_t N, typename A>
template <typename... Args>
-auto Storage<T, N, A>::EmplaceBack(Args&&... args) -> reference {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::EmplaceBack(Args&&... args) -> Reference<A> {
+ StorageView<A> storage_view = MakeStorageView();
const auto n = storage_view.size;
if (ABSL_PREDICT_TRUE(n != storage_view.capacity)) {
// Fast path; new element fits.
- pointer last_ptr = storage_view.data + n;
- AllocatorTraits::construct(*GetAllocPtr(), last_ptr,
- std::forward<Args>(args)...);
+ Pointer<A> last_ptr = storage_view.data + n;
+ AllocatorTraits<A>::construct(GetAllocator(), last_ptr,
+ std::forward<Args>(args)...);
AddSize(1);
return *last_ptr;
}
@@ -764,87 +712,83 @@ auto Storage<T, N, A>::EmplaceBack(Args&&... args) -> reference {
template <typename T, size_t N, typename A>
template <typename... Args>
-auto Storage<T, N, A>::EmplaceBackSlow(Args&&... args) -> reference {
- StorageView storage_view = MakeStorageView();
- AllocationTransaction allocation_tx(GetAllocPtr());
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(storage_view.data));
- size_type new_capacity = NextCapacity(storage_view.capacity);
- pointer construct_data = allocation_tx.Allocate(new_capacity);
- pointer last_ptr = construct_data + storage_view.size;
+auto Storage<T, N, A>::EmplaceBackSlow(Args&&... args) -> Reference<A> {
+ StorageView<A> storage_view = MakeStorageView();
+ AllocationTransaction<A> allocation_tx(GetAllocator());
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(storage_view.data));
+ SizeType<A> new_capacity = NextCapacity(storage_view.capacity);
+ Pointer<A> construct_data = allocation_tx.Allocate(new_capacity);
+ Pointer<A> last_ptr = construct_data + storage_view.size;
// Construct new element.
- AllocatorTraits::construct(*GetAllocPtr(), last_ptr,
- std::forward<Args>(args)...);
+ AllocatorTraits<A>::construct(GetAllocator(), last_ptr,
+ std::forward<Args>(args)...);
// Move elements from old backing store to new backing store.
ABSL_INTERNAL_TRY {
- inlined_vector_internal::ConstructElements(
- GetAllocPtr(), allocation_tx.GetData(), &move_values,
- storage_view.size);
+ ConstructElements<A>(GetAllocator(), allocation_tx.GetData(), move_values,
+ storage_view.size);
}
ABSL_INTERNAL_CATCH_ANY {
- AllocatorTraits::destroy(*GetAllocPtr(), last_ptr);
+ AllocatorTraits<A>::destroy(GetAllocator(), last_ptr);
ABSL_INTERNAL_RETHROW;
}
// Destroy elements in old backing store.
- inlined_vector_internal::DestroyElements(GetAllocPtr(), storage_view.data,
- storage_view.size);
+ DestroyElements<A>(GetAllocator(), storage_view.data, storage_view.size);
DeallocateIfAllocated();
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
SetIsAllocated();
AddSize(1);
return *last_ptr;
}
template <typename T, size_t N, typename A>
-auto Storage<T, N, A>::Erase(const_iterator from, const_iterator to)
- -> iterator {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::Erase(ConstIterator<A> from, ConstIterator<A> to)
+ -> Iterator<A> {
+ StorageView<A> storage_view = MakeStorageView();
- size_type erase_size = std::distance(from, to);
- size_type erase_index =
- std::distance(const_iterator(storage_view.data), from);
- size_type erase_end_index = erase_index + erase_size;
+ SizeType<A> erase_size = std::distance(from, to);
+ SizeType<A> erase_index =
+ std::distance(ConstIterator<A>(storage_view.data), from);
+ SizeType<A> erase_end_index = erase_index + erase_size;
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(storage_view.data + erase_end_index));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(storage_view.data + erase_end_index));
- inlined_vector_internal::AssignElements(storage_view.data + erase_index,
- &move_values,
- storage_view.size - erase_end_index);
+ AssignElements<A>(storage_view.data + erase_index, move_values,
+ storage_view.size - erase_end_index);
- inlined_vector_internal::DestroyElements(
- GetAllocPtr(), storage_view.data + (storage_view.size - erase_size),
- erase_size);
+ DestroyElements<A>(GetAllocator(),
+ storage_view.data + (storage_view.size - erase_size),
+ erase_size);
SubtractSize(erase_size);
- return iterator(storage_view.data + erase_index);
+ return Iterator<A>(storage_view.data + erase_index);
}
template <typename T, size_t N, typename A>
-auto Storage<T, N, A>::Reserve(size_type requested_capacity) -> void {
- StorageView storage_view = MakeStorageView();
+auto Storage<T, N, A>::Reserve(SizeType<A> requested_capacity) -> void {
+ StorageView<A> storage_view = MakeStorageView();
if (ABSL_PREDICT_FALSE(requested_capacity <= storage_view.capacity)) return;
- AllocationTransaction allocation_tx(GetAllocPtr());
+ AllocationTransaction<A> allocation_tx(GetAllocator());
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(storage_view.data));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(storage_view.data));
- size_type new_capacity =
+ SizeType<A> new_capacity =
ComputeCapacity(storage_view.capacity, requested_capacity);
- pointer new_data = allocation_tx.Allocate(new_capacity);
+ Pointer<A> new_data = allocation_tx.Allocate(new_capacity);
- inlined_vector_internal::ConstructElements(GetAllocPtr(), new_data,
- &move_values, storage_view.size);
+ ConstructElements<A>(GetAllocator(), new_data, move_values,
+ storage_view.size);
- inlined_vector_internal::DestroyElements(GetAllocPtr(), storage_view.data,
- storage_view.size);
+ DestroyElements<A>(GetAllocator(), storage_view.data, storage_view.size);
DeallocateIfAllocated();
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
SetIsAllocated();
}
@@ -853,41 +797,40 @@ auto Storage<T, N, A>::ShrinkToFit() -> void {
// May only be called on allocated instances!
assert(GetIsAllocated());
- StorageView storage_view{GetAllocatedData(), GetSize(),
- GetAllocatedCapacity()};
+ StorageView<A> storage_view{GetAllocatedData(), GetSize(),
+ GetAllocatedCapacity()};
if (ABSL_PREDICT_FALSE(storage_view.size == storage_view.capacity)) return;
- AllocationTransaction allocation_tx(GetAllocPtr());
+ AllocationTransaction<A> allocation_tx(GetAllocator());
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(storage_view.data));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(storage_view.data));
- pointer construct_data;
+ Pointer<A> construct_data;
if (storage_view.size > GetInlinedCapacity()) {
- size_type new_capacity = storage_view.size;
+ SizeType<A> new_capacity = storage_view.size;
construct_data = allocation_tx.Allocate(new_capacity);
} else {
construct_data = GetInlinedData();
}
ABSL_INTERNAL_TRY {
- inlined_vector_internal::ConstructElements(GetAllocPtr(), construct_data,
- &move_values, storage_view.size);
+ ConstructElements<A>(GetAllocator(), construct_data, move_values,
+ storage_view.size);
}
ABSL_INTERNAL_CATCH_ANY {
SetAllocatedData(storage_view.data, storage_view.capacity);
ABSL_INTERNAL_RETHROW;
}
- inlined_vector_internal::DestroyElements(GetAllocPtr(), storage_view.data,
- storage_view.size);
+ DestroyElements<A>(GetAllocator(), storage_view.data, storage_view.size);
- AllocatorTraits::deallocate(*GetAllocPtr(), storage_view.data,
- storage_view.capacity);
+ AllocatorTraits<A>::deallocate(GetAllocator(), storage_view.data,
+ storage_view.capacity);
if (allocation_tx.DidAllocate()) {
- AcquireAllocatedData(&allocation_tx);
+ AcquireAllocatedData(allocation_tx);
} else {
UnsetIsAllocated();
}
@@ -905,38 +848,37 @@ auto Storage<T, N, A>::Swap(Storage* other_storage_ptr) -> void {
Storage* large_ptr = other_storage_ptr;
if (small_ptr->GetSize() > large_ptr->GetSize()) swap(small_ptr, large_ptr);
- for (size_type i = 0; i < small_ptr->GetSize(); ++i) {
+ for (SizeType<A> i = 0; i < small_ptr->GetSize(); ++i) {
swap(small_ptr->GetInlinedData()[i], large_ptr->GetInlinedData()[i]);
}
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(large_ptr->GetInlinedData() + small_ptr->GetSize()));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(large_ptr->GetInlinedData() + small_ptr->GetSize()));
- inlined_vector_internal::ConstructElements(
- large_ptr->GetAllocPtr(),
- small_ptr->GetInlinedData() + small_ptr->GetSize(), &move_values,
- large_ptr->GetSize() - small_ptr->GetSize());
+ ConstructElements<A>(large_ptr->GetAllocator(),
+ small_ptr->GetInlinedData() + small_ptr->GetSize(),
+ move_values,
+ large_ptr->GetSize() - small_ptr->GetSize());
- inlined_vector_internal::DestroyElements(
- large_ptr->GetAllocPtr(),
- large_ptr->GetInlinedData() + small_ptr->GetSize(),
- large_ptr->GetSize() - small_ptr->GetSize());
+ DestroyElements<A>(large_ptr->GetAllocator(),
+ large_ptr->GetInlinedData() + small_ptr->GetSize(),
+ large_ptr->GetSize() - small_ptr->GetSize());
} else {
Storage* allocated_ptr = this;
Storage* inlined_ptr = other_storage_ptr;
if (!allocated_ptr->GetIsAllocated()) swap(allocated_ptr, inlined_ptr);
- StorageView allocated_storage_view{allocated_ptr->GetAllocatedData(),
- allocated_ptr->GetSize(),
- allocated_ptr->GetAllocatedCapacity()};
+ StorageView<A> allocated_storage_view{
+ allocated_ptr->GetAllocatedData(), allocated_ptr->GetSize(),
+ allocated_ptr->GetAllocatedCapacity()};
- IteratorValueAdapter<MoveIterator> move_values(
- MoveIterator(inlined_ptr->GetInlinedData()));
+ IteratorValueAdapter<A, MoveIterator<A>> move_values(
+ MoveIterator<A>(inlined_ptr->GetInlinedData()));
ABSL_INTERNAL_TRY {
- inlined_vector_internal::ConstructElements(
- inlined_ptr->GetAllocPtr(), allocated_ptr->GetInlinedData(),
- &move_values, inlined_ptr->GetSize());
+ ConstructElements<A>(inlined_ptr->GetAllocator(),
+ allocated_ptr->GetInlinedData(), move_values,
+ inlined_ptr->GetSize());
}
ABSL_INTERNAL_CATCH_ANY {
allocated_ptr->SetAllocatedData(allocated_storage_view.data,
@@ -944,16 +886,15 @@ auto Storage<T, N, A>::Swap(Storage* other_storage_ptr) -> void {
ABSL_INTERNAL_RETHROW;
}
- inlined_vector_internal::DestroyElements(inlined_ptr->GetAllocPtr(),
- inlined_ptr->GetInlinedData(),
- inlined_ptr->GetSize());
+ DestroyElements<A>(inlined_ptr->GetAllocator(),
+ inlined_ptr->GetInlinedData(), inlined_ptr->GetSize());
inlined_ptr->SetAllocatedData(allocated_storage_view.data,
allocated_storage_view.capacity);
}
swap(GetSizeAndIsAllocated(), other_storage_ptr->GetSizeAndIsAllocated());
- swap(*GetAllocPtr(), *other_storage_ptr->GetAllocPtr());
+ swap(GetAllocator(), other_storage_ptr->GetAllocator());
}
// End ignore "array-bounds" and "maybe-uninitialized"
diff --git a/third_party/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake b/third_party/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake
index 22a25eba7f..a4ab1aa204 100644
--- a/third_party/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake
+++ b/third_party/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake
@@ -94,6 +94,7 @@ list(APPEND ABSL_LLVM_FLAGS
"-Wno-implicit-int-conversion"
"-Wno-shorten-64-to-32"
"-Wno-sign-conversion"
+ "-Wno-unknown-warning-option"
"-DNOMINMAX"
)
diff --git a/third_party/abseil-cpp/absl/copts/GENERATED_copts.bzl b/third_party/abseil-cpp/absl/copts/GENERATED_copts.bzl
index 0c7a91bd27..a6efc98e11 100644
--- a/third_party/abseil-cpp/absl/copts/GENERATED_copts.bzl
+++ b/third_party/abseil-cpp/absl/copts/GENERATED_copts.bzl
@@ -95,6 +95,7 @@ ABSL_LLVM_FLAGS = [
"-Wno-implicit-int-conversion",
"-Wno-shorten-64-to-32",
"-Wno-sign-conversion",
+ "-Wno-unknown-warning-option",
"-DNOMINMAX",
]
diff --git a/third_party/abseil-cpp/absl/copts/copts.py b/third_party/abseil-cpp/absl/copts/copts.py
index 7268c68064..0d6c1ec3a6 100644
--- a/third_party/abseil-cpp/absl/copts/copts.py
+++ b/third_party/abseil-cpp/absl/copts/copts.py
@@ -112,6 +112,9 @@ COPT_VARS = {
"-Wno-implicit-int-conversion",
"-Wno-shorten-64-to-32",
"-Wno-sign-conversion",
+ # Disable warnings on unknown warning flags (when warning flags are
+ # unknown on older compiler versions)
+ "-Wno-unknown-warning-option",
# Don't define min and max macros (Build on Windows using clang)
"-DNOMINMAX",
],
diff --git a/third_party/abseil-cpp/absl/profiling/BUILD.bazel b/third_party/abseil-cpp/absl/profiling/BUILD.bazel
new file mode 100644
index 0000000000..10b256d68c
--- /dev/null
+++ b/third_party/abseil-cpp/absl/profiling/BUILD.bazel
@@ -0,0 +1,17 @@
+# Copyright 2021 The Abseil Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+package(default_visibility = ["//visibility:private"])
+
+licenses(["notice"])
diff --git a/third_party/abseil-cpp/absl/profiling/CMakeLists.txt b/third_party/abseil-cpp/absl/profiling/CMakeLists.txt
new file mode 100644
index 0000000000..3c37491e33
--- /dev/null
+++ b/third_party/abseil-cpp/absl/profiling/CMakeLists.txt
@@ -0,0 +1,14 @@
+# Copyright 2021 The Abseil Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
diff --git a/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc b/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc
index 776c2e18f1..3040b3a768 100644
--- a/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc
+++ b/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc
@@ -31,7 +31,7 @@
// a hardware accelerated implementation of randen, or whether it
// will contain stubs that exit the process.
#if ABSL_HAVE_ACCELERATED_AES
-// The following plaforms have implemented RandenHwAws.
+// The following plaforms have implemented RandenHwAes.
#if defined(ABSL_ARCH_X86_64) || defined(ABSL_ARCH_X86_32) || \
defined(ABSL_ARCH_PPC) || defined(ABSL_ARCH_ARM) || \
defined(ABSL_ARCH_AARCH64)
diff --git a/third_party/abseil-cpp/absl/strings/cord.cc b/third_party/abseil-cpp/absl/strings/cord.cc
index e9d72fa8f4..115705a203 100644
--- a/third_party/abseil-cpp/absl/strings/cord.cc
+++ b/third_party/abseil-cpp/absl/strings/cord.cc
@@ -689,13 +689,10 @@ void Cord::InlineRep::AppendArray(absl::string_view src,
return;
}
- // Note: we don't concern ourselves if src aliases data stored in the
- // inlined data of 'this', as we update the InlineData only at the end.
- // We are going from an inline size to beyond inline size. Make the new size
- // either double the inlined size, or the added size + 10%.
- const size_t size1 = inline_length * 2 + src.size();
- const size_t size2 = inline_length + src.size() / 10;
- rep = CordRepFlat::New(std::max<size_t>(size1, size2));
+ // Allocate flat to be a perfect fit on first append exceeding inlined size.
+ // Subsequent growth will use amortized growth until we reach maximum flat
+ // size.
+ rep = CordRepFlat::New(inline_length + src.size());
appended = std::min(src.size(), rep->flat()->Capacity() - inline_length);
memcpy(rep->flat()->Data(), data_.as_chars(), inline_length);
memcpy(rep->flat()->Data() + inline_length, src.data(), appended);
diff --git a/third_party/abseil-cpp/absl/strings/cord_test.cc b/third_party/abseil-cpp/absl/strings/cord_test.cc
index d029633812..06a7bd6ca3 100644
--- a/third_party/abseil-cpp/absl/strings/cord_test.cc
+++ b/third_party/abseil-cpp/absl/strings/cord_test.cc
@@ -1385,6 +1385,59 @@ TEST_P(CordTest, DiabolicalGrowth) {
cord.EstimatedMemoryUsage());
}
+// The following tests check support for >4GB cords in 64-bit binaries, and
+// 2GB-4GB cords in 32-bit binaries. This function returns the large cord size
+// that's appropriate for the binary.
+
+// Construct a huge cord with the specified valid prefix.
+static absl::Cord MakeHuge(absl::string_view prefix) {
+ absl::Cord cord;
+ if (sizeof(size_t) > 4) {
+ // In 64-bit binaries, test 64-bit Cord support.
+ const size_t size =
+ static_cast<size_t>(std::numeric_limits<uint32_t>::max()) + 314;
+ cord.Append(absl::MakeCordFromExternal(
+ absl::string_view(prefix.data(), size),
+ [](absl::string_view s) { DoNothing(s, nullptr); }));
+ } else {
+ // Cords are limited to 32-bit lengths in 32-bit binaries. The following
+ // tests check for use of "signed int" to represent Cord length/offset.
+ // However absl::string_view does not allow lengths >= (1u<<31), so we need
+ // to append in two parts;
+ const size_t s1 = (1u << 31) - 1;
+ // For shorter cord, `Append` copies the data rather than allocating a new
+ // node. The threshold is currently set to 511, so `s2` needs to be bigger
+ // to not trigger the copy.
+ const size_t s2 = 600;
+ cord.Append(absl::MakeCordFromExternal(
+ absl::string_view(prefix.data(), s1),
+ [](absl::string_view s) { DoNothing(s, nullptr); }));
+ cord.Append(absl::MakeCordFromExternal(
+ absl::string_view("", s2),
+ [](absl::string_view s) { DoNothing(s, nullptr); }));
+ }
+ return cord;
+}
+
+TEST_P(CordTest, HugeCord) {
+ absl::Cord cord = MakeHuge("huge cord");
+ EXPECT_LE(cord.size(), cord.EstimatedMemoryUsage());
+ EXPECT_GE(cord.size() + 100, cord.EstimatedMemoryUsage());
+}
+
+// Tests that Append() works ok when handed a self reference
+TEST_P(CordTest, AppendSelf) {
+ // We run the test until data is ~16K
+ // This guarantees it covers small, medium and large data.
+ std::string control_data = "Abc";
+ absl::Cord data(control_data);
+ while (control_data.length() < 0x4000) {
+ data.Append(data);
+ control_data.append(control_data);
+ ASSERT_EQ(control_data, data);
+ }
+}
+
TEST_P(CordTest, MakeFragmentedCordFromInitializerList) {
absl::Cord fragmented =
absl::MakeFragmentedCord({"A ", "fragmented ", "Cord"});
diff --git a/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h b/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h
index 303f458083..bbaa7934fa 100644
--- a/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h
+++ b/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h
@@ -23,7 +23,6 @@
#include "absl/base/internal/raw_logging.h"
#include "absl/base/optimization.h"
#include "absl/strings/internal/cord_internal.h"
-#include "absl/strings/internal/cord_rep_btree.h"
#include "absl/strings/internal/cord_rep_flat.h"
#include "absl/strings/string_view.h"
#include "absl/types/span.h"
diff --git a/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h b/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h
index 267cc0ef69..b26cff6648 100644
--- a/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h
+++ b/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h
@@ -100,7 +100,7 @@ class FormatSpecTemplate
// We use the 'unavailable' attribute to give a better compiler error than
// just 'method is deleted'.
// To avoid checking the format twice, we just check that the format is
- // constexpr. If is it valid, then the overload below will kick in.
+ // constexpr. If it is valid, then the overload below will kick in.
// We add the template here to make this overload have lower priority.
template <typename = void>
FormatSpecTemplate(const char* s) // NOLINT
diff --git a/third_party/abseil-cpp/create_lts.py b/third_party/abseil-cpp/create_lts.py
index d5d7b28c20..561708063f 100755
--- a/third_party/abseil-cpp/create_lts.py
+++ b/third_party/abseil-cpp/create_lts.py
@@ -96,6 +96,13 @@ def main(argv):
# Replacement directives go here.
ReplaceStringsInFile(
+ 'absl/base/config.h', {
+ '#undef ABSL_LTS_RELEASE_VERSION':
+ '#define ABSL_LTS_RELEASE_VERSION {}'.format(datestamp),
+ '#undef ABSL_LTS_RELEASE_PATCH_LEVEL':
+ '#define ABSL_LTS_RELEASE_PATCH_LEVEL 0'
+ })
+ ReplaceStringsInFile(
'absl/base/options.h', {
'#define ABSL_OPTION_USE_INLINE_NAMESPACE 0':
'#define ABSL_OPTION_USE_INLINE_NAMESPACE 1',
diff --git a/third_party/abseil-cpp/symbols_arm64_dbg.def b/third_party/abseil-cpp/symbols_arm64_dbg.def
index 7cff44ed8c..a943d3fdf6 100644
--- a/third_party/abseil-cpp/symbols_arm64_dbg.def
+++ b/third_party/abseil-cpp/symbols_arm64_dbg.def
@@ -260,25 +260,25 @@ EXPORTS
??$ArgumentToConv@_J@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_K@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_N@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
- ??$AssignElements@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@3@_K@inlined_vector_internal@absl@@YAXPEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
+ ??$AssignElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXPEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
??$Base64EscapeInternal@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@strings_internal@absl@@YAXPEBE_KPEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@_NPEBD@Z
??$CallOnceImpl@A6AXXZ$$V@base_internal@absl@@YAXPEAU?$atomic@I@__1@std@@W4SchedulingMode@01@A6AXXZ@Z
??$CastAndCallFunction@$$CBU?$atomic@_N@__1@std@@@Condition@absl@@CA_NPEBV01@@Z
??$CastAndCallFunction@USynchEvent@absl@@@Condition@absl@@CA_NPEBV01@@Z
??$Compare@$0FE@$0FE@@strings_internal@absl@@YAHAEBV?$BigUnsigned@$0FE@@01@0@Z
- ??$ConstructElements@V?$allocator@H@__1@std@@PEAHV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@H@__1@std@@PEAHPEAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@V?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@PEAV?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@01@_K@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@absl@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@5@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@PEAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@H@__1@std@@V?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@H@__1@std@@PEAHAEAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEAV?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@01@_K@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@AEAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@01@_K@Z
??$Convert@VFormatArgImpl@str_format_internal@absl@@@FormatArgImplFriend@str_format_internal@absl@@SA_NVFormatArgImpl@12@VFormatConversionSpecImpl@12@PEAVFormatSinkImpl@12@@Z
- ??$DestroyElements@V?$allocator@H@__1@std@@PEAH_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@H@__1@std@@PEAH_K@Z
- ??$DestroyElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@_K@Z
+ ??$DestroyElements@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@H@__1@std@@PEAH_K@Z
+ ??$DestroyElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@_K@Z
??$Dispatch@C@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
??$Dispatch@D@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
??$Dispatch@E@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
@@ -556,16 +556,11 @@ EXPORTS
??$__upper_bound@AEAUByUnixTime@Transition@cctz@time_internal@absl@@PEBU2345@U2345@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@AEAUByUnixTime@2345@@Z
??$addressof@$$CBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEBU201@@Z
??$addressof@$$CBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEBU201@@Z
- ??$addressof@$$CBV?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPEBV?$allocator@UPayload@status_internal@absl@@@01@AEBV201@@Z
??$addressof@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAPEBV23456@@Z
??$addressof@QEAUCordRep@cord_internal@absl@@@__1@std@@YAPEBQEAUCordRep@cord_internal@absl@@AEBQEAU234@@Z
??$addressof@U?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@YAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@01@AEAU201@@Z
??$addressof@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEAU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEAU201@@Z
??$addressof@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEAU201@@Z
- ??$addressof@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@UPayload@status_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@USubRange@absl@@@01@AEAV201@@Z
??$advance@PEBUTransition@cctz@time_internal@absl@@_J@__1@std@@YAXAEAPEBUTransition@cctz@time_internal@absl@@_J@Z
??$advance@PEBVFormatArgImpl@str_format_internal@absl@@_K@__1@std@@YAXAEAPEBVFormatArgImpl@str_format_internal@absl@@_K@Z
??$assign@PEBVFormatArgImpl@str_format_internal@absl@@@?$vector@VFormatArgImpl@str_format_internal@absl@@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@QEAAXPEBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -573,23 +568,20 @@ EXPORTS
??$bit_cast@_J_K$0A@@absl@@YA_JAEB_K@Z
??$bit_cast@_K_J$0A@@absl@@YA_KAEB_J@Z
??$bit_width@_K@absl@@YA_K_K@Z
- ??$construct@HAEBH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAHAEBH@Z
- ??$construct@HH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH$$QEAH@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV12345@@?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV34567@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV12345@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV45678@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@PEAPEBV12345@@?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@$$QEAPEAPEBV34567@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@PEAPEBV12345@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@$$QEAPEAPEBV45678@@Z
??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@@?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEAUCordRep@cord_internal@absl@@AEBQEAU345@@Z
- ??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEBQEAU561@@Z
??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@AEBQEAU456@@Z
??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@@?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEAUCordRep@cord_internal@absl@@$$QEAPEAU345@@Z
- ??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@$$QEAPEAU561@@Z
+ ??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@$$QEAPEAU456@@Z
??$construct@PEAVCordzHandle@cord_internal@absl@@AEBQEAV123@@?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@QEAAXPEAPEAVCordzHandle@cord_internal@absl@@AEBQEAV345@@Z
??$construct@PEAVCordzHandle@cord_internal@absl@@AEBQEAV123@X@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@12@PEAPEAVCordzHandle@cord_internal@absl@@AEBQEAV456@@Z
??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@@?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEBUCordRep@cord_internal@absl@@AEBQEBU345@@Z
- ??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@AEBQEBU561@@Z
+ ??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@AEBQEBU456@@Z
??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@@?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEBUCordRep@cord_internal@absl@@$$QEAPEBU345@@Z
- ??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@$$QEAPEBU561@@Z
+ ??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@$$QEAPEBU456@@Z
??$construct@PEBVCordzHandle@cord_internal@absl@@AEBQEBV123@@?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@QEAAXPEAPEBVCordzHandle@cord_internal@absl@@AEBQEBV345@@Z
??$construct@PEBVCordzHandle@cord_internal@absl@@AEBQEBV123@X@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@12@PEAPEBVCordzHandle@cord_internal@absl@@AEBQEBV456@@Z
??$construct@PEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEBV12345@@?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEBV34567@@Z
@@ -599,11 +591,11 @@ EXPORTS
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@@?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@QEAAXPEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QEAU3456@@Z
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QEAU4567@@Z
??$construct@UPayload@status_internal@absl@@AEBU123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QEAAXPEAUPayload@status_internal@absl@@AEBU345@@Z
- ??$construct@UPayload@status_internal@absl@@AEBU123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEBU561@@Z
+ ??$construct@UPayload@status_internal@absl@@AEBU123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@AEBU456@@Z
??$construct@UPayload@status_internal@absl@@U123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QEAAXPEAUPayload@status_internal@absl@@$$QEAU345@@Z
- ??$construct@UPayload@status_internal@absl@@U123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@$$QEAU561@@Z
+ ??$construct@UPayload@status_internal@absl@@U123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@$$QEAU456@@Z
??$construct@USubRange@absl@@U12@@?$allocator@USubRange@absl@@@__1@std@@QEAAXPEAUSubRange@absl@@$$QEAU34@@Z
- ??$construct@USubRange@absl@@U12@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@$$QEAU51@@Z
+ ??$construct@USubRange@absl@@U12@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@12@PEAUSubRange@absl@@$$QEAU45@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$V@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$VX@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PEAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@AEBU1234@@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransition@cctz@time_internal@absl@@AEBU3456@@Z
@@ -617,38 +609,22 @@ EXPORTS
??$construct@UViableSubstitution@strings_internal@absl@@AEAVstring_view@3@AEBV43@AEA_K@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAXPEAUViableSubstitution@strings_internal@absl@@AEAVstring_view@5@AEBV65@AEA_K@Z
??$construct@UViableSubstitution@strings_internal@absl@@AEAVstring_view@3@AEBV43@AEA_KX@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PEAUViableSubstitution@strings_internal@absl@@AEAVstring_view@6@AEBV76@AEA_K@Z
??$construct@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@?$optional_data_base@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@optional_internal@absl@@IEAAX$$QEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AEAPEAHAEBH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@AEAPEAHAEBH@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AEAPEAHH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@AEAPEAH$$QEAH@Z
- ??$construct_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@absl@@AEBQEAU456@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@1@AEBQEAU561@@Z
- ??$construct_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@absl@@PEAU456@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@1@$$QEAPEAU561@@Z
- ??$construct_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@absl@@AEBQEBU456@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@1@AEBQEBU561@@Z
- ??$construct_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@absl@@PEBU456@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@1@$$QEAPEBU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@absl@@AEBU456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@1@AEBU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@absl@@U456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@1@$$QEAU561@@Z
- ??$construct_impl@V?$allocator@USubRange@absl@@@__1@std@@AEAPEAUSubRange@absl@@U45@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@USubRange@absl@@@__1@std@@AEAPEAUSubRange@1@$$QEAU51@@Z
??$copy@PEBVFormatArgImpl@str_format_internal@absl@@PEAV123@@__1@std@@YAPEAVFormatArgImpl@str_format_internal@absl@@PEBV234@0PEAV234@@Z
??$countl_zero@_K@absl@@YAH_K@Z
??$countr_zero@_K@absl@@YAH_K@Z
- ??$destroy@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH@Z
??$destroy@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@@Z
- ??$destroy@PEAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@@Z
??$destroy@PEAUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@@Z
??$destroy@PEAVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@12@PEAPEAVCordzHandle@cord_internal@absl@@@Z
- ??$destroy@PEBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@@Z
+ ??$destroy@PEBUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@@Z
??$destroy@PEBVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@12@PEAPEBVCordzHandle@cord_internal@absl@@@Z
??$destroy@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@XX@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@12@PEAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@12@@Z
??$destroy@UConversionItem@ParsedFormatBase@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@@Z
- ??$destroy@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@@Z
- ??$destroy@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@@Z
+ ??$destroy@UPayload@status_internal@absl@@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@@Z
+ ??$destroy@USubRange@absl@@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@12@PEAUSubRange@absl@@@Z
??$destroy@UTransition@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PEAUTransition@cctz@time_internal@absl@@@Z
??$destroy@UTransitionType@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@12@PEAUTransitionType@cctz@time_internal@absl@@@Z
??$destroy@UViableSubstitution@strings_internal@absl@@X@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PEAUViableSubstitution@strings_internal@absl@@@Z
??$destroy@VFormatArgImpl@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@VFormatArgImpl@str_format_internal@absl@@@12@PEAVFormatArgImpl@str_format_internal@absl@@@Z
- ??$destroy_impl@V?$allocator@H@__1@std@@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@PEAH@Z
- ??$destroy_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@@Z
- ??$destroy_impl@V?$allocator@USubRange@absl@@@__1@std@@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@@Z
??$distance@PEBUPayload@status_internal@absl@@@__1@std@@YA_JPEBUPayload@status_internal@absl@@0@Z
??$distance@PEBUTransition@cctz@time_internal@absl@@@__1@std@@YA_JPEBUTransition@cctz@time_internal@absl@@0@Z
??$distance@PEBVFormatArgImpl@str_format_internal@absl@@@__1@std@@YA_JPEBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -671,12 +647,8 @@ EXPORTS
??$find_first_non_full@X@container_internal@absl@@YA?AUFindInfo@01@PEBW4ctrl_t@01@_K1@Z
??$forward@$$T@absl@@YA$$QEA$$TAEA$$T@Z
??$forward@AEAI@absl@@YAAEAIAEAI@Z
- ??$forward@AEAPEAPEAUCordRep@cord_internal@absl@@@__1@std@@YAAEAPEAPEAUCordRep@cord_internal@absl@@AEAPEAPEAU234@@Z
- ??$forward@AEAPEAPEBUCordRep@cord_internal@absl@@@__1@std@@YAAEAPEAPEBUCordRep@cord_internal@absl@@AEAPEAPEBU234@@Z
??$forward@AEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAAEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAPEAPEBV23456@@Z
??$forward@AEAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@YAAEAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@01@AEAPEAU201@@Z
- ??$forward@AEAPEAUPayload@status_internal@absl@@@__1@std@@YAAEAPEAUPayload@status_internal@absl@@AEAPEAU234@@Z
- ??$forward@AEAPEAUSubRange@absl@@@__1@std@@YAAEAPEAUSubRange@absl@@AEAPEAU23@@Z
??$forward@AEAPEAUThreadIdentity@base_internal@absl@@@__1@std@@YAAEAPEAUThreadIdentity@base_internal@absl@@AEAPEAU234@@Z
??$forward@AEAPEAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@@__1@std@@YAAEAPEAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@AEAPEAV23@@Z
??$forward@AEAPEAVTimeZoneIf@cctz@time_internal@absl@@@__1@std@@YAAEAPEAVTimeZoneIf@cctz@time_internal@absl@@AEAPEAV2345@@Z
@@ -839,11 +811,11 @@ EXPORTS
??$swap@UViableSubstitution@strings_internal@absl@@@__1@std@@YAXAEAUViableSubstitution@strings_internal@absl@@0@Z
??$upper_bound@PEBUTransition@cctz@time_internal@absl@@U1234@UByCivilTime@1234@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@UByCivilTime@2345@@Z
??$upper_bound@PEBUTransition@cctz@time_internal@absl@@U1234@UByUnixTime@1234@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@UByUnixTime@2345@@Z
- ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@H@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@USubRange@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@H@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@USubRange@absl@@@__1@std@@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@Vstring_view@2@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@XZ
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@_K@Z
@@ -851,7 +823,7 @@ EXPORTS
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QEAA@XZ
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QEAA@_K@Z
??0?$BitMask@_K$07$02@container_internal@absl@@QEAA@_K@Z
- ??0?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEBQEAUCordRep@cord_internal@2@@Z
+ ??0?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEBQEAUCordRep@cord_internal@2@@Z
??0?$FixedArray@PEAUCordRep@cord_internal@absl@@$0?0V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QEAA@_KAEBV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
??0?$InlinedVector@H$0CP@V?$allocator@H@__1@std@@@absl@@QEAA@XZ
??0?$InlinedVector@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QEAA@XZ
@@ -1550,12 +1522,12 @@ EXPORTS
?AbslParseFlag@absl@@YA_NVstring_view@1@PEAVTime@1@PEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VDuration@1@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VTime@1@@Z
- ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
?Add@Filler@CordRepRing@cord_internal@absl@@QEAAXPEAUCordRep@34@_K1@Z
?AddDataOffset@CordRepRing@cord_internal@absl@@AEAAXI_K@Z
?AddNode@CordForest@absl@@AEAAXPEAUCordRep@cord_internal@2@@Z
@@ -1683,13 +1655,13 @@ EXPORTS
?ComputeCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SA_K_K0@Z
?ComputeCapacity@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SA_K_K0@Z
?ConcatNodes@CordForest@absl@@QEAAPEAUCordRep@cord_internal@2@XZ
- ?ConstructNext@?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@H@__1@std@@PEAH@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@3@@Z
+ ?ConstructNext@?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@H@__1@std@@PEAH@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@3@@Z
?Consume@cord_internal@absl@@YAXPEAUCordRep@12@V?$FunctionRef@$$A6AXPEAUCordRep@cord_internal@absl@@_K1@Z@2@@Z
?ConsumePrefix@absl@@YA_NPEAVstring_view@1@V21@@Z
?ConsumeUnboundConversion@str_format_internal@absl@@YAPEBDPEBD0PEAUUnboundConversion@12@PEAH@Z
@@ -1925,13 +1897,6 @@ EXPORTS
?FromUnixDuration@time_internal@absl@@YA?AVTime@2@VDuration@2@@Z
?FromUnixSeconds@cctz@time_internal@absl@@YA?AV?$time_point@Vsystem_clock@chrono@__1@std@@V?$duration@_JV?$ratio@$00$00@__1@std@@@234@@chrono@__1@std@@_J@Z
?Get@RefcountAndFlags@cord_internal@absl@@QEBAHXZ
- ?GetAllocPtr@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@H@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBAPEBV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAllocatedCapacity@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
?GetAllocatedCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
?GetAllocatedCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
@@ -1950,6 +1915,13 @@ EXPORTS
?GetAllocator@?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@USubRange@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@H@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBAAEBV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAppendBuffer@CordRepBtree@cord_internal@absl@@QEAA?AV?$Span@D@3@_K@Z
?GetAppendBuffer@CordRepRing@cord_internal@absl@@QEAA?AV?$Span@D@3@_K@Z
?GetAppendBufferSlow@CordRepBtree@cord_internal@absl@@AEAA?AV?$Span@D@3@_K@Z
@@ -2904,19 +2876,17 @@ EXPORTS
?allocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QEAAPEAUTransitionType@cctz@time_internal@absl@@_K@Z
?allocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAPEAUViableSubstitution@strings_internal@absl@@_K@Z
?allocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QEAAPEAVFormatArgImpl@str_format_internal@absl@@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAPEAHAEAV?$allocator@H@__1@std@@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAPEAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@AEAV?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAUCordRep@cord_internal@absl@@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPEAPEAUCordRep@cord_internal@2@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAVCordzHandle@cord_internal@absl@@AEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPEAPEBUCordRep@cord_internal@2@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBUCordRep@cord_internal@absl@@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBVCordzHandle@cord_internal@absl@@AEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAV?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@23@AEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAPEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@AEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAPEAUPayload@status_internal@2@AEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAPEAUSubRange@2@AEAV?$allocator@USubRange@absl@@@__1@std@@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAPEAUPayload@status_internal@absl@@AEAV?$allocator@UPayload@status_internal@absl@@@23@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAPEAUSubRange@absl@@AEAV?$allocator@USubRange@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAUTransition@cctz@time_internal@absl@@AEAV?$allocator@UTransition@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAUTransitionType@cctz@time_internal@absl@@AEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAPEAUViableSubstitution@strings_internal@absl@@AEAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@_K@Z
@@ -3090,19 +3060,17 @@ EXPORTS
?deallocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransitionType@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAXPEAUViableSubstitution@strings_internal@absl@@_K@Z
?deallocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QEAAXPEAVFormatArgImpl@str_format_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@23@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@23@PEAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@23@PEAPEAUCordRep@cord_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@2@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@23@PEAPEAVCordzHandle@cord_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@2@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@23@PEAPEBUCordRep@cord_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@23@PEAPEBVCordzHandle@cord_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@23@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@23@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@2@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@2@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@23@PEAUPayload@status_internal@absl@@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@23@PEAUSubRange@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@23@PEAUTransition@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@PEAUTransitionType@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@PEAUViableSubstitution@strings_internal@absl@@_K@Z
diff --git a/third_party/abseil-cpp/symbols_x64_dbg.def b/third_party/abseil-cpp/symbols_x64_dbg.def
index 8a40effb85..9113b310f0 100644
--- a/third_party/abseil-cpp/symbols_x64_dbg.def
+++ b/third_party/abseil-cpp/symbols_x64_dbg.def
@@ -260,25 +260,25 @@ EXPORTS
??$ArgumentToConv@_J@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_K@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_N@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
- ??$AssignElements@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@3@_K@inlined_vector_internal@absl@@YAXPEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
+ ??$AssignElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXPEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
??$Base64EscapeInternal@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@strings_internal@absl@@YAXPEBE_KPEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@_NPEBD@Z
??$CallOnceImpl@A6AXXZ$$V@base_internal@absl@@YAXPEAU?$atomic@I@__1@std@@W4SchedulingMode@01@A6AXXZ@Z
??$CastAndCallFunction@$$CBU?$atomic@_N@__1@std@@@Condition@absl@@CA_NPEBV01@@Z
??$CastAndCallFunction@USynchEvent@absl@@@Condition@absl@@CA_NPEBV01@@Z
??$Compare@$0FE@$0FE@@strings_internal@absl@@YAHAEBV?$BigUnsigned@$0FE@@01@0@Z
- ??$ConstructElements@V?$allocator@H@__1@std@@PEAHV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@H@__1@std@@PEAHPEAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@V?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@PEAV?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@01@_K@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@6@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@PEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
- ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@absl@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@5@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@PEAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@H@__1@std@@V?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@H@__1@std@@PEAHAEAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEAV?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@01@_K@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@01@_K@Z
+ ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@AEAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@01@_K@Z
??$Convert@VFormatArgImpl@str_format_internal@absl@@@FormatArgImplFriend@str_format_internal@absl@@SA_NVFormatArgImpl@12@VFormatConversionSpecImpl@12@PEAVFormatSinkImpl@12@@Z
- ??$DestroyElements@V?$allocator@H@__1@std@@PEAH_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@H@__1@std@@PEAH_K@Z
- ??$DestroyElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@_K@Z
- ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@absl@@_K@inlined_vector_internal@absl@@YAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@_K@Z
+ ??$DestroyElements@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@H@__1@std@@PEAH_K@Z
+ ??$DestroyElements@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@_K@Z
+ ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@_K@Z
??$Dispatch@C@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
??$Dispatch@D@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
??$Dispatch@E@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PEAX@Z
@@ -556,16 +556,11 @@ EXPORTS
??$__upper_bound@AEAUByUnixTime@Transition@cctz@time_internal@absl@@PEBU2345@U2345@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@AEAUByUnixTime@2345@@Z
??$addressof@$$CBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEBU201@@Z
??$addressof@$$CBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEBU201@@Z
- ??$addressof@$$CBV?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPEBV?$allocator@UPayload@status_internal@absl@@@01@AEBV201@@Z
??$addressof@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAPEBV23456@@Z
??$addressof@QEAUCordRep@cord_internal@absl@@@__1@std@@YAPEBQEAUCordRep@cord_internal@absl@@AEBQEAU234@@Z
??$addressof@U?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@YAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@01@AEAU201@@Z
??$addressof@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEAU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEAU201@@Z
??$addressof@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPEAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@01@AEAU201@@Z
- ??$addressof@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@UPayload@status_internal@absl@@@01@AEAV201@@Z
- ??$addressof@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@YAPEAV?$allocator@USubRange@absl@@@01@AEAV201@@Z
??$advance@PEBUTransition@cctz@time_internal@absl@@_J@__1@std@@YAXAEAPEBUTransition@cctz@time_internal@absl@@_J@Z
??$advance@PEBVFormatArgImpl@str_format_internal@absl@@_K@__1@std@@YAXAEAPEBVFormatArgImpl@str_format_internal@absl@@_K@Z
??$assign@PEBVFormatArgImpl@str_format_internal@absl@@@?$vector@VFormatArgImpl@str_format_internal@absl@@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@QEAAXPEBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -576,23 +571,20 @@ EXPORTS
??$bit_cast@_K_J$0A@@absl@@YA_KAEB_J@Z
??$bit_width@I@absl@@YAII@Z
??$bit_width@_K@absl@@YA_K_K@Z
- ??$construct@HAEBH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAHAEBH@Z
- ??$construct@HH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH$$QEAH@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV12345@@?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV34567@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV12345@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEAPEBV45678@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@PEAPEBV12345@@?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@$$QEAPEAPEBV34567@@Z
??$construct@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@PEAPEBV12345@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@$$QEAPEAPEBV45678@@Z
??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@@?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEAUCordRep@cord_internal@absl@@AEBQEAU345@@Z
- ??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@AEBQEAU561@@Z
??$construct@PEAUCordRep@cord_internal@absl@@AEBQEAU123@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@AEBQEAU456@@Z
??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@@?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEAUCordRep@cord_internal@absl@@$$QEAPEAU345@@Z
- ??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@$$QEAPEAU561@@Z
+ ??$construct@PEAUCordRep@cord_internal@absl@@PEAU123@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@$$QEAPEAU456@@Z
??$construct@PEAVCordzHandle@cord_internal@absl@@AEBQEAV123@@?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@QEAAXPEAPEAVCordzHandle@cord_internal@absl@@AEBQEAV345@@Z
??$construct@PEAVCordzHandle@cord_internal@absl@@AEBQEAV123@X@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@12@PEAPEAVCordzHandle@cord_internal@absl@@AEBQEAV456@@Z
??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@@?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEBUCordRep@cord_internal@absl@@AEBQEBU345@@Z
- ??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@AEBQEBU561@@Z
+ ??$construct@PEBUCordRep@cord_internal@absl@@AEBQEBU123@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@AEBQEBU456@@Z
??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@@?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@QEAAXPEAPEBUCordRep@cord_internal@absl@@$$QEAPEBU345@@Z
- ??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@$$QEAPEBU561@@Z
+ ??$construct@PEBUCordRep@cord_internal@absl@@PEBU123@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@$$QEAPEBU456@@Z
??$construct@PEBVCordzHandle@cord_internal@absl@@AEBQEBV123@@?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@QEAAXPEAPEBVCordzHandle@cord_internal@absl@@AEBQEBV345@@Z
??$construct@PEBVCordzHandle@cord_internal@absl@@AEBQEBV123@X@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@12@PEAPEBVCordzHandle@cord_internal@absl@@AEBQEBV456@@Z
??$construct@PEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEBV12345@@?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QEAAXPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEBQEBV34567@@Z
@@ -602,11 +594,11 @@ EXPORTS
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@@?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@QEAAXPEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QEAU3456@@Z
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QEAU4567@@Z
??$construct@UPayload@status_internal@absl@@AEBU123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QEAAXPEAUPayload@status_internal@absl@@AEBU345@@Z
- ??$construct@UPayload@status_internal@absl@@AEBU123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@AEBU561@@Z
+ ??$construct@UPayload@status_internal@absl@@AEBU123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@AEBU456@@Z
??$construct@UPayload@status_internal@absl@@U123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QEAAXPEAUPayload@status_internal@absl@@$$QEAU345@@Z
- ??$construct@UPayload@status_internal@absl@@U123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@$$QEAU561@@Z
+ ??$construct@UPayload@status_internal@absl@@U123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@$$QEAU456@@Z
??$construct@USubRange@absl@@U12@@?$allocator@USubRange@absl@@@__1@std@@QEAAXPEAUSubRange@absl@@$$QEAU34@@Z
- ??$construct@USubRange@absl@@U12@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@$$QEAU51@@Z
+ ??$construct@USubRange@absl@@U12@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@12@PEAUSubRange@absl@@$$QEAU45@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$V@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$VX@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PEAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@AEBU1234@@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransition@cctz@time_internal@absl@@AEBU3456@@Z
@@ -620,39 +612,23 @@ EXPORTS
??$construct@UViableSubstitution@strings_internal@absl@@AEAVstring_view@3@AEBV43@AEA_K@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAXPEAUViableSubstitution@strings_internal@absl@@AEAVstring_view@5@AEBV65@AEA_K@Z
??$construct@UViableSubstitution@strings_internal@absl@@AEAVstring_view@3@AEBV43@AEA_KX@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PEAUViableSubstitution@strings_internal@absl@@AEAVstring_view@6@AEBV76@AEA_K@Z
??$construct@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@?$optional_data_base@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@optional_internal@absl@@IEAAX$$QEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AEAPEAHAEBH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@AEAPEAHAEBH@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AEAPEAHH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@AEAPEAH$$QEAH@Z
- ??$construct_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@absl@@AEBQEAU456@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@1@AEBQEAU561@@Z
- ??$construct_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@absl@@PEAU456@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEAUCordRep@cord_internal@1@$$QEAPEAU561@@Z
- ??$construct_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@absl@@AEBQEBU456@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@1@AEBQEBU561@@Z
- ??$construct_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@absl@@PEBU456@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@AEAPEAPEBUCordRep@cord_internal@1@$$QEAPEBU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@absl@@AEBU456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@1@AEBU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@absl@@U456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AEAPEAUPayload@status_internal@1@$$QEAU561@@Z
- ??$construct_impl@V?$allocator@USubRange@absl@@@__1@std@@AEAPEAUSubRange@absl@@U45@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@USubRange@absl@@@__1@std@@AEAPEAUSubRange@1@$$QEAU51@@Z
??$copy@PEBVFormatArgImpl@str_format_internal@absl@@PEAV123@@__1@std@@YAPEAVFormatArgImpl@str_format_internal@absl@@PEBV234@0PEAV234@@Z
??$countl_zero@I@absl@@YAHI@Z
??$countl_zero@_K@absl@@YAH_K@Z
??$countr_zero@I@absl@@YAHI@Z
- ??$destroy@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH@Z
??$destroy@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@12@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@@Z
- ??$destroy@PEAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@@Z
??$destroy@PEAUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@12@PEAPEAUCordRep@cord_internal@absl@@@Z
??$destroy@PEAVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@12@PEAPEAVCordzHandle@cord_internal@absl@@@Z
- ??$destroy@PEBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@@Z
+ ??$destroy@PEBUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@12@PEAPEBUCordRep@cord_internal@absl@@@Z
??$destroy@PEBVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@12@PEAPEBVCordzHandle@cord_internal@absl@@@Z
??$destroy@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@XX@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@12@PEAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@12@@Z
??$destroy@UConversionItem@ParsedFormatBase@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@@Z
- ??$destroy@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@@Z
- ??$destroy@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@@Z
+ ??$destroy@UPayload@status_internal@absl@@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@12@PEAUPayload@status_internal@absl@@@Z
+ ??$destroy@USubRange@absl@@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@12@PEAUSubRange@absl@@@Z
??$destroy@UTransition@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PEAUTransition@cctz@time_internal@absl@@@Z
??$destroy@UTransitionType@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@12@PEAUTransitionType@cctz@time_internal@absl@@@Z
??$destroy@UViableSubstitution@strings_internal@absl@@X@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PEAUViableSubstitution@strings_internal@absl@@@Z
??$destroy@VFormatArgImpl@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@VFormatArgImpl@str_format_internal@absl@@@12@PEAVFormatArgImpl@str_format_internal@absl@@@Z
- ??$destroy_impl@V?$allocator@H@__1@std@@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAEAV?$allocator@H@__1@std@@PEAH@Z
- ??$destroy_impl@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@1@@Z
- ??$destroy_impl@V?$allocator@USubRange@absl@@@__1@std@@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@1@@Z
??$distance@PEBUPayload@status_internal@absl@@@__1@std@@YA_JPEBUPayload@status_internal@absl@@0@Z
??$distance@PEBUTransition@cctz@time_internal@absl@@@__1@std@@YA_JPEBUTransition@cctz@time_internal@absl@@0@Z
??$distance@PEBVFormatArgImpl@str_format_internal@absl@@@__1@std@@YA_JPEBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -675,12 +651,8 @@ EXPORTS
??$find_first_non_full@X@container_internal@absl@@YA?AUFindInfo@01@PEBW4ctrl_t@01@_K1@Z
??$forward@$$T@absl@@YA$$QEA$$TAEA$$T@Z
??$forward@AEAI@absl@@YAAEAIAEAI@Z
- ??$forward@AEAPEAPEAUCordRep@cord_internal@absl@@@__1@std@@YAAEAPEAPEAUCordRep@cord_internal@absl@@AEAPEAPEAU234@@Z
- ??$forward@AEAPEAPEBUCordRep@cord_internal@absl@@@__1@std@@YAAEAPEAPEBUCordRep@cord_internal@absl@@AEAPEAPEBU234@@Z
??$forward@AEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAAEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAPEAPEBV23456@@Z
??$forward@AEAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@YAAEAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@01@AEAPEAU201@@Z
- ??$forward@AEAPEAUPayload@status_internal@absl@@@__1@std@@YAAEAPEAUPayload@status_internal@absl@@AEAPEAU234@@Z
- ??$forward@AEAPEAUSubRange@absl@@@__1@std@@YAAEAPEAUSubRange@absl@@AEAPEAU23@@Z
??$forward@AEAPEAUThreadIdentity@base_internal@absl@@@__1@std@@YAAEAPEAUThreadIdentity@base_internal@absl@@AEAPEAU234@@Z
??$forward@AEAPEAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@@__1@std@@YAAEAPEAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@AEAPEAV23@@Z
??$forward@AEAPEAVTimeZoneIf@cctz@time_internal@absl@@@__1@std@@YAAEAPEAVTimeZoneIf@cctz@time_internal@absl@@AEAPEAV2345@@Z
@@ -842,11 +814,11 @@ EXPORTS
??$swap@UViableSubstitution@strings_internal@absl@@@__1@std@@YAXAEAUViableSubstitution@strings_internal@absl@@0@Z
??$upper_bound@PEBUTransition@cctz@time_internal@absl@@U1234@UByCivilTime@1234@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@UByCivilTime@2345@@Z
??$upper_bound@PEBUTransition@cctz@time_internal@absl@@U1234@UByUnixTime@1234@@__1@std@@YAPEBUTransition@cctz@time_internal@absl@@PEBU2345@0AEBU2345@UByUnixTime@2345@@Z
- ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@H@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEAV?$allocator@USubRange@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@H@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEAV?$allocator@USubRange@absl@@@__1@std@@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@Vstring_view@2@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@XZ
??0?$BigUnsigned@$03@strings_internal@absl@@QEAA@_K@Z
@@ -854,7 +826,7 @@ EXPORTS
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QEAA@XZ
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QEAA@_K@Z
??0?$BitMask@I$0BA@$0A@@container_internal@absl@@QEAA@I@Z
- ??0?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@AEBQEAUCordRep@cord_internal@2@@Z
+ ??0?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAA@PEBQEAUCordRep@cord_internal@2@@Z
??0?$FixedArray@PEAUCordRep@cord_internal@absl@@$0?0V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QEAA@_KAEBV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@Z
??0?$InlinedVector@H$0CP@V?$allocator@H@__1@std@@@absl@@QEAA@XZ
??0?$InlinedVector@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QEAA@XZ
@@ -1554,12 +1526,12 @@ EXPORTS
?AbslParseFlag@absl@@YA_NVstring_view@1@PEAVTime@1@PEAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VDuration@1@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VTime@1@@Z
- ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
?Add@Filler@CordRepRing@cord_internal@absl@@QEAAXPEAUCordRep@34@_K1@Z
?AddDataOffset@CordRepRing@cord_internal@absl@@AEAAXI_K@Z
?AddNode@CordForest@absl@@AEAAXPEAUCordRep@cord_internal@2@@Z
@@ -1687,13 +1659,13 @@ EXPORTS
?ComputeCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SA_K_K0@Z
?ComputeCapacity@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SA_K_K0@Z
?ConcatNodes@CordForest@absl@@QEAAPEAUCordRep@cord_internal@2@XZ
- ?ConstructNext@?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@H@__1@std@@PEAH@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QEAAXPEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@3@@Z
+ ?ConstructNext@?$CopyValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PEAH@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@H@__1@std@@PEAH@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PEAPEBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PEBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PEAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PEAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QEAAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@3@@Z
?Consume@cord_internal@absl@@YAXPEAUCordRep@12@V?$FunctionRef@$$A6AXPEAUCordRep@cord_internal@absl@@_K1@Z@2@@Z
?ConsumePrefix@absl@@YA_NPEAVstring_view@1@V21@@Z
?ConsumeUnboundConversion@str_format_internal@absl@@YAPEBDPEBD0PEAUUnboundConversion@12@PEAH@Z
@@ -1928,13 +1900,6 @@ EXPORTS
?FromUnixDuration@time_internal@absl@@YA?AVTime@2@VDuration@2@@Z
?FromUnixSeconds@cctz@time_internal@absl@@YA?AV?$time_point@Vsystem_clock@chrono@__1@std@@V?$duration@_JV?$ratio@$00$00@__1@std@@@234@@chrono@__1@std@@_J@Z
?Get@RefcountAndFlags@cord_internal@absl@@QEBAHXZ
- ?GetAllocPtr@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@H@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBAPEBV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAPEAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAllocatedCapacity@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
?GetAllocatedCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
?GetAllocatedCapacity@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBA_KXZ
@@ -1953,6 +1918,13 @@ EXPORTS
?GetAllocator@?$AllocationTransaction@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@USubRange@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@H@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEAUCordRep@cord_internal@absl@@$01V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PEBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QEBAAEBV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QEAAAEAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAppendBuffer@CordRepBtree@cord_internal@absl@@QEAA?AV?$Span@D@3@_K@Z
?GetAppendBuffer@CordRepRing@cord_internal@absl@@QEAA?AV?$Span@D@3@_K@Z
?GetAppendBufferSlow@CordRepBtree@cord_internal@absl@@AEAA?AV?$Span@D@3@_K@Z
@@ -2904,19 +2876,17 @@ EXPORTS
?allocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QEAAPEAUTransitionType@cctz@time_internal@absl@@_K@Z
?allocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAPEAUViableSubstitution@strings_internal@absl@@_K@Z
?allocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QEAAPEAVFormatArgImpl@str_format_internal@absl@@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAPEAHAEAV?$allocator@H@__1@std@@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAPEAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@AEAV?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAUCordRep@cord_internal@absl@@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPEAPEAUCordRep@cord_internal@2@AEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEAVCordzHandle@cord_internal@absl@@AEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPEAPEBUCordRep@cord_internal@2@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBUCordRep@cord_internal@absl@@AEAV?$allocator@PEBUCordRep@cord_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBVCordzHandle@cord_internal@absl@@AEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@AEAV?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAPEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@23@AEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAPEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@AEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAPEAUPayload@status_internal@2@AEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@_K@Z
- ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAPEAUSubRange@2@AEAV?$allocator@USubRange@absl@@@__1@std@@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAPEAUPayload@status_internal@absl@@AEAV?$allocator@UPayload@status_internal@absl@@@23@_K@Z
+ ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAPEAUSubRange@absl@@AEAV?$allocator@USubRange@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAUTransition@cctz@time_internal@absl@@AEAV?$allocator@UTransition@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPEAUTransitionType@cctz@time_internal@absl@@AEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@_K@Z
?allocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAPEAUViableSubstitution@strings_internal@absl@@AEAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@_K@Z
@@ -3090,19 +3060,17 @@ EXPORTS
?deallocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QEAAXPEAUTransitionType@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QEAAXPEAUViableSubstitution@strings_internal@absl@@_K@Z
?deallocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QEAAXPEAVFormatArgImpl@str_format_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAEAV?$allocator@H@__1@std@@PEAH_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@@23@PEAPEAPEBVImpl@time_zone@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@23@PEAPEAU?$__hash_node_base@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@23@PEAPEAUCordRep@cord_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEAUCordRep@cord_internal@absl@@@__1@std@@PEAPEAUCordRep@cord_internal@2@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEAVCordzHandle@cord_internal@absl@@@23@PEAPEAVCordzHandle@cord_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@PEAPEBUCordRep@cord_internal@2@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@PEBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBUCordRep@cord_internal@absl@@@23@PEAPEBUCordRep@cord_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVCordzHandle@cord_internal@absl@@@23@PEAPEBVCordzHandle@cord_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@PEBVImpl@time_zone@cctz@time_internal@absl@@@23@PEAPEBVImpl@time_zone@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@__1@std@@@__1@std@@SAXAEAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@__1@std@@@23@PEAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PEBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PEAX@23@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@PEAUConversionItem@ParsedFormatBase@str_format_internal@absl@@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PEAUPayload@status_internal@2@_K@Z
- ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAEAV?$allocator@USubRange@absl@@@__1@std@@PEAUSubRange@2@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UPayload@status_internal@absl@@@23@PEAUPayload@status_internal@absl@@_K@Z
+ ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@USubRange@absl@@@23@PEAUSubRange@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransition@cctz@time_internal@absl@@@23@PEAUTransition@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@PEAUTransitionType@cctz@time_internal@absl@@_K@Z
?deallocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAEAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@PEAUViableSubstitution@strings_internal@absl@@_K@Z
diff --git a/third_party/abseil-cpp/symbols_x86_dbg.def b/third_party/abseil-cpp/symbols_x86_dbg.def
index ab42b5626c..5641446b8c 100644
--- a/third_party/abseil-cpp/symbols_x86_dbg.def
+++ b/third_party/abseil-cpp/symbols_x86_dbg.def
@@ -260,25 +260,25 @@ EXPORTS
??$ArgumentToConv@_J@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_K@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
??$ArgumentToConv@_N@str_format_internal@absl@@YA?AW4FormatConversionCharSet@1@XZ
- ??$AssignElements@PAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@3@I@inlined_vector_internal@absl@@YAXPAUPayload@status_internal@1@PAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@01@I@Z
+ ??$AssignElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXPAUPayload@status_internal@1@AAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@01@I@Z
??$Base64EscapeInternal@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@strings_internal@absl@@YAXPBEIPAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@_NPBD@Z
??$CallOnceImpl@A6AXXZ$$V@base_internal@absl@@YAXPAU?$atomic@I@__1@std@@W4SchedulingMode@01@A6AXXZ@Z
??$CastAndCallFunction@$$CBU?$atomic@_N@__1@std@@@Condition@absl@@CA_NPBV01@@Z
??$CastAndCallFunction@USynchEvent@absl@@@Condition@absl@@CA_NPBV01@@Z
??$Compare@$0FE@$0FE@@strings_internal@absl@@YAHABV?$BigUnsigned@$0FE@@01@0@Z
- ??$ConstructElements@V?$allocator@H@__1@std@@PAHV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@inlined_vector_internal@absl@@I@inlined_vector_internal@absl@@YAXPAV?$allocator@H@__1@std@@PAHPAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@01@I@Z
- ??$ConstructElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@absl@@V?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@6@I@inlined_vector_internal@absl@@YAXPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@PAV?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@01@I@Z
- ??$ConstructElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@I@inlined_vector_internal@absl@@YAXPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@PAV?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@01@I@Z
- ??$ConstructElements@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@absl@@V?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@6@I@inlined_vector_internal@absl@@YAXPAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@PAV?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@01@I@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@inlined_vector_internal@6@I@inlined_vector_internal@absl@@YAXPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@PAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@01@I@Z
- ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@absl@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@6@I@inlined_vector_internal@absl@@YAXPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@PAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@01@I@Z
- ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@absl@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@inlined_vector_internal@5@I@inlined_vector_internal@absl@@YAXPAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@PAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@01@I@Z
+ ??$ConstructElements@V?$allocator@H@__1@std@@V?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@H@__1@std@@PAHAAV?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@01@I@Z
+ ??$ConstructElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@AAV?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@01@I@Z
+ ??$ConstructElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@AAV?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@01@I@Z
+ ??$ConstructElements@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@AAV?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@01@I@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@AAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@01@I@Z
+ ??$ConstructElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@AAV?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@01@I@Z
+ ??$ConstructElements@V?$allocator@USubRange@absl@@@__1@std@@V?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@inlined_vector_internal@absl@@@inlined_vector_internal@absl@@YAXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@AAV?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@01@I@Z
??$Convert@VFormatArgImpl@str_format_internal@absl@@@FormatArgImplFriend@str_format_internal@absl@@SA_NVFormatArgImpl@12@VFormatConversionSpecImpl@12@PAVFormatSinkImpl@12@@Z
- ??$DestroyElements@V?$allocator@H@__1@std@@PAHI@inlined_vector_internal@absl@@YAXPAV?$allocator@H@__1@std@@PAHI@Z
- ??$DestroyElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@absl@@I@inlined_vector_internal@absl@@YAXPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@I@Z
- ??$DestroyElements@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@absl@@I@inlined_vector_internal@absl@@YAXPAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@I@Z
- ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@absl@@I@inlined_vector_internal@absl@@YAXPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@I@Z
- ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@absl@@I@inlined_vector_internal@absl@@YAXPAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@I@Z
+ ??$DestroyElements@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@YAXAAV?$allocator@H@__1@std@@PAHI@Z
+ ??$DestroyElements@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@I@Z
+ ??$DestroyElements@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@I@Z
+ ??$DestroyElements@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@I@Z
+ ??$DestroyElements@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@YAXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@I@Z
??$Dispatch@C@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PAX@Z
??$Dispatch@D@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PAX@Z
??$Dispatch@E@FormatArgImpl@str_format_internal@absl@@CA_NTData@012@VFormatConversionSpecImpl@12@PAX@Z
@@ -554,16 +554,11 @@ EXPORTS
??$__upper_bound@AAUByUnixTime@Transition@cctz@time_internal@absl@@PBU2345@U2345@@__1@std@@YAPBUTransition@cctz@time_internal@absl@@PBU2345@0ABU2345@AAUByUnixTime@2345@@Z
??$addressof@$$CBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPBU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@01@ABU201@@Z
??$addressof@$$CBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPBU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@01@ABU201@@Z
- ??$addressof@$$CBV?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPBV?$allocator@UPayload@status_internal@absl@@@01@ABV201@@Z
??$addressof@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAPAPBVImpl@time_zone@cctz@time_internal@absl@@AAPBV23456@@Z
??$addressof@QAUCordRep@cord_internal@absl@@@__1@std@@YAPBQAUCordRep@cord_internal@absl@@ABQAU234@@Z
??$addressof@U?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@YAPAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@01@AAU201@@Z
??$addressof@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPAU?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@01@AAU201@@Z
??$addressof@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@YAPAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@01@AAU201@@Z
- ??$addressof@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPAV?$allocator@PAUCordRep@cord_internal@absl@@@01@AAV201@@Z
- ??$addressof@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@YAPAV?$allocator@PBUCordRep@cord_internal@absl@@@01@AAV201@@Z
- ??$addressof@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@YAPAV?$allocator@UPayload@status_internal@absl@@@01@AAV201@@Z
- ??$addressof@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@YAPAV?$allocator@USubRange@absl@@@01@AAV201@@Z
??$advance@PBUTransition@cctz@time_internal@absl@@H@__1@std@@YAXAAPBUTransition@cctz@time_internal@absl@@H@Z
??$advance@PBVFormatArgImpl@str_format_internal@absl@@I@__1@std@@YAXAAPBVFormatArgImpl@str_format_internal@absl@@I@Z
??$assign@PBVFormatArgImpl@str_format_internal@absl@@@?$vector@VFormatArgImpl@str_format_internal@absl@@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@QAEXPBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -572,23 +567,20 @@ EXPORTS
??$bit_cast@_K_J$0A@@absl@@YA_KAB_J@Z
??$bit_width@I@absl@@YAII@Z
??$bit_width@_K@absl@@YA_K_K@Z
- ??$construct@HABH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAAV?$allocator@H@__1@std@@PAHABH@Z
- ??$construct@HH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAAV?$allocator@H@__1@std@@PAH$$QAH@Z
??$construct@PAPBVImpl@time_zone@cctz@time_internal@absl@@ABQAPBV12345@@?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QAEXPAPAPBVImpl@time_zone@cctz@time_internal@absl@@ABQAPBV34567@@Z
??$construct@PAPBVImpl@time_zone@cctz@time_internal@absl@@ABQAPBV12345@X@?$allocator_traits@V?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@12@PAPAPBVImpl@time_zone@cctz@time_internal@absl@@ABQAPBV45678@@Z
??$construct@PAPBVImpl@time_zone@cctz@time_internal@absl@@PAPBV12345@@?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QAEXPAPAPBVImpl@time_zone@cctz@time_internal@absl@@$$QAPAPBV34567@@Z
??$construct@PAPBVImpl@time_zone@cctz@time_internal@absl@@PAPBV12345@X@?$allocator_traits@V?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@12@PAPAPBVImpl@time_zone@cctz@time_internal@absl@@$$QAPAPBV45678@@Z
??$construct@PAUCordRep@cord_internal@absl@@ABQAU123@@?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@QAEXPAPAUCordRep@cord_internal@absl@@ABQAU345@@Z
- ??$construct@PAUCordRep@cord_internal@absl@@ABQAU123@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@ABQAU561@@Z
??$construct@PAUCordRep@cord_internal@absl@@ABQAU123@X@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@12@PAPAUCordRep@cord_internal@absl@@ABQAU456@@Z
??$construct@PAUCordRep@cord_internal@absl@@PAU123@@?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@QAEXPAPAUCordRep@cord_internal@absl@@$$QAPAU345@@Z
- ??$construct@PAUCordRep@cord_internal@absl@@PAU123@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@$$QAPAU561@@Z
+ ??$construct@PAUCordRep@cord_internal@absl@@PAU123@X@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@12@PAPAUCordRep@cord_internal@absl@@$$QAPAU456@@Z
??$construct@PAVCordzHandle@cord_internal@absl@@ABQAV123@@?$allocator@PAVCordzHandle@cord_internal@absl@@@__1@std@@QAEXPAPAVCordzHandle@cord_internal@absl@@ABQAV345@@Z
??$construct@PAVCordzHandle@cord_internal@absl@@ABQAV123@X@?$allocator_traits@V?$allocator@PAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAVCordzHandle@cord_internal@absl@@@12@PAPAVCordzHandle@cord_internal@absl@@ABQAV456@@Z
??$construct@PBUCordRep@cord_internal@absl@@ABQBU123@@?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@QAEXPAPBUCordRep@cord_internal@absl@@ABQBU345@@Z
- ??$construct@PBUCordRep@cord_internal@absl@@ABQBU123@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@ABQBU561@@Z
+ ??$construct@PBUCordRep@cord_internal@absl@@ABQBU123@X@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@12@PAPBUCordRep@cord_internal@absl@@ABQBU456@@Z
??$construct@PBUCordRep@cord_internal@absl@@PBU123@@?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@QAEXPAPBUCordRep@cord_internal@absl@@$$QAPBU345@@Z
- ??$construct@PBUCordRep@cord_internal@absl@@PBU123@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@$$QAPBU561@@Z
+ ??$construct@PBUCordRep@cord_internal@absl@@PBU123@X@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@12@PAPBUCordRep@cord_internal@absl@@$$QAPBU456@@Z
??$construct@PBVCordzHandle@cord_internal@absl@@ABQBV123@@?$allocator@PBVCordzHandle@cord_internal@absl@@@__1@std@@QAEXPAPBVCordzHandle@cord_internal@absl@@ABQBV345@@Z
??$construct@PBVCordzHandle@cord_internal@absl@@ABQBV123@X@?$allocator_traits@V?$allocator@PBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBVCordzHandle@cord_internal@absl@@@12@PAPBVCordzHandle@cord_internal@absl@@ABQBV456@@Z
??$construct@PBVImpl@time_zone@cctz@time_internal@absl@@ABQBV12345@@?$allocator@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@QAEXPAPBVImpl@time_zone@cctz@time_internal@absl@@ABQBV34567@@Z
@@ -598,11 +590,11 @@ EXPORTS
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@@?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@QAEXPAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QAU3456@@Z
??$construct@UConversionItem@ParsedFormatBase@str_format_internal@absl@@U1234@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PAUConversionItem@ParsedFormatBase@str_format_internal@absl@@$$QAU4567@@Z
??$construct@UPayload@status_internal@absl@@ABU123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QAEXPAUPayload@status_internal@absl@@ABU345@@Z
- ??$construct@UPayload@status_internal@absl@@ABU123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@ABU561@@Z
+ ??$construct@UPayload@status_internal@absl@@ABU123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UPayload@status_internal@absl@@@12@PAUPayload@status_internal@absl@@ABU456@@Z
??$construct@UPayload@status_internal@absl@@U123@@?$allocator@UPayload@status_internal@absl@@@__1@std@@QAEXPAUPayload@status_internal@absl@@$$QAU345@@Z
- ??$construct@UPayload@status_internal@absl@@U123@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@$$QAU561@@Z
+ ??$construct@UPayload@status_internal@absl@@U123@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UPayload@status_internal@absl@@@12@PAUPayload@status_internal@absl@@$$QAU456@@Z
??$construct@USubRange@absl@@U12@@?$allocator@USubRange@absl@@@__1@std@@QAEXPAUSubRange@absl@@$$QAU34@@Z
- ??$construct@USubRange@absl@@U12@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@$$QAU51@@Z
+ ??$construct@USubRange@absl@@U12@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@USubRange@absl@@@12@PAUSubRange@absl@@$$QAU45@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$V@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QAEXPAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@$$VX@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PAUTransition@cctz@time_internal@absl@@@Z
??$construct@UTransition@cctz@time_internal@absl@@ABU1234@@?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@QAEXPAUTransition@cctz@time_internal@absl@@ABU3456@@Z
@@ -616,39 +608,23 @@ EXPORTS
??$construct@UViableSubstitution@strings_internal@absl@@AAVstring_view@3@ABV43@AAI@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QAEXPAUViableSubstitution@strings_internal@absl@@AAVstring_view@5@ABV65@AAI@Z
??$construct@UViableSubstitution@strings_internal@absl@@AAVstring_view@3@ABV43@AAIX@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PAUViableSubstitution@strings_internal@absl@@AAVstring_view@6@ABV76@AAI@Z
??$construct@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@?$optional_data_base@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@optional_internal@absl@@IAEX$$QAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AAPAHABH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAAV?$allocator@H@__1@std@@AAPAHABH@Z
- ??$construct_impl@V?$allocator@H@__1@std@@AAPAHH@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAAV?$allocator@H@__1@std@@AAPAH$$QAH@Z
- ??$construct_impl@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@AAPAPAUCordRep@cord_internal@absl@@ABQAU456@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@AAPAPAUCordRep@cord_internal@1@ABQAU561@@Z
- ??$construct_impl@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@AAPAPAUCordRep@cord_internal@absl@@PAU456@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@AAPAPAUCordRep@cord_internal@1@$$QAPAU561@@Z
- ??$construct_impl@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@AAPAPBUCordRep@cord_internal@absl@@ABQBU456@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@AAPAPBUCordRep@cord_internal@1@ABQBU561@@Z
- ??$construct_impl@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@AAPAPBUCordRep@cord_internal@absl@@PBU456@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@AAPAPBUCordRep@cord_internal@1@$$QAPBU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AAPAUPayload@status_internal@absl@@ABU456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AAPAUPayload@status_internal@1@ABU561@@Z
- ??$construct_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@AAPAUPayload@status_internal@absl@@U456@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@AAPAUPayload@status_internal@1@$$QAU561@@Z
- ??$construct_impl@V?$allocator@USubRange@absl@@@__1@std@@AAPAUSubRange@absl@@U45@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@USubRange@absl@@@__1@std@@AAPAUSubRange@1@$$QAU51@@Z
??$copy@PBVFormatArgImpl@str_format_internal@absl@@PAV123@@__1@std@@YAPAVFormatArgImpl@str_format_internal@absl@@PBV234@0PAV234@@Z
??$countl_zero@I@absl@@YAHI@Z
??$countl_zero@_K@absl@@YAH_K@Z
??$countr_zero@I@absl@@YAHI@Z
- ??$destroy@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAAV?$allocator@H@__1@std@@PAH@Z
??$destroy@PAPBVImpl@time_zone@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@12@PAPAPBVImpl@time_zone@cctz@time_internal@absl@@@Z
- ??$destroy@PAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@@Z
??$destroy@PAUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@12@PAPAUCordRep@cord_internal@absl@@@Z
??$destroy@PAVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAVCordzHandle@cord_internal@absl@@@12@PAPAVCordzHandle@cord_internal@absl@@@Z
- ??$destroy@PBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@@Z
+ ??$destroy@PBUCordRep@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@12@PAPBUCordRep@cord_internal@absl@@@Z
??$destroy@PBVCordzHandle@cord_internal@absl@@X@?$allocator_traits@V?$allocator@PBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBVCordzHandle@cord_internal@absl@@@12@PAPBVCordzHandle@cord_internal@absl@@@Z
??$destroy@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@XX@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@SAXAAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@12@PAU?$pair@$$CBV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@12@@Z
??$destroy@UConversionItem@ParsedFormatBase@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@12@PAUConversionItem@ParsedFormatBase@str_format_internal@absl@@@Z
- ??$destroy@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@@Z
- ??$destroy@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@@Z
+ ??$destroy@UPayload@status_internal@absl@@X@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UPayload@status_internal@absl@@@12@PAUPayload@status_internal@absl@@@Z
+ ??$destroy@USubRange@absl@@X@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@USubRange@absl@@@12@PAUSubRange@absl@@@Z
??$destroy@UTransition@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UTransition@cctz@time_internal@absl@@@12@PAUTransition@cctz@time_internal@absl@@@Z
??$destroy@UTransitionType@cctz@time_internal@absl@@X@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UTransitionType@cctz@time_internal@absl@@@12@PAUTransitionType@cctz@time_internal@absl@@@Z
??$destroy@UViableSubstitution@strings_internal@absl@@X@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UViableSubstitution@strings_internal@absl@@@12@PAUViableSubstitution@strings_internal@absl@@@Z
??$destroy@VFormatArgImpl@str_format_internal@absl@@X@?$allocator_traits@V?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@VFormatArgImpl@str_format_internal@absl@@@12@PAVFormatArgImpl@str_format_internal@absl@@@Z
- ??$destroy_impl@V?$allocator@H@__1@std@@H@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@CAXHAAV?$allocator@H@__1@std@@PAH@Z
- ??$destroy_impl@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PBUCordRep@cord_internal@absl@@@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@1@@Z
- ??$destroy_impl@V?$allocator@UPayload@status_internal@absl@@@__1@std@@UPayload@status_internal@absl@@@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@1@@Z
- ??$destroy_impl@V?$allocator@USubRange@absl@@@__1@std@@USubRange@absl@@@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@CAXHAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@1@@Z
??$distance@PBUPayload@status_internal@absl@@@__1@std@@YAHPBUPayload@status_internal@absl@@0@Z
??$distance@PBUTransition@cctz@time_internal@absl@@@__1@std@@YAHPBUTransition@cctz@time_internal@absl@@0@Z
??$distance@PBVFormatArgImpl@str_format_internal@absl@@@__1@std@@YAHPBVFormatArgImpl@str_format_internal@absl@@0@Z
@@ -671,12 +647,8 @@ EXPORTS
??$find_first_non_full@X@container_internal@absl@@YA?AUFindInfo@01@PBW4ctrl_t@01@II@Z
??$forward@$$T@absl@@YA$$QA$$TAA$$T@Z
??$forward@AAI@absl@@YAAAIAAI@Z
- ??$forward@AAPAPAUCordRep@cord_internal@absl@@@__1@std@@YAAAPAPAUCordRep@cord_internal@absl@@AAPAPAU234@@Z
- ??$forward@AAPAPBUCordRep@cord_internal@absl@@@__1@std@@YAAAPAPBUCordRep@cord_internal@absl@@AAPAPBU234@@Z
??$forward@AAPAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@YAAAPAPBVImpl@time_zone@cctz@time_internal@absl@@AAPAPBV23456@@Z
??$forward@AAPAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@YAAAPAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@01@AAPAU201@@Z
- ??$forward@AAPAUPayload@status_internal@absl@@@__1@std@@YAAAPAUPayload@status_internal@absl@@AAPAU234@@Z
- ??$forward@AAPAUSubRange@absl@@@__1@std@@YAAAPAUSubRange@absl@@AAPAU23@@Z
??$forward@AAPAUThreadIdentity@base_internal@absl@@@__1@std@@YAAAPAUThreadIdentity@base_internal@absl@@AAPAU234@@Z
??$forward@AAPAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@@__1@std@@YAAAPAV?$InlinedVector@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@AAPAV23@@Z
??$forward@AAPAVTimeZoneIf@cctz@time_internal@absl@@@__1@std@@YAAAPAVTimeZoneIf@cctz@time_internal@absl@@AAPAV2345@@Z
@@ -837,11 +809,11 @@ EXPORTS
??$swap@UViableSubstitution@strings_internal@absl@@@__1@std@@YAXAAUViableSubstitution@strings_internal@absl@@0@Z
??$upper_bound@PBUTransition@cctz@time_internal@absl@@U1234@UByCivilTime@1234@@__1@std@@YAPBUTransition@cctz@time_internal@absl@@PBU2345@0ABU2345@UByCivilTime@2345@@Z
??$upper_bound@PBUTransition@cctz@time_internal@absl@@U1234@UByUnixTime@1234@@__1@std@@YAPBUTransition@cctz@time_internal@absl@@PBU2345@0ABU2345@UByUnixTime@2345@@Z
- ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAE@PAV?$allocator@H@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@PAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@PAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@PAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
- ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@PAV?$allocator@USubRange@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAE@AAV?$allocator@H@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@AAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@AAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@AAV?$allocator@UPayload@status_internal@absl@@@__1@std@@@Z
+ ??0?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@AAV?$allocator@USubRange@absl@@@__1@std@@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QAE@Vstring_view@2@@Z
??0?$BigUnsigned@$03@strings_internal@absl@@QAE@XZ
??0?$BigUnsigned@$03@strings_internal@absl@@QAE@_K@Z
@@ -849,7 +821,7 @@ EXPORTS
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QAE@XZ
??0?$BigUnsigned@$0FE@@strings_internal@absl@@QAE@_K@Z
??0?$BitMask@I$0BA@$0A@@container_internal@absl@@QAE@I@Z
- ??0?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@ABQAUCordRep@cord_internal@2@@Z
+ ??0?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAE@PBQAUCordRep@cord_internal@2@@Z
??0?$FixedArray@PAUCordRep@cord_internal@absl@@$0PPPPPPPP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QAE@IABV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@Z
??0?$InlinedVector@H$0CP@V?$allocator@H@__1@std@@@absl@@QAE@XZ
??0?$InlinedVector@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@QAE@XZ
@@ -1548,12 +1520,12 @@ EXPORTS
?AbslParseFlag@absl@@YA_NVstring_view@1@PAVTime@1@PAV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VDuration@1@@Z
?AbslUnparseFlag@absl@@YA?AV?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@VTime@1@@Z
- ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@PBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
- ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@H@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@PBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@23@@Z
+ ?AcquireAllocatedData@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@23@@Z
?Add@Filler@CordRepRing@cord_internal@absl@@QAEXPAUCordRep@34@II@Z
?AddDataOffset@CordRepRing@cord_internal@absl@@AAEXII@Z
?AddNode@CordForest@absl@@AAEXPAUCordRep@cord_internal@2@@Z
@@ -1681,13 +1653,13 @@ EXPORTS
?ComputeCapacity@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SAIII@Z
?ComputeCapacity@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@SAIII@Z
?ConcatNodes@CordForest@absl@@QAEPAUCordRep@cord_internal@2@XZ
- ?ConstructNext@?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@inlined_vector_internal@absl@@QAEXPAV?$allocator@H@__1@std@@PAH@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXPAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QAEXPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@3@@Z
- ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QAEXPAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@3@@Z
+ ?ConstructNext@?$CopyValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@H@__1@std@@V?$move_iterator@PAH@23@@inlined_vector_internal@absl@@QAEXAAV?$allocator@H@__1@std@@PAH@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPAUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@V?$move_iterator@PAPBUCordRep@cord_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@PBUPayload@status_internal@absl@@@inlined_vector_internal@absl@@QAEXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@UPayload@status_internal@absl@@@__1@std@@V?$move_iterator@PAUPayload@status_internal@absl@@@23@@inlined_vector_internal@absl@@QAEXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@3@@Z
+ ?ConstructNext@?$IteratorValueAdapter@V?$allocator@USubRange@absl@@@__1@std@@V?$move_iterator@PAUSubRange@absl@@@23@@inlined_vector_internal@absl@@QAEXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@3@@Z
?Consume@cord_internal@absl@@YAXPAUCordRep@12@V?$FunctionRef@$$A6AXPAUCordRep@cord_internal@absl@@II@Z@2@@Z
?ConsumePrefix@absl@@YA_NPAVstring_view@1@V21@@Z
?ConsumeUnboundConversion@str_format_internal@absl@@YAPBDPBD0PAUUnboundConversion@12@PAH@Z
@@ -1922,13 +1894,6 @@ EXPORTS
?FromUnixDuration@time_internal@absl@@YA?AVTime@2@VDuration@2@@Z
?FromUnixSeconds@cctz@time_internal@absl@@YA?AV?$time_point@Vsystem_clock@chrono@__1@std@@V?$duration@_JV?$ratio@$00$00@__1@std@@@234@@chrono@__1@std@@_J@Z
?Get@RefcountAndFlags@cord_internal@absl@@QBEHXZ
- ?GetAllocPtr@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@H@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@PBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QBEPBV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
- ?GetAllocPtr@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEPAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAllocatedCapacity@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QBEIXZ
?GetAllocatedCapacity@?$Storage@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QBEIXZ
?GetAllocatedCapacity@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QBEIXZ
@@ -1947,6 +1912,13 @@ EXPORTS
?GetAllocator@?$AllocationTransaction@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
?GetAllocator@?$AllocationTransaction@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@USubRange@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@H$0CP@V?$allocator@H@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@H@__1@std@@XZ
+ ?GetAllocator@?$Storage@PAUCordRep@cord_internal@absl@@$01V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PAUCordRep@cord_internal@absl@@$0CP@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@PBUCordRep@cord_internal@absl@@$0CP@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@UPayload@status_internal@absl@@$00V?$allocator@UPayload@status_internal@absl@@@__1@std@@@inlined_vector_internal@absl@@QBEABV?$allocator@UPayload@status_internal@absl@@@__1@std@@XZ
+ ?GetAllocator@?$Storage@USubRange@absl@@$0CP@V?$allocator@USubRange@absl@@@__1@std@@@inlined_vector_internal@absl@@QAEAAV?$allocator@USubRange@absl@@@__1@std@@XZ
?GetAppendBuffer@CordRepBtree@cord_internal@absl@@QAE?AV?$Span@D@3@I@Z
?GetAppendBuffer@CordRepRing@cord_internal@absl@@QAE?AV?$Span@D@3@I@Z
?GetAppendBufferSlow@CordRepBtree@cord_internal@absl@@AAE?AV?$Span@D@3@I@Z
@@ -2898,19 +2870,17 @@ EXPORTS
?allocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QAEPAUTransitionType@cctz@time_internal@absl@@I@Z
?allocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QAEPAUViableSubstitution@strings_internal@absl@@I@Z
?allocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QAEPAVFormatArgImpl@str_format_internal@absl@@I@Z
- ?allocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAPAHAAV?$allocator@H@__1@std@@I@Z
?allocate@?$allocator_traits@V?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPAPAPBVImpl@time_zone@cctz@time_internal@absl@@AAV?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@PAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAPAPAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@23@AAV?$allocator@PAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPAPAUCordRep@cord_internal@absl@@AAV?$allocator@PAUCordRep@cord_internal@absl@@@23@I@Z
- ?allocate@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPAPAUCordRep@cord_internal@2@AAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@I@Z
?allocate@?$allocator_traits@V?$allocator@PAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPAPAVCordzHandle@cord_internal@absl@@AAV?$allocator@PAVCordzHandle@cord_internal@absl@@@23@I@Z
- ?allocate@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAPAPBUCordRep@cord_internal@2@AAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@I@Z
+ ?allocate@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAPAPBUCordRep@cord_internal@absl@@AAV?$allocator@PBUCordRep@cord_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@PBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAPAPBVCordzHandle@cord_internal@absl@@AAV?$allocator@PBVCordzHandle@cord_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPAPBVImpl@time_zone@cctz@time_internal@absl@@AAV?$allocator@PBVImpl@time_zone@cctz@time_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@SAPAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@23@AAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAPAUConversionItem@ParsedFormatBase@str_format_internal@absl@@AAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@I@Z
- ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAPAUPayload@status_internal@2@AAV?$allocator@UPayload@status_internal@absl@@@__1@std@@I@Z
- ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAPAUSubRange@2@AAV?$allocator@USubRange@absl@@@__1@std@@I@Z
+ ?allocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAPAUPayload@status_internal@absl@@AAV?$allocator@UPayload@status_internal@absl@@@23@I@Z
+ ?allocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAPAUSubRange@absl@@AAV?$allocator@USubRange@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPAUTransition@cctz@time_internal@absl@@AAV?$allocator@UTransition@cctz@time_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAPAUTransitionType@cctz@time_internal@absl@@AAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@I@Z
?allocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAPAUViableSubstitution@strings_internal@absl@@AAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@I@Z
@@ -3084,19 +3054,17 @@ EXPORTS
?deallocate@?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@QAEXPAUTransitionType@cctz@time_internal@absl@@I@Z
?deallocate@?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@QAEXPAUViableSubstitution@strings_internal@absl@@I@Z
?deallocate@?$allocator@VFormatArgImpl@str_format_internal@absl@@@__1@std@@QAEXPAVFormatArgImpl@str_format_internal@absl@@I@Z
- ?deallocate@?$allocator_traits@V?$allocator@H@__1@std@@@absl@@SAXAAV?$allocator@H@__1@std@@PAHI@Z
?deallocate@?$allocator_traits@V?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAPBVImpl@time_zone@cctz@time_internal@absl@@@23@PAPAPBVImpl@time_zone@cctz@time_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@PAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@23@PAPAU?$__hash_node_base@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@23@I@Z
?deallocate@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@23@PAPAUCordRep@cord_internal@absl@@I@Z
- ?deallocate@?$allocator_traits@V?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PAUCordRep@cord_internal@absl@@@__1@std@@PAPAUCordRep@cord_internal@2@I@Z
?deallocate@?$allocator_traits@V?$allocator@PAVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PAVCordzHandle@cord_internal@absl@@@23@PAPAVCordzHandle@cord_internal@absl@@I@Z
- ?deallocate@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@PAPBUCordRep@cord_internal@2@I@Z
+ ?deallocate@?$allocator_traits@V?$allocator@PBUCordRep@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBUCordRep@cord_internal@absl@@@23@PAPBUCordRep@cord_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@PBVCordzHandle@cord_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBVCordzHandle@cord_internal@absl@@@23@PAPBVCordzHandle@cord_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@PBVImpl@time_zone@cctz@time_internal@absl@@@23@PAPBVImpl@time_zone@cctz@time_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@__1@std@@@__1@std@@SAXAAV?$allocator@U?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@__1@std@@@23@PAU?$__hash_node@U?$__hash_value_type@V?$basic_string@DU?$char_traits@D@__1@std@@V?$allocator@D@23@@__1@std@@PBVImpl@time_zone@cctz@time_internal@absl@@@__1@std@@PAX@23@I@Z
?deallocate@?$allocator_traits@V?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UConversionItem@ParsedFormatBase@str_format_internal@absl@@@23@PAUConversionItem@ParsedFormatBase@str_format_internal@absl@@I@Z
- ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@absl@@SAXAAV?$allocator@UPayload@status_internal@absl@@@__1@std@@PAUPayload@status_internal@2@I@Z
- ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@absl@@SAXAAV?$allocator@USubRange@absl@@@__1@std@@PAUSubRange@2@I@Z
+ ?deallocate@?$allocator_traits@V?$allocator@UPayload@status_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UPayload@status_internal@absl@@@23@PAUPayload@status_internal@absl@@I@Z
+ ?deallocate@?$allocator_traits@V?$allocator@USubRange@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@USubRange@absl@@@23@PAUSubRange@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@UTransition@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UTransition@cctz@time_internal@absl@@@23@PAUTransition@cctz@time_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@UTransitionType@cctz@time_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UTransitionType@cctz@time_internal@absl@@@23@PAUTransitionType@cctz@time_internal@absl@@I@Z
?deallocate@?$allocator_traits@V?$allocator@UViableSubstitution@strings_internal@absl@@@__1@std@@@__1@std@@SAXAAV?$allocator@UViableSubstitution@strings_internal@absl@@@23@PAUViableSubstitution@strings_internal@absl@@I@Z
diff --git a/util/BUILD.gn b/util/BUILD.gn
index d2019244fd..5f3ff328fb 100644
--- a/util/BUILD.gn
+++ b/util/BUILD.gn
@@ -153,7 +153,7 @@ angle_source_set("angle_util_loader") {
]
}
-if (angle_has_rapidjson) {
+if (angle_has_frame_capture) {
angle_source_set("angle_frame_capture_test_utils") {
testonly = true
sources = [