)]}'
{
  "log": [
    {
      "commit": "a726d913bcd1a71b1fe2d5b0d70016e8100914df",
      "tree": "6e6ad55f320c8ef2c62dce3ae33ca769e9f105ad",
      "parents": [
        "b47576017396a02a357e513d9afda4d652b32600"
      ],
      "author": {
        "name": "Fabrice de Gans",
        "email": "Steelskin@users.noreply.github.com",
        "time": "Thu Jun 11 09:48:04 2026 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Jun 11 02:50:52 2026 -0700"
      },
      "message": "[Demangle] Guard DEMANGLE_ABI and add missing annotation (#202920)\n\nThis updates the DEMANGLE_ABI annotation to only be defined if it is not\nalready defined. This is required to parse the Demangle headers with the\nids-check script.\nIn addition, this adds one missing DEMANGLE_ABI annotation.\n\nThis effort is tracked in #109483.\n\nGitOrigin-RevId: 8210a58044d1e6d86473fdf810396d285c86ff36\n"
    },
    {
      "commit": "b47576017396a02a357e513d9afda4d652b32600",
      "tree": "0c40ffd89faa4a555837c6687c25955ea7db23f5",
      "parents": [
        "bffb2dee65f9b350545d20e1be4e64b3106830b1"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Wed Jun 10 10:37:56 2026 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jun 10 01:41:12 2026 -0700"
      },
      "message": "[libc++] Fill in Apple availability for LLVM 21 (#202347)\n\nmacOS 26.4 and aligned platforms have been released and they are roughly\nsynchronized to libc++ 21. As a drive-by, also add missing versions for\nprevious releases.\n\nThis also allows reverting #199682 which moved an XFAIL to UNSUPPORTED\nto silence CI failures temporarily.\n\nGitOrigin-RevId: d602a9343a0e5db98548e360370cebb02bfd421c\n"
    },
    {
      "commit": "bffb2dee65f9b350545d20e1be4e64b3106830b1",
      "tree": "c1c81d8c28d61314462d88cf6f559065f6ba89ce",
      "parents": [
        "51a59d7bb7ae40650b41cc59d8aa8d99de423044"
      ],
      "author": {
        "name": "Corentin Jabot",
        "email": "corentinjabot@gmail.com",
        "time": "Fri May 15 16:50:30 2026 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 07:56:10 2026 -0700"
      },
      "message": "[Clang] Mangling of pack indexing type and expression for itanium (#123513)\n\nSee  https://github.com/itanium-cxx-abi/cxx-abi/pull/198\nand #112003\n\nGitOrigin-RevId: 68e8dd698dc6ac96f26d9144bd3117f2bc6bca49\n"
    },
    {
      "commit": "51a59d7bb7ae40650b41cc59d8aa8d99de423044",
      "tree": "0b41d3f93f344ed86c7d59eba12a99535cdff4f7",
      "parents": [
        "9ec73b8fbfe9ce60ecfd08b6dd692cf9d7a10eec"
      ],
      "author": {
        "name": "Jackson Stogel",
        "email": "jtstogel@gmail.com",
        "time": "Wed Apr 29 08:28:57 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 08:30:19 2026 -0700"
      },
      "message": "[libc++abi][libc][test] Use LLVM-libc headers in LLVM-libc config (#194665)\n\nGitOrigin-RevId: f78419c36b24b8f5fbf2fef94880e8fab0f355e4\n"
    },
    {
      "commit": "9ec73b8fbfe9ce60ecfd08b6dd692cf9d7a10eec",
      "tree": "1336287316c0cbbea97034b8acbcaa4cda21e739",
      "parents": [
        "340d6b50a483033b7da733c04723f0c58424c974"
      ],
      "author": {
        "name": "Khem Raj",
        "email": "khem.raj@oss.qualcomm.com",
        "time": "Mon Apr 27 00:35:24 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 00:41:13 2026 -0700"
      },
      "message": "libcxxabi: declare __gnu_unwind_frame in cxa_personality (#189787)\n\nARM EHABI builds of libcxxabi fail with clang-22+ because\ncxa_personality.cpp calls __gnu_unwind_frame without a visible\ndeclaration, triggering:\n\n  error: use of undeclared identifier \u0027__gnu_unwind_frame\u0027\n\nAdd an extern \"C\" forward declaration before the EHABI unwind helper so\nthe source compiles correctly.\n\nSigned-off-by: Khem Raj \u003ckhem.raj@oss.qualcomm.com\u003e\nGitOrigin-RevId: 8119f1854948b50358bbfaea08f207f51970f06c\n"
    },
    {
      "commit": "340d6b50a483033b7da733c04723f0c58424c974",
      "tree": "80969951bb6ec66d80b9a2da0041c063878c1052",
      "parents": [
        "cbfd95b26e5c9597bafbe7260e04e219bceabe47"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Thu Apr 23 10:15:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 10:20:55 2026 -0700"
      },
      "message": "[libcxx] Add Testing Configuration for LLVM libc\n\nThis patch adds a CMake cache, and the testing configs to build libc++\nand run the tests against LLVM libc.\n\nReviewers: ldionne, philnik777, jtstogel\n\nPull Request: https://github.com/llvm/llvm-project/pull/165120\n\nGitOrigin-RevId: f650fba569c41637bf7bec8ed0e89bbb13bf3812\n"
    },
    {
      "commit": "cbfd95b26e5c9597bafbe7260e04e219bceabe47",
      "tree": "59da0aafd2939b97b2a53aaa6088757112765bdc",
      "parents": [
        "68282ed08d373233218c3d564e2182bb4e08aabd"
      ],
      "author": {
        "name": "Marco Elver",
        "email": "elver@google.com",
        "time": "Wed Apr 22 17:57:30 2026 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 09:01:15 2026 -0700"
      },
      "message": "[ItaniumDemangle] Strip __alloc_token_ to transparently demangle allocation functions (#191048)\n\nUpdate the Itanium demangler to recognize and strip `__alloc_token_`\nprefixes introduced by AllocToken instrumentation [1]. This ensures that\ninstrumented allocation functions (e.g., `__alloc_token__Znwm`) demangle\nback to their original source-level names (e.g., `operator new(unsigned\nlong)`) with a suffix `(.alloc_token)` indicating their non-standard\norigin.\n\nSince AllocToken is intended to be transparent to users who continue to\nuse `operator new` as before, the demangled name should reflect this\nreality instead of confusing users with internal instrumentation names\nin stack traces or symbolization output.\n\nSynchronize changes across llvm and libcxxabi copies.\n\n[1] https://clang.llvm.org/docs/AllocToken.html\n\nOriginal RFC: https://discourse.llvm.org/t/rfc-a-framework-for-allocator-partitioning-hints/87434\n\nGitOrigin-RevId: fb6f1bde00c4ed3650bd1152607718a95ca0ce6d\n"
    },
    {
      "commit": "68282ed08d373233218c3d564e2182bb4e08aabd",
      "tree": "5bf2de50e18447345a34ab2389264d3919da895b",
      "parents": [
        "0205a4dc0342cb23cc022ab25b2e99c71fa34840"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Mon Apr 20 16:08:36 2026 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 20 07:11:37 2026 -0700"
      },
      "message": "[libc++] Update to Clang 21 as the oldest supported version (#186062)\n\nGitOrigin-RevId: 5d98f79f52dd56750e826eb6efcd8b5cf41de239\n"
    },
    {
      "commit": "0205a4dc0342cb23cc022ab25b2e99c71fa34840",
      "tree": "509e71622f19c5e488780b93406c2f0e4ea99364",
      "parents": [
        "7f223a87dea1c9194c82b4dd20af6bb1f879655d"
      ],
      "author": {
        "name": "Michael Kruse",
        "email": "llvm-project@meinersbur.de",
        "time": "Thu Apr 02 12:32:14 2026 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 02 03:35:03 2026 -0700"
      },
      "message": "[Runtimes] Introduce variables containing resource dir paths (#177953)\n\nIntroduce common infrastructure for runtimes that determines compiler\nresource path locations. These variables introduced are:\n\n * RUNTIMES_OUTPUT_RESOURCE_DIR\n * RUNTIMES_INSTALL_RESOURCE_PATH\n\nThat contain the location for the compiler resource path (typically\n`lib/clang/\u003cversion\u003e`) in the build tree and the install tree (the\nlatter relative to CMAKE_INSTALL_PREFIX).\n\nAdditionally, define\n\n * RUNTIMES_OUTPUT_RESOURCE_LIB_DIR\n * RUNTIMES_INSTALL_RESOURCE_LIB_PATH\n\nas for the location of clang/flang version-locked libraries (typically\n`lib${LLVM_LIBDIR_SUFFIX}/\u003ctarger-triple\u003e`, but also depends on `APPLE`\nand `LLVM_ENABLE_PER_TARGET_RUNTIME_DIR`). This code is moved from\nflang-rt and initially becomes its only user.\n\nRefactored out of #171610 as requested\n[here](https://github.com/llvm/llvm-project/pull/171610#discussion_r2687382481).\n\nExtracted `get_runtimes_target_libdir_common` from compiler-rt as\nrequested\n[here](https://github.com/llvm/llvm-project/pull/171610#discussion_r2689565634).\n\nAdded TODO comments to all runtimes as requested\n[here](https://github.com/llvm/llvm-project/pull/171610#issuecomment-3789598635).\n\nGitOrigin-RevId: afb80bddf147c134c5e3cf3f357f8d00bdfd526c\n"
    },
    {
      "commit": "7f223a87dea1c9194c82b4dd20af6bb1f879655d",
      "tree": "fbfa82be1b781ce7d9db7b3c133c437e26ef81cd",
      "parents": [
        "8fba8aabfc20a4b7e420946b0b58816adeb3b9ec"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Wed Mar 25 15:51:35 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Mar 25 15:54:56 2026 -0700"
      },
      "message": "Prepare libcxx and libcxxabi for pointer field protection.\n\nPointer field protection has the following characteristics:\n\n- Pointer fields in RTTI types are unsigned. Signing these fields\n  is unnecessary because PFP is a mechanism for protecting the heap,\n  and the RTTI objects typically live in global variables. Therefore,\n  mark the fields with the no_field_protection to inhibit PFP for these\n  fields.\n\n- libcxx\u0027s interim trivial relocatability implementation, which memcpy\u0027s\n  some non-trivially-copyable objects according to the value of a trait,\n  conflicts with PFP in tagged mode (in which the address of the pointer\n  is used as part of the pointer encoding) by causing such copies to\n  result in a crash in some cases where the object being copied includes\n  a pointer field. These copies are undefined behavior. Therefore, make\n  libcxx\u0027s trivially relocatable predicate simply return the value of\n  the trivially copyable trait when PFP in tagged mode is enabled, which\n  results in standards compliant behavior that is accommodated by PFP.\n\nReviewers: philnik777, fmayer, ldionne\n\nPull Request: https://github.com/llvm/llvm-project/pull/151651\n\nGitOrigin-RevId: f3274a496c7f80ff95170c1f78fdad48f95e67bd\n"
    },
    {
      "commit": "8fba8aabfc20a4b7e420946b0b58816adeb3b9ec",
      "tree": "fe07af5f00f5455ffe30cce1918b191cd82d4094",
      "parents": [
        "795dd84bd2259f997159f88fc6a9c865b82bcb9c"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Jan 20 12:51:43 2026 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 20 03:53:31 2026 -0800"
      },
      "message": "[libc++] Remove _LIBCPP_CONSTINIT (#171802)\n\n`_LIBCPP_CONSTINIT` is only ever used inside `src/`, so we can just\nreplace it with `constinit` instead.\n\nGitOrigin-RevId: 67cf9b8f827e816ada6dbbee3a4f0cdb7c1d0595\n"
    },
    {
      "commit": "795dd84bd2259f997159f88fc6a9c865b82bcb9c",
      "tree": "0045cce8b7b42faf9f4116079b29115fd9650674",
      "parents": [
        "3a38a1fa41b8c980c496d6014d36c9610ccd9788"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Mon Jan 19 16:46:13 2026 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jan 19 13:50:48 2026 -0800"
      },
      "message": "[libc++abi] Remove old workaround for detecting libunwind (#176009)\n\nThis workaround should no longer be relevant since we don\u0027t support\nbuilding against libunwind headers from LLVM 14.\n\nGitOrigin-RevId: e02c79a85ac31446a0022a15a3247599c928bef4\n"
    },
    {
      "commit": "3a38a1fa41b8c980c496d6014d36c9610ccd9788",
      "tree": "7a5cf6603c991c49c69c7a76a6cfd77871ac5780",
      "parents": [
        "f24f3e0d42e4e8a58fa09d2b1e030a237a72727f"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Wed Jan 14 13:39:02 2026 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jan 14 10:40:48 2026 -0800"
      },
      "message": "[runtimes] Post-branch tasks for the LLVM 23 release (#176007)\n\nThis performs most of the post-branch tasks to start working on the LLVM\n23 release. Things that are left to do:\n- Update the unicode version\n- Update CI versions and supported compiler versions\n\nGitOrigin-RevId: ec983ad611fa15890fdcf5c3066e938b5b154459\n"
    },
    {
      "commit": "f24f3e0d42e4e8a58fa09d2b1e030a237a72727f",
      "tree": "f16534902a3eedded84a46befffb1ffa9b82eafa",
      "parents": [
        "05ea9d685ce686131f250daf6a1be4e083bad1f9"
      ],
      "author": {
        "name": "willmafh",
        "email": "willmafh@hotmail.com",
        "time": "Wed Jan 14 16:12:26 2026 +0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jan 14 00:15:01 2026 -0800"
      },
      "message": "[NFC] Exactly one kind typo fixes, change defintions to definitions. (#174333)\n\nGitOrigin-RevId: c705003e8c36c481b8ecfe2af38f03c4fbfa0e0c\n"
    },
    {
      "commit": "05ea9d685ce686131f250daf6a1be4e083bad1f9",
      "tree": "fa164d46b658eee14a74510c72d9d211c590e673",
      "parents": [
        "9c16be67d05b4a0ac283ec8bae8c5724ae1def05"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Jan 13 11:21:52 2026 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 13 02:25:34 2026 -0800"
      },
      "message": "[libc++] Replace uses of _LIBCPP_WEAK with [[gnu::weak]] (#171798)\n\nUsing `_LIBCPP_WEAK` doesn\u0027t give us anything that using `[[gnu::weak]]`\ndirectly couldn\u0027t, so we can just expand the macro.\nAs a drive-by this also refactors `_LIBCPP_OVERRIDABLE_FUNCTION`.\n\nGitOrigin-RevId: f0054a48966e684df26e589f2fc803932e03aba4\n"
    },
    {
      "commit": "9c16be67d05b4a0ac283ec8bae8c5724ae1def05",
      "tree": "94710f22902acbff4e7e0be6a617ebb56bf569f3",
      "parents": [
        "e26cbaaa3f4085465245b3acdb03511aa2b33aec"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Fri Jan 09 12:07:42 2026 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Jan 09 03:10:39 2026 -0800"
      },
      "message": "[libc++][NFC] Refactor _LIBCPP_OVERRIDABLE_FUNCTION to be a normal attribute macro (#174964)\n\nCurrently `_LIBCPP_OVERRIDABLE_FUNCTION` takes the return type, function\nname and argument list, but simply constructs the function and adds\nattributes without modifying the signature in any way. We can replace\nthis with a normal attribute macro, making the signature easier to read\nand simpler to understand what\u0027s actually going on. Since it\u0027s an\ninternal macro we can also drop the `_LIBCPP_` prefix.\n\nGitOrigin-RevId: a5cab90071fbf6f700c95c337d850845ccc9ed9b\n"
    },
    {
      "commit": "e26cbaaa3f4085465245b3acdb03511aa2b33aec",
      "tree": "a8e55727cc6fa788b748f856c5d25c292f7ffacd",
      "parents": [
        "faf4e66b94046c3c5bba7108199706f4a5d1896d"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Fri Jan 09 11:58:29 2026 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Jan 09 03:01:16 2026 -0800"
      },
      "message": "[libc++] Introduce the notion of a minimum header version (#166074)\n\nIntroducing the notion of a minimum header version has multiple\nbenefits. It allows us to merge a bunch of ABI macros into a single one.\nThis makes configuring the library significantly easier, since, for a\nstable ABI, you only need to know which version you started distributing\nthe library with, instead of checking which ABI flags have been\nintroduced at what point. For platforms which have a moving window of\nthe minimum version a program has been compiled against, this also makes\nit simple to remove symbols from the dylib when they can\u0027t be used by\nany program anymore.\n\nGitOrigin-RevId: 484ee42096f8deeb084c8b36548d09c12b33cde0\n"
    },
    {
      "commit": "faf4e66b94046c3c5bba7108199706f4a5d1896d",
      "tree": "1b7bb5a08312fe2f454867b8c044f46e0b3f3205",
      "parents": [
        "ff0097a7841b7443ee9a82234d4634f92f20ec80"
      ],
      "author": {
        "name": "willmafh",
        "email": "willmafh@hotmail.com",
        "time": "Sun Jan 04 20:02:40 2026 +0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:06:30 2026 -0800"
      },
      "message": "[NFC] Delete unnecessary apostrophe at the end of its (#173974)\n\nGitOrigin-RevId: 2eb8ee137f28e46a1711a28b6575083dafba7c8e\n"
    },
    {
      "commit": "ff0097a7841b7443ee9a82234d4634f92f20ec80",
      "tree": "9ee0db2dc07c59a4ea0c492bae323ebef8e22c5b",
      "parents": [
        "96f81a7535f2a1f4ce4be9a562ba81b06f9c571e"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Dec 16 11:25:07 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:06:24 2026 -0800"
      },
      "message": "[libc++] Enable -Wmissing-prototypes (#116261)\n\nGitOrigin-RevId: 3c100d5d548d511d09746dd5a2fee29bdd00805c\n"
    },
    {
      "commit": "96f81a7535f2a1f4ce4be9a562ba81b06f9c571e",
      "tree": "63eed58f0937ba832a2195cd848f9f53ef8ecea9",
      "parents": [
        "f841282bbe90e21089f06e138dfa8a9125c0e66f"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Fri Dec 12 12:09:11 2025 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:06:16 2026 -0800"
      },
      "message": "[runtimes] Remove dependencies on cxx_experimental for test-suite installs (#171678)\n\nThis patch removes explicit dependencies on cxx_experimental for\ninstallations that are local to the test suite. Such dependencies\nare not required anymore from the test-suite installation targets\nsince the proper dependency is now encoded between cxx and\ncxx_experimental.\n\nGitOrigin-RevId: 4ffd373e3853ebc00fb339611e215deab682a54c\n"
    },
    {
      "commit": "f841282bbe90e21089f06e138dfa8a9125c0e66f",
      "tree": "503cb9e43990ff4d9406019ad653100b9ac9526b",
      "parents": [
        "c3fc78fbfbce55a99ad863e273365ae737c5be82"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Dec 11 09:10:54 2025 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:06:07 2026 -0800"
      },
      "message": "[libc++] Simplify how we install test-suite dependencies (#171504)\n\nBased on comments in #171474, it was brought to my attention that we can\nmodernize and simplify how we perform the test suite installation in\nlibc++ and libc++abi.\n\nGitOrigin-RevId: f582fc649178931694d6e360ec79e8c1fe8a0d0b\n"
    },
    {
      "commit": "c3fc78fbfbce55a99ad863e273365ae737c5be82",
      "tree": "5b3ac7d473b6f8ccbe7c7aaa2c0ea7c63ebeb0e8",
      "parents": [
        "171353d67cf83b2525706bbb003d5390368619bd"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Dec 11 09:09:37 2025 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:06:01 2026 -0800"
      },
      "message": "[runtimes] Modernize installation targets (#171677)\n\nThis patch moves away from using cmake_install scripts to install the\nvarious targets when building runtimes, since those have been deprecated\nby CMake. Instead, we use `cmake --install` which is the prefered\nmethod.\n\nThis patch also localizes how we set dependencies on the various\ninstallation targets, allowing the removal of a few global variables\nthat were used as lists.\n\nFinally, it makes the way we set up installation targets for libc++,\nlibc++abi and libunwind consistent again.\n\nGitOrigin-RevId: a9fadb3ed4fba28d031a4bc72de8f3fc15c08072\n"
    },
    {
      "commit": "171353d67cf83b2525706bbb003d5390368619bd",
      "tree": "eddc55517099869ccdecdfb004d63890af973562",
      "parents": [
        "2693ebd7687125018314debe710f5fc9ac0f388e"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Mon Nov 24 22:36:13 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:05:54 2026 -0800"
      },
      "message": "[libc++][NFC] Move __memory/aligned_alloc.h into src/ (#166172)\n\nThis header is only ever used inside `src/`, so we might as well move it\nthere. As a drive-by this also removes some dead code.\n\nGitOrigin-RevId: 3dcdb4c7658fb955d61fde5bd5232bdeadfc7eeb\n"
    },
    {
      "commit": "2693ebd7687125018314debe710f5fc9ac0f388e",
      "tree": "8030c412a3b585b28468288ab174758f00ade7ce",
      "parents": [
        "8d9e4b7feb6084a3d9d037210a395affd7424347"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Wed Nov 12 10:12:13 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:05:48 2026 -0800"
      },
      "message": "[libc++abi] Add a test to ensure the abi namespace alias is declared correctly (#167485)\n\nGitOrigin-RevId: a8e058a590842d745106cdffc74a7020c0f85cd4\n"
    },
    {
      "commit": "8d9e4b7feb6084a3d9d037210a395affd7424347",
      "tree": "b08eae43e1424facbbf5b1d9b0a309a7c8cea99a",
      "parents": [
        "6eb5bcc43a721b74b85fae062436431cb48d885b"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Mon Nov 10 20:04:26 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:05:41 2026 -0800"
      },
      "message": "[libc++abi][NFC] Remove some cruft from \u003c__cxxabi_config.h\u003e (#164578)\n\nIn `\u003c__cxxabi_config.h\u003e` there were a few things still around which\naren\u0027t ever actually used. This removes some of that cruft.\n\nGitOrigin-RevId: 46a8ddbd1494812474502de5f9841492225c28a1\n"
    },
    {
      "commit": "6eb5bcc43a721b74b85fae062436431cb48d885b",
      "tree": "b3635d5eab512d0c9fd6e1bfa687e4786f5df68d",
      "parents": [
        "6226762fcb35b945e741d4bf6c17a7fb1fbe9626"
      ],
      "author": {
        "name": "Raul Tambre",
        "email": "raul@tambre.ee",
        "time": "Sat Nov 08 22:20:13 2025 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:05:33 2026 -0800"
      },
      "message": "[libc++abi][libunwind] Enable AT\u0026T syntax explicitly (#166818)\n\nImplementation files using the Intel syntax typically explicitly specify\nit. Do the same for the few files where applicable for AT\u0026T.\n\nThis enables building LLVM with `-mllvm -x86-asm-syntax\u003dintel` in one\u0027s\nClang config files (i.e. a global preference for Intel syntax).\n\nGitOrigin-RevId: afc83688cfadfb07c1cd9edc4f3c855d7cf4a261\n"
    },
    {
      "commit": "6226762fcb35b945e741d4bf6c17a7fb1fbe9626",
      "tree": "876360554d915fc5c37a57521cb182554371fa06",
      "parents": [
        "aa764fc858ec4f7f4317bcc895c5323a879f3715"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Fri Nov 07 07:52:03 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Jan 04 04:05:25 2026 -0800"
      },
      "message": "[libcxxabi][ItaniumDemangle] Separate GtIsGt counter into more states (#166578)\n\nCurrently `OutputBuffer::GtIsGt` is used to tell us if we\u0027re inside\ntemplate arguments and have printed a \u0027(\u0027 without a closing \u0027)\u0027. If so,\nwe don\u0027t need to quote \u0027\u003c\u0027 when printing it as part of a binary\nexpression inside a template argument. Otherwise we need to. E.g.,\n```\nfoo\u003ca\u003c(b \u003c c)\u003e\u003e // Quotes around binary expression needed.\n```\n\nLLDB\u0027s `TrackingOutputBuffer` has heuristics that rely on checking\nwhether we are inside template arguments, regardless of the current\nparentheses depth. We\u0027ve been using `isGtInsideTemplateArgs` for this,\nbut that isn\u0027t correct. Resulting in us incorrectly tracking the\nbasename of function like:\n```\nvoid func\u003c(foo::Enum)1\u003e()\n```\nHere `GtIsGt \u003e 0` despite us being inside template arguments (because we\nincremented it when seeing \u0027(\u0027).\n\nThis patch adds a `isInsideTemplateArgs` API which LLDB will use to more\naccurately track parts of the demangled name.\n\nTo make sure this API doesn\u0027t go untested in the actual libcxxabi\ntest-suite, I changed the existing `GtIsGt` logic to use it. Also\nrenamed the various variables/APIs involved to make it (in my opinion)\nmore straightforward to understand what\u0027s going on. But happy to rename\nit back if people disagree.\n\nAlso adjusted LLDB to use the newly introduced API (and added a\nunit-test that would previously fail).\n\nGitOrigin-RevId: 54c9ddddd1da353b0303df1e86cf444c5363733d\n"
    },
    {
      "commit": "aa764fc858ec4f7f4317bcc895c5323a879f3715",
      "tree": "8742e81983db96c241efd132523fe95d708715ca",
      "parents": [
        "2112679894fedafe9c5f447ad77ef524b926f8a0"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Wed Nov 05 17:48:47 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Nov 05 09:50:41 2025 -0800"
      },
      "message": "[libcxxabi][demangle] Fix the cp-to-llvm.sh sync script to copy all headers (#166572)\n\nIn https://github.com/llvm/llvm-project/pull/137947 I refactored the\nscript and added a `copy_files` function, which takes the header files\nto copy as an argument.\n\nBut because the list of headers is a space separated string, we need to\nquote the string. Otherwise we would just copy the first header in the\nlist.\n\nThis patch also adds an `echo` statement in the `copy_files` loop to\nprint the source/destination. Confirming that the files are copied as\nexpected.\n```\n$ libcxxabi/src/demangle/cp-to-llvm.sh\nThis will overwrite the copies of ItaniumDemangle.h ItaniumNodes.def StringViewExtras.h Utility.h in ../../../llvm/include/llvm/Demangle and DemangleTestCases.inc in ../../../llvm/include/llvm/Demangle/../Testing/Demangle; are you sure? [y/N]y\nCopying ./ItaniumDemangle.h to ../../../llvm/include/llvm/Demangle/ItaniumDemangle.h\nCopying ./ItaniumNodes.def to ../../../llvm/include/llvm/Demangle/ItaniumNodes.def\nCopying ./StringViewExtras.h to ../../../llvm/include/llvm/Demangle/StringViewExtras.h\nCopying ./Utility.h to ../../../llvm/include/llvm/Demangle/Utility.h\nCopying ../../test/DemangleTestCases.inc to ../../../llvm/include/llvm/Demangle/../Testing/Demangle/DemangleTestCases.inc\n```\n\nLuckily there weren\u0027t any out-of-sync changes introduced in the\nmeantime.\n\nGitOrigin-RevId: d49c6707d07389e4bccdb23951dc9d3bc20996b1\n"
    },
    {
      "commit": "2112679894fedafe9c5f447ad77ef524b926f8a0",
      "tree": "5fb845ddb81b08dd06b451911e0e550b4a662254",
      "parents": [
        "b98f665cd1894687836187fbddcfdd07f7a177e0"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Mon Nov 03 04:41:26 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Nov 02 20:45:21 2025 -0800"
      },
      "message": "[libcxxabi] Update demangle/Utility.h\n\n4eed68357e4361b3a3aeb349dec2612cfb74c8cc updated the LLVM side but did\nnot bump the libc++abi version. Bump the libc++abi version to fix the\ntest failure caused by the versions differing.\n\nGitOrigin-RevId: c946b96d9bca595888535bcc0499fc1ea6a42192\n"
    },
    {
      "commit": "b98f665cd1894687836187fbddcfdd07f7a177e0",
      "tree": "49ef40090e54e5ab7701dd17a8a3012603394941",
      "parents": [
        "422c1814067ed91dcf0850f3104c3b2a10664706"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Sun Nov 02 17:24:30 2025 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun Nov 02 17:25:50 2025 -0800"
      },
      "message": "[libc++] Add availability markup for LLVM 19 and LLVM 20 (#140072)\n\nAn LLVM 19-aligned libc++ was released with macOS 15.4 (and corresponding OSes),\nand LLVM-20 aligned with macOS 26.0. This patch adds availability markup to\nreflect that.\n\nGitOrigin-RevId: 3252e11da3ac990732d02d1a881b6544d81fe955\n"
    },
    {
      "commit": "422c1814067ed91dcf0850f3104c3b2a10664706",
      "tree": "43754f3e1175ac160b048c31d973995367b1011b",
      "parents": [
        "9e715ac3511f6f0424751f9405078425dd20e6f0"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 30 08:50:33 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 30 08:55:39 2025 -0700"
      },
      "message": "[libc++] Fix localization failures on macOS 15.4 (#138744)\n\nThis patch reverts e15025dd and 88e15b781 which were temporary measures\nuntil we had figured out the underlying issues. It turns out that recent\nOSes updated localization data, removing the need for several Apple-specific\nworkarounds in the tests.\n\nFixes #135385\n\nGitOrigin-RevId: a98295dbcf500a21ea10e2124b6521a3124da643\n"
    },
    {
      "commit": "9e715ac3511f6f0424751f9405078425dd20e6f0",
      "tree": "c93f13436c12e4955aa3ab8c936983656951332c",
      "parents": [
        "cd8af2164266179509e3e1c354f1a9013c319c28"
      ],
      "author": {
        "name": "Oliver Hunt",
        "email": "oliver@apple.com",
        "time": "Mon Oct 20 09:57:45 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 20 10:01:01 2025 -0700"
      },
      "message": "[runtimes][PAC] Harden unwinding when possible (#143230)\n\nThis hardens the unwinding logic and datastructures on systems\nthat support pointer authentication.\n\nThe approach taken to hardening is to harden the schemas of as many\nhigh value fields in the myriad structs as possible, and then also\nexplicitly qualify local variables referencing privileged or security\ncritical values.\n\nThis does introduce ABI linkage between libcxx, libcxxabi, and\nlibunwind but those are in principle separate from the OS itself\nso we\u0027ve kept the schema definitions in the library specific headers\nrather than ptrauth.h\n\nGitOrigin-RevId: e6a1aff5916447630e9ec0e8a90594ca1ee7a1be\n"
    },
    {
      "commit": "cd8af2164266179509e3e1c354f1a9013c319c28",
      "tree": "2967158edc42f87816995afdba4a6b72e1ae020c",
      "parents": [
        "683c5d6b7770487594a238435f275b2fb8cdf95e"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Thu Oct 09 16:52:42 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 09 16:55:56 2025 -0700"
      },
      "message": "[libcxx] Use %{temp} instead of %T (#162323)\n\nBased on review feedback in #160026.\n\nThis makes the substitution a lot more clear now that there is no\ndocumentation around %T.\n\n---------\n\nCo-authored-by: Louis Dionne \u003cldionne.2@gmail.com\u003e\nGitOrigin-RevId: 0c2913afc82a683d82f16f09442d49b1fb25ca67\n"
    },
    {
      "commit": "683c5d6b7770487594a238435f275b2fb8cdf95e",
      "tree": "29eecb2f7bc9398f10ba27ac32e9e39f3270b739",
      "parents": [
        "0f9760323ec3187ac2f75933550c15d298434b76"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 09 09:00:20 2025 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 09 06:02:36 2025 -0700"
      },
      "message": "[runtimes][NFC] Consistently declare main() functions in tests (#162548)\n\nIn the libc++ test suite, we consistently declare main() functions with\nfull parameters and explicitly return from the function. This helps code\nthat compiles the tests with -ffreestanding, where main() is not a\nspecial function (with an implicit return and special mangling).\n\nThis patch fixes a few stray declarations, including in libunwind and\nlibc++abi.\n\nGitOrigin-RevId: 4f80c064eb2933c00c0ba9b7826aa3631cf3b5c2\n"
    },
    {
      "commit": "0f9760323ec3187ac2f75933550c15d298434b76",
      "tree": "6cb33bdff5eb1c7d7613a4b5c668e3c09b4148a1",
      "parents": [
        "8380c02259455bedf0416043f010852e18c77bd4"
      ],
      "author": {
        "name": "David Spickett",
        "email": "david.spickett@linaro.org",
        "time": "Mon Sep 15 09:20:58 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Sep 15 01:25:57 2025 -0700"
      },
      "message": "[libcxx][CI] Use lld for everything in the ARM picolib builds (#158320)\n\nOur host compiler is a clang install that will default to ld if not told\notherwise.\n\nWe were telling meson to use lld, but the way that we did it was\noutdated, which lead to picolib producing a linker script that lld could\nnot use. The tests were in fact linking with ld instead.\n\nUsing the `c_ld` setting fixes this problem. See:\nhttps://mesonbuild.com/Machine-files.html#binaries\n\nThen to use lld in tests we need `-fuse-ld\u003dlld` in the config files.\n\nSome of these options were not needed for clang 19.1.7, but were for\nclang 21.1.1. We will soon update to 21.1.1 so I have included all of\nthe required options in this PR.\n\nGitOrigin-RevId: e85926545e6313fd3c5c6147e82db42132c389ac\n"
    },
    {
      "commit": "8380c02259455bedf0416043f010852e18c77bd4",
      "tree": "edfa3bbcc52b77b7e87d1e0fe781e3463deb8df4",
      "parents": [
        "a7cd4dde79d88d3c7540c2f61dffe811c6e95edb"
      ],
      "author": {
        "name": "David Tenty",
        "email": "daltenty@ibm.com",
        "time": "Wed Aug 20 12:45:41 2025 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Aug 20 09:50:49 2025 -0700"
      },
      "message": "[NFC][CMake] quote ${CMAKE_SYSTEM_NAME} consistently (#154537)\n\nA CMake change included in CMake 4.0 makes `AIX` into a variable\n(similar to `APPLE`, etc.)\nhttps://gitlab.kitware.com/cmake/cmake/-/commit/ff03db6657c38c8cf992877ea66174c33d0bcb0b\n\nHowever, `${CMAKE_SYSTEM_NAME}` unfortunately also expands exactly to\n`AIX` and `if` auto-expands variable names in CMake. That means you get\na double expansion if you write:\n\n`if (${CMAKE_SYSTEM_NAME}  MATCHES \"AIX\")`\nwhich becomes:\n`if (AIX  MATCHES \"AIX\")`\nwhich is as if you wrote:\n`if (ON MATCHES \"AIX\")`\n\nYou can prevent this by quoting the expansion of \"${CMAKE_SYSTEM_NAME}\",\ndue to policy\n[CMP0054](https://cmake.org/cmake/help/latest/policy/CMP0054.html#policy:CMP0054)\nwhich is on by default in 4.0+. Most of the LLVM CMake already does\nthis, but this PR fixes the remaining cases where we do not.\n\nGitOrigin-RevId: 63195d3d7a8bde05590f91a38398f986bb4265b2\n"
    },
    {
      "commit": "a7cd4dde79d88d3c7540c2f61dffe811c6e95edb",
      "tree": "f5e7f05fe30a6a7d6fd63ec9c171d6826a88dd8e",
      "parents": [
        "ca3e3ac3c5916b3c91f739f494177afa8d4a1956"
      ],
      "author": {
        "name": "Konstantin Varlamov",
        "email": "varconsteq@gmail.com",
        "time": "Tue Jul 29 00:19:15 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jul 29 00:20:16 2025 -0700"
      },
      "message": "[libc++][hardening] Introduce assertion semantics. (#149459)\n\nAssertion semantics closely mimic C++26 Contracts evaluation semantics.\nThis brings our implementation closer in line with C++26 Library Hardening\n(one particular benefit is that using the `observe` semantic makes adopting\nhardening easier for projects).\n\nGitOrigin-RevId: 3eee9fc2c4d1973904b1a26fa96a8c7473ef6a5e\n"
    },
    {
      "commit": "ca3e3ac3c5916b3c91f739f494177afa8d4a1956",
      "tree": "479f096804ad4c135d0915b3dfd10559384e3a96",
      "parents": [
        "788d49cebc3ab80a3697a99845847832e49d353f"
      ],
      "author": {
        "name": "Andrew Rogers",
        "email": "andrurogerz@gmail.com",
        "time": "Thu Jul 24 03:50:16 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Jul 24 03:52:05 2025 -0700"
      },
      "message": "[llvm] annotate interfaces in Demangle for DLL export (#147564)\n\n## Purpose\n\nThis patch is one in a series of code-mods that annotate LLVM’s public\ninterface for export. This patch annotates the `Demangle` interface with\na new `DEMANGLE_ABI` annotation, which behaves like the `LLVM_ABI`. This\nannotation currently has no meaningful impact on the LLVM build;\nhowever, it is a prerequisite to support an LLVM Windows DLL (shared\nlibrary) build.\n\n## Overview\n\n1. Add a new `Demangle/Visibility.h` header file that defines a new\n`DEMANGLE_ABI` macro. The macro resolves to the proper DLL export/import\nannotation on Windows and a \"default\" visibility annotation elsewhere.\n2. Add a new `LLVM_ENABLE_DEMANGLE_EXPORT_ANNOTATIONS ` `#cmakedefine`\nthat is used to gate the definition of `DEMANGLE_ABI`.\n3. Code-mod annotate the public `Demangle` interface using the\n[Interface Definition Scanner (IDS)](https://github.com/compnerd/ids)\ntool.\n4. Manually fix-up `#include` statements for consistency.\n5. Format the changes with `clang-format`.\n6. Add a \"stub\" version of `Visibility.h` under `libcxxabi/src/demangle`\nthat always defines `DEMANGLE_ABI` to nothing.\n7. Update the canonical `libcxxabi/src/demangle/ItaniumDemangle.h`\ninstead of the llvm copy, and run `cp-to-llvm.sh` to ensure the llvm\ncopy matches. NOTE: we rely on `ccp-to-llvm.sh` not copying\n`Visibillity.h` as is already the case for `DemangleConfig.h`.\n\n## Background\n\nThis PR follows the pattern established with the `llvm-c` changes made\nin #141701.\n\nThis effort is tracked in #109483. Additional context is provided in\n[this\ndiscourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),\nand documentation for `LLVM_ABI` and related annotations is found in the\nLLVM repo\n[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).\n\n## Validation\n\nLocal builds and tests to validate cross-platform compatibility. This\nincluded llvm, clang, and lldb on the following configurations:\n\n- Windows with MSVC\n- Windows with Clang\n- Linux with GCC\n- Linux with Clang\n- Darwin with Clang\n\n---------\n\nCo-authored-by: Louis Dionne \u003cldionne.2@gmail.com\u003e\nGitOrigin-RevId: 04f5198e3ecb5592cec3297a782b8179f95434bf\n"
    },
    {
      "commit": "788d49cebc3ab80a3697a99845847832e49d353f",
      "tree": "2078c04be763191d8d90291ad4e64f9a877ceada",
      "parents": [
        "fcc092302e188d24c1001fca7aafbe704cf999c3"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Jul 15 12:43:37 2025 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jul 15 03:45:24 2025 -0700"
      },
      "message": "Revert \"[libc++][hardening] Introduce assertion semantics\" (#148822)\n\nReverts llvm/llvm-project#148268\n\nIt looks like this was based on #148266, which I reverted in #148787.\n\nGitOrigin-RevId: 339a1f2e8f5c8f6a55e3f801e55c659bd526956c\n"
    },
    {
      "commit": "fcc092302e188d24c1001fca7aafbe704cf999c3",
      "tree": "fb9d3c5fef99b1e3f0192746ce2cefaa25d204a7",
      "parents": [
        "cfe1dae700e1881e354650a404d0dc525b08496e"
      ],
      "author": {
        "name": "Konstantin Varlamov",
        "email": "varconsteq@gmail.com",
        "time": "Tue Jul 15 02:14:30 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jul 15 02:15:44 2025 -0700"
      },
      "message": "[libc++][hardening] Introduce assertion semantics (#148268)\n\nAssertion semantics closely mimic C++26 Contracts evaluation semantics.\nThis brings our implementation closer in line with C++26 Library\nHardening (one particular benefit is that using the `observe` semantic\nmakes adopting hardening easier for projects).\n\nGitOrigin-RevId: 7345508c6febc57eaac985ef2fb14beabdc4d461\n"
    },
    {
      "commit": "cfe1dae700e1881e354650a404d0dc525b08496e",
      "tree": "2078c04be763191d8d90291ad4e64f9a877ceada",
      "parents": [
        "8d3a1576756b5c0c9cd717e89216b8b2c1d2c0cf"
      ],
      "author": {
        "name": "Petr Hosek",
        "email": "phosek@google.com",
        "time": "Wed Jul 09 00:48:50 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jul 09 00:50:47 2025 -0700"
      },
      "message": "[libcxxabi][libunwind] Support for using LLVM libc (#134893)\n\nThis generalizes the support added in #99287 renaming the option to\nRUNTIMES_USE_LIBC and integrating the module into libc++abi and\nlibunwind as well.\n\nGitOrigin-RevId: 9d3b60dea7ad81f6cb0d9f2e51bb6c80c03fa2d4\n"
    },
    {
      "commit": "8d3a1576756b5c0c9cd717e89216b8b2c1d2c0cf",
      "tree": "c495c4c4a8fc12c4c5eb3e204b53b1353d4289ce",
      "parents": [
        "ff5af4f7c59b3e74c4722011223125144fbcf313"
      ],
      "author": {
        "name": "Raul Tambre",
        "email": "raul@tambre.ee",
        "time": "Thu Jul 03 12:07:25 2025 +0300"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Jul 03 02:09:05 2025 -0700"
      },
      "message": "[libcxxabi][cmake] Account for LIBCXXABI_TARGET_SUBDIR in test config (#138527)\n\nThis makes the logic and code structure match that of libc++, which handles this case (i.e. the target subdirectory being changed).\nThe `%{target}` substitution from libc++ is removed as libc++abi\u0027s config seems to be the only place it\u0027s used.\n\nGitOrigin-RevId: 431507db52c8836f326f40f6ef6328bbf3c7bbd4\n"
    },
    {
      "commit": "ff5af4f7c59b3e74c4722011223125144fbcf313",
      "tree": "ce2b2b4cbdbca97187d6bcfdc02f6b059db97783",
      "parents": [
        "a479518a13bd3f86dd37cce0fc7b9c58dd0ebcf4"
      ],
      "author": {
        "name": "Larry Meadows",
        "email": "lmeadows@amd.com",
        "time": "Wed Jun 25 12:06:11 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jun 25 12:10:31 2025 -0700"
      },
      "message": "[libc++abi] Fix C++ demangling for _BitInt type (#143466)\n\nThe front-end expects _BitInt to be available for substitution; ensure DB\u003cn\u003e is\nadded to Subs in ItaniumDemangle.h. Also add a test case to libc++abi and\nsync the files to llvm/include/llvm.\n\nGitOrigin-RevId: 20f56d140909a01c74e9981835373eaab6021af9\n"
    },
    {
      "commit": "a479518a13bd3f86dd37cce0fc7b9c58dd0ebcf4",
      "tree": "acb4553d4d09838c6ad2e6231a299d9f47db4bdd",
      "parents": [
        "653c910ea54e9667b4dd68a0a83a071dae179e27"
      ],
      "author": {
        "name": "tynasello-google",
        "email": "tynasello@google.com",
        "time": "Thu Jun 12 08:39:28 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Jun 12 08:40:45 2025 -0700"
      },
      "message": "[libc++] Expand Android libc++ test config files (#142846)\n\nParameterize (and rename) existing libc++/libc++abi test configuration\nfiles for the Android NDK to work for both the NDK and platform.\n\nAndroid LLVM downstream seeks to test libc++ for both the NDK and\nplatform build (currently only testing the NDK), which will use almost\nidentical test configuration files. The only difference is the name of\nthe libc++ shared object used. Because of this we parameterize the\ncurrent test files (for both libc++ and libc++abi) with the existing\nLIBCXX_SHARED_OUTPUT_NAME cmake variable, and rename the file\naccordingly.\n\nGitOrigin-RevId: 13fe07d670e8a115929c9e595c4490ef5c75f583\n"
    },
    {
      "commit": "653c910ea54e9667b4dd68a0a83a071dae179e27",
      "tree": "53f4533816cad9829ea8af4dc17615333f8abc9f",
      "parents": [
        "d3958b13c64431747fdcc6d7e2c530e5ab5c7b43"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Wed Jun 11 20:19:26 2025 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jun 11 11:20:45 2025 -0700"
      },
      "message": "[libc++] Upgrade to GCC 15 (#138293)\n\nGitOrigin-RevId: 42c82fcc29c1c8e19b2265495a5d8f59fb5ea764\n"
    },
    {
      "commit": "d3958b13c64431747fdcc6d7e2c530e5ab5c7b43",
      "tree": "8a1e51e9fa86c5a5dc20865b8a1678ea46db57d5",
      "parents": [
        "5e561013c4bd09737af873b8fa08d3242c80d8f3"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Sat May 31 21:18:54 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 31 13:20:48 2025 -0700"
      },
      "message": "[libcxxabi][test] Check that all copied files are synced between llvm and libcxxabi (#142262)\n\nThis patch expands the list of files we check to all the ones that are\ncopied via `cp-to-llvm.sh`.\n\nGitOrigin-RevId: 061ef3c6e22722c31986182e14a5b9c0a117c661\n"
    },
    {
      "commit": "5e561013c4bd09737af873b8fa08d3242c80d8f3",
      "tree": "3e63d34b962254826e5da9ab1712912aad192adb",
      "parents": [
        "e0fd8e75bd8afa9af23cb4f802ffa8f6133eb6c2"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Fri May 30 19:56:50 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 30 11:59:03 2025 -0700"
      },
      "message": "[ItaniumDemangle][test] Factor demangler test-cases into file and sync into LLVM (#137947)\n\nThis patch turns the `libcxxabi/test/test_demangle.pass.cpp` into gtest\nunit-tests in `llvm/unittests/Demangle`. The main motivation for this is\nhttps://github.com/llvm/llvm-project/pull/137793, where we want to\nre-use the test-cases from the ItaniumDemangler to test our OutputBuffer\nimplementation.\n\n`libcxxabi/test/test_demangle.pass.cpp` now only tests the\n`__cxa_demangle` API surface, not the underlying ItaniumDemangle\nimplementation.\n\nGitOrigin-RevId: f7e172da4caeab9d92f6e97501b1a2c561e616c1\n"
    },
    {
      "commit": "e0fd8e75bd8afa9af23cb4f802ffa8f6133eb6c2",
      "tree": "f15902187e66b04720e4f1fbc9156439f84705ee",
      "parents": [
        "51051df787ff6f13a8ed137f5971f5f5978cbf7a"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Tue May 27 23:40:26 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 27 16:46:18 2025 -0700"
      },
      "message": "[libcxxabi] Add test to assert that ItaniumDemangle.h is the same (#140323)\n\nItaniumDemangle.h exists in both llvm/ and libcxxabi/. These files are\nsupposed to be copies of each other (minus the top two lines). This\npatch adds a test to assert that this is the case to enable tooling to\nautomatically detect this as an issue, like in #139825. This makes it\neasier for contributors unfamiliar with the duplication to make\nchanges/get appropriate reviews.\n\nIdeally we would share the file and copy it from one place to the other\nbut the ideal way to do this (based on previous discussion with libc++\nmaintainers) would be a new runtime library that clearly outlines\nrequirements, so that is left for later with the test being used as a\nstopgap. This is a relatively common approach for structures shared\nbetween compiler-rt and LLVM.\n\nThis patch does make the test reference the LLVM source directory, but\nthat should be fine given building libcxxabi is only supported through\nthe runtimes build in the monorepo meaning it should always be\navailable.\n\nGitOrigin-RevId: c1970c76adf70ca8ade7ac5d3bb57872e2daf1fd\n"
    },
    {
      "commit": "51051df787ff6f13a8ed137f5971f5f5978cbf7a",
      "tree": "317324736f507d45d44e6231605021fda9ebbc2e",
      "parents": [
        "dc9ad08521ccb08406e7fb62371cd18f13f8e8f1"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Fri May 16 09:26:09 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 16 09:28:34 2025 -0700"
      },
      "message": "[libcxxabi] Update ItaniumDemangle.h from LLVM (#140273)\n\n76ba29bfd8e8aaf5b0267598d18434a0d13945a2 landed changes in\nItaniumDemangle.h on the LLVM side that were not propagated over to the\nlibcxxabi side. This patch fixes that.\n\nGitOrigin-RevId: 23a674d2ecc428a96d28c9772cc5178eaf763863\n"
    },
    {
      "commit": "dc9ad08521ccb08406e7fb62371cd18f13f8e8f1",
      "tree": "bfe7b17bb0693efc10198f4fd3369a26de1c1703",
      "parents": [
        "a78b2d722d0cdd4e3ab81c95b484ec68cb32f311"
      ],
      "author": {
        "name": "Raul Tambre",
        "email": "raul@tambre.ee",
        "time": "Mon May 12 22:59:39 2025 +0300"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 12 13:02:39 2025 -0700"
      },
      "message": "[cmake] Normalize TARGET_SUBDIR paths (#138524)\n\nSome code paths normalize \"..\" and thus don\u0027t create the directory. But some execute in a\nshell thus requiring the directory to exist to be able to take the parent directory.\n\nThis patch normalizes all the `TARGET_SUBDIR` variables to avoid this issue.\n\nGitOrigin-RevId: fc3b67aee852d99bbb5d2f4670695d8246375dac\n"
    },
    {
      "commit": "a78b2d722d0cdd4e3ab81c95b484ec68cb32f311",
      "tree": "d12f9590cd7dfbdd0a747abe5be85af45ad84696",
      "parents": [
        "703b83e62ea34a2f916a9c371f905095b329ae27"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Mon May 12 20:56:07 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 12 12:57:55 2025 -0700"
      },
      "message": "[ItaniumDemangle] Add Named flag to \"pm\" operator (#136862)\n\nCompilers can generate mangled names such as `_ZN1CpmEi` which we\ncurrently fail to demangle. The OperatorInfo table only marked the `pt`\noperator as being \"named\", which prevented the others from demangling\nproperly. Removing this logic for the other kinds of member operators\nisn\u0027t causing any tests to fail.\n\nGitOrigin-RevId: 028f70d2524be56bb5d191ec3d7022b40bc4859b\n"
    },
    {
      "commit": "703b83e62ea34a2f916a9c371f905095b329ae27",
      "tree": "a06f5a1b6d9ed0dfcce9aad6ca3ef4043ce0119a",
      "parents": [
        "79b31581ac770fd4b746bccf00e00b68e72b9dc8"
      ],
      "author": {
        "name": "Petr Hosek",
        "email": "phosek@google.com",
        "time": "Fri May 09 11:25:14 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 09 11:26:58 2025 -0700"
      },
      "message": "[libcxx][NFC] Use macros for functions that support overriding detection (#133876)\n\nWe plan to replace the existing mechanism for overriding detection with\none that doesn\u0027t require the use of a special section as an alternative\nto llvm/llvm-project#120805 which had other downsides.\n\nThis change is a pure refactoring that lays the foundation for a\nsubsequent change that will introduce the new detection mechanism.\n\nGitOrigin-RevId: 25a03c1c7cec62ad7b6ed7a176df4e91ba968332\n"
    },
    {
      "commit": "79b31581ac770fd4b746bccf00e00b68e72b9dc8",
      "tree": "916e39547491f2c36075e114e2c85e83afc6986e",
      "parents": [
        "e49bfbb764747fe112d17a0f7d3e0cf580409dea"
      ],
      "author": {
        "name": "Dmitry Vasilyev",
        "email": "dvassiliev@accesssoftek.com",
        "time": "Tue May 06 13:16:51 2025 +0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 06 02:18:00 2025 -0700"
      },
      "message": "[ItaniumDemangle] Fix libcxxabi OutputBuffer::prepend for empty inputs (#138656)\n\nSee #138564 for details.\n\nGitOrigin-RevId: 0dce0ea31cc9fd1d3d082b233b16f9ed123a6ed4\n"
    },
    {
      "commit": "e49bfbb764747fe112d17a0f7d3e0cf580409dea",
      "tree": "efff0cc4b5e7c12e6b440e95620bf6fb8bb556fe",
      "parents": [
        "4a66c31710a53f2922f17fe4631e92df36b41a85"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Fri Apr 25 22:04:31 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 25 14:16:03 2025 -0700"
      },
      "message": "[ItaniumDemangle][NFC] Add getter to ObjCProtoName::getProtocol\n\nAnd remove now redunant friend declaration.\n\nFor some reason this was failing to build on one of the MSVC bots after\nhttps://github.com/llvm/llvm-project/pull/131836:\n```\nFAILED: tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.obj\n\nccache C:\\PROGRA~1\\MICROS~1\\2022\\COMMUN~1\\VC\\Tools\\MSVC\\1441~1.341\\bin\\Hostx64\\x64\\cl.exe  /nologo /TP -DCLANG_BUILD_STATIC -DGTEST_HAS_RTTI\u003d0 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS\u003d0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\build\\tools\\lldb\\source\\Plugins\\ExpressionParser\\Clang -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\lldb\\source\\Plugins\\ExpressionParser\\Clang -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\lldb\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\build\\tools\\lldb\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\build\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\llvm\\include -IC:\\Python312\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\llvm\\..\\clang\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\build\\tools\\lldb\\..\\clang\\include -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\lldb\\source -IC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\build\\tools\\lldb\\source -D__OPTIMIZE__ /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -wd4251 -wd4275 -w14062 -we4238 /Gw /O2 /Ob2  -MD   -wd4018 -wd4068 -wd4150 -wd4201 -wd4251 -wd4521 -wd4530 -wd4589  /EHs-c- /GR- -UNDEBUG -std:c++17 /showIncludes /Fotools\\lldb\\source\\Plugins\\ExpressionParser\\Clang\\CMakeFiles\\lldbPluginExpressionParserClang.dir\\ClangExpressionParser.cpp.obj /Fdtools\\lldb\\source\\Plugins\\ExpressionParser\\Clang\\CMakeFiles\\lldbPluginExpressionParserClang.dir\\lldbPluginExpressionParserClang.pdb /FS -c C:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\lldb\\source\\Plugins\\ExpressionParser\\Clang\\ClangExpressionParser.cpp\n\nC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\llvm\\include\\llvm/Demangle/ItaniumDemangle.h(667): error C2248: \u0027llvm::itanium_demangle::ObjCProtoName::Protocol\u0027: cannot access private member declared in class \u0027llvm::itanium_demangle::ObjCProtoName\u0027\n\nC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\llvm\\include\\llvm/Demangle/ItaniumDemangle.h(615): note: see declaration of \u0027llvm::itanium_demangle::ObjCProtoName::Protocol\u0027\n\nC:\\buildbot\\as-builder-10\\lldb-x-aarch64\\llvm-project\\llvm\\include\\llvm/Demangle/ItaniumDemangle.h(613): note: see declaration of \u0027llvm::itanium_demangle::ObjCProtoName\u0027\n```\n\nIt\u0027s not quite clear to me why this wasn\u0027t compiling but either way this\nis cleaner.\n\nGitOrigin-RevId: bd96fa778809d70e688d27cae2f7667b2aed69c0\n"
    },
    {
      "commit": "4a66c31710a53f2922f17fe4631e92df36b41a85",
      "tree": "c21a971690da9469d72699410d7bb77f2f6918bb",
      "parents": [
        "3fff56aea012cf06c33b84946f1e86e5c7b2e938"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Wed Apr 23 15:40:04 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 23 07:45:50 2025 -0700"
      },
      "message": "[ItaniumDemangle][test] Add test-cases for ref-qualified member pointer parameters\n\nI noticed that there are test-cases that are commented out. But the\nmanglings for them seem to be impossible to generate from valid C++. I\nadded two test-cases generated from following C++ program:\n```\nstruct X {\n    int func() const \u0026\u0026 { return 5; }\n    const int \u0026\u0026func2() { return 5; }\n    const int \u0026\u0026func3(const int \u0026x) volatile { return 5; }\n};\n\nvoid f(int (X::*)() const \u0026\u0026, int const \u0026\u0026 (X::*)(),\n       int const \u0026\u0026 (X::*)(const int \u0026) volatile) {}\n\nint main() {\n    f(\u0026X::func, \u0026X::func2, \u0026X::func3);\n    return 0;\n}\n```\n\nGitOrigin-RevId: 46f18b7c6febe75b2cc0095f2227d935c14f70f2\n"
    },
    {
      "commit": "3fff56aea012cf06c33b84946f1e86e5c7b2e938",
      "tree": "860cdcca4fafa4c334435d4e1447f7d40dd5d9ae",
      "parents": [
        "443bb4cb976c6db58943beb337fc8a7a3c5e5747"
      ],
      "author": {
        "name": "Michael Buch",
        "email": "michaelbuch12@gmail.com",
        "time": "Thu Apr 17 21:53:32 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 17 13:55:23 2025 -0700"
      },
      "message": "[ItaniumDemangle] Add customizable printLeft/printRight APIs to OutputBuffer (#133249)\n\nThis patch includes the necessary changes for the LLDB feature proposed\nin\nhttps://discourse.llvm.org/t/rfc-lldb-highlighting-function-names-in-lldb-backtraces/85309.\nThe TL;DR is that we want to track where certain parts of a demangled\nname begin/end so we can highlight them in backtraces.\n\nWe introduce a new `printLeft`/`printRight` API on `OutputBuffer` that a\nclient (in our case LLDB) can implement to track state while printing\nthe demangle tree. This requires redirecting all calls to to\n`printLeft`/`printRight` to the `OutputBuffer`. One quirk with the new\nAPI is that `Utility.h` would now depend on `ItaniumDemangle.h` and\nvice-versa. To keep these files header-only I made the definitions\n`inline` and implement the new APIs in `ItaniumDemangle.h` (so the\ndefinition of `Node` is available to them).\n\nAlso introduces `notifyInsertion`/`notifyDeletion` APIs that a client can override to respond to cases where the `OutputBuffer` changes arbitrary parts of the name.\n\nGitOrigin-RevId: 889dad7f40932ea68c9e287e62441507f4f0f261\n"
    },
    {
      "commit": "443bb4cb976c6db58943beb337fc8a7a3c5e5747",
      "tree": "d915c2a39f1957d050a6fb9f1ca5906d5a553bba",
      "parents": [
        "f2ccc42bf103caaf18c76f666268182c83398179"
      ],
      "author": {
        "name": "Akira Hatanaka",
        "email": "ahatanak@gmail.com",
        "time": "Tue Apr 15 12:54:25 2025 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 15 12:55:33 2025 -0700"
      },
      "message": "[PAC] Add support for __ptrauth type qualifier (#100830)\n\nThe qualifier allows programmer to directly control how pointers are\nsigned when they are stored in a particular variable.\n\nThe qualifier takes three arguments: the signing key, a flag specifying\nwhether address discrimination should be used, and a non-negative\ninteger that is used for additional discrimination.\n\n```\ntypedef void (*my_callback)(const void*);\nmy_callback __ptrauth(ptrauth_key_process_dependent_code, 1, 0xe27a) callback;\n```\n\nCo-Authored-By: John McCall rjmccall@apple.com\nGitOrigin-RevId: a3283a92aea147e89d9d404fa7c8500223c7c22a\n"
    },
    {
      "commit": "f2ccc42bf103caaf18c76f666268182c83398179",
      "tree": "f70c72a0b07ae470fbad0b3a518f9043bf80c42d",
      "parents": [
        "024fc8257dc3bb82043cf0bcfb6058f12883d856"
      ],
      "author": {
        "name": "Mark de Wever",
        "email": "koraq@xs4all.nl",
        "time": "Fri Apr 11 18:41:50 2025 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 11 11:04:55 2025 -0700"
      },
      "message": "[libc++] Another Apple CI quick-fix.\n\nLike #135202 this fixes another issue after the XCode update.\n\nGitOrigin-RevId: e15025dd50ce2f3db6c8f3f414f95a7b58ef8501\n"
    },
    {
      "commit": "024fc8257dc3bb82043cf0bcfb6058f12883d856",
      "tree": "174a3ff544d3d2bd153be04aecf188b51fe482aa",
      "parents": [
        "7a62fc5673c15846c447b40bb14e29faa769d773"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Apr 11 12:24:13 2025 +0300"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 11 02:25:58 2025 -0700"
      },
      "message": "[libcxxabi] Fix the long double demangling for PowerPC (#135332)\n\nPowerPC uses a slightly different type of floats for their 128 bit long\ndoubles, as \"double-double\", with __LDBL_MANT_DIG__ \u003d\u003d 106 rather than\n__LDBL_MANT_DIG__ \u003d\u003d 113 for IEEE 128 bit floats.\n\nThis fixes compiling libcxxabi for PowerPC after\n3b70715c13876c51542ebfe2e3f4ee908f6785cb.\n\nGitOrigin-RevId: 8be4bd85708cddc8d84d03cf77ba4b02d0b6d44c\n"
    },
    {
      "commit": "7a62fc5673c15846c447b40bb14e29faa769d773",
      "tree": "175d7980040aad5bec631c334c136317549b76c8",
      "parents": [
        "9e239f58ef6cbdf52d52930ca5d57a3ecdd05aa3"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Apr 11 08:54:11 2025 +0300"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 10 22:55:42 2025 -0700"
      },
      "message": "[libcxxabi] Use __LDBL_MANT_DIG__ for configuring demangling of long doubles (#134976)\n\nThis avoids needing to hardcode the mapping between architectures and\ntheir sizes of long doubles.\n\nThis fixes a case in test_demangle.pass.cpp, that previously failed like\nthis (XFAILed):\n\n    .---command stdout------------\n    | Testing 29859 symbols.\n| _ZN5test01hIfEEvRAcvjplstT_Le4001a000000000000000E_c should be invalid\nbut is not\n| Got: 0, void test0::h\u003cfloat\u003e(char (\u0026) [(unsigned int)(sizeof (float) +\n0x0.07ff98f7ep-1022L)])\n    `-----------------------------\n    .---command stderr------------\n| Assertion failed: !passed \u0026\u0026 \"demangle did not fail\", file\nlibcxxabi/test/test_demangle.pass.cpp, line 30338\n    `-----------------------------\n\nThis testcase is defined within\n\n// Is long double fp80? (Only x87 extended double has 64-bit mantissa)\n    #define LDBL_FP80 (__LDBL_MANT_DIG__ \u003d\u003d 64)\n    ...\n    #if !LDBL_FP80\n    ...\n    #endif\n\nThe case failed on x86 architectures with an unusual size for long\ndoubles, as the test expected the demangler to not be able to demangle\nan 80 bit long double (based on the `__LDBL_MANT_DIG__ \u003d\u003d 64` condition\nin the test). However as the libcxxabi implementation was hardcoded to\ndemangle 80 bit long doubles on x86_64 regardless of the actual size,\nthis test failed (by unexpectedly being able to demangle it).\n\nBy configuring libcxxabi\u0027s demangling of long doubles to match what the\ncompiler specifies, we no longer hit the expected failures in the\ntest_demangle.pass.cpp test on Android on x86.\n\nThis makes libcxxabi require a GCC-compatible compiler that defines\nnonstandard defines like `__LDBL_MANT_DIG__`, but I presume that\u0027s\nalready essentially required anyway.\n\nGitOrigin-RevId: 3b70715c13876c51542ebfe2e3f4ee908f6785cb\n"
    },
    {
      "commit": "9e239f58ef6cbdf52d52930ca5d57a3ecdd05aa3",
      "tree": "a7c28c83298d937f13c526335b1e8139e40f74be",
      "parents": [
        "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726"
      ],
      "author": {
        "name": "A. Jiang",
        "email": "de34@live.cn",
        "time": "Wed Apr 09 07:40:01 2025 +0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 08 16:46:18 2025 -0700"
      },
      "message": "[libc++] P3247R2: Deprecate `is_trivial(_v)` (#130573)\n\nRequirements on character-like types are updated unconditionally,\nbecause `basic_string` does requires the default-constructibility. It\nmight be possible to make `basic_string_view` support classes with\nnon-public trivial default constructor, but this doesn\u0027t seem sensible.\n\nlibcxxabi\u0027s `ItaniumDemangle.h` is also updated to avoid deprecated\nfeatures.\n\nGitOrigin-RevId: ab95005a05232030a16c2da7a8de867c2ded5f88\n"
    },
    {
      "commit": "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726",
      "tree": "80d288bbcee8ed8849891f9ee08b7dcadf228dab",
      "parents": [
        "47bbbc31fa63cfb33eb4b7ca4b09f8ae3de8cea4"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@google.com",
        "time": "Wed Feb 12 22:18:02 2025 +0900"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Feb 12 05:19:53 2025 -0800"
      },
      "message": "[libc++abi] Add a missing include for abort() (#126865)\n\nThis is to fix a build error when we use Clang modules in Chromium.\n\nGitOrigin-RevId: 75dd4119b2798a53241089f77922a2e13ead6b94\n"
    },
    {
      "commit": "47bbbc31fa63cfb33eb4b7ca4b09f8ae3de8cea4",
      "tree": "cf1ea946ed540066ee8d56724355ed08c82a81c7",
      "parents": [
        "96c0a4cd313991f8e3f42b7dd72f42ceee2c8c60"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Tue Jan 28 16:44:57 2025 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 28 13:51:38 2025 -0800"
      },
      "message": "[libc++abi] Make once_flag constinit in cxa_exception_storage (#124627)\n\nThis makes it clearer that initialization of this global variable is\ntaking place at compile-time, reducing the likelihood of static\ninitialization order fiasco.\n\nGitOrigin-RevId: a06c89387621b0a040e6203e7f1a2d8243f5be33\n"
    },
    {
      "commit": "96c0a4cd313991f8e3f42b7dd72f42ceee2c8c60",
      "tree": "87d31ed0cb70d191ed0f44850b772712323ca650",
      "parents": [
        "159ae3d2066ee4f1dce0007e125dae6d1c2095b4"
      ],
      "author": {
        "name": "Petr Hosek",
        "email": "phosek@google.com",
        "time": "Mon Jan 27 22:26:15 2025 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jan 27 22:30:31 2025 -0800"
      },
      "message": "Revert \"[libcxx] Use alias for detecting overriden function\" (#124431)\n\nReverts llvm/llvm-project#120805\n\nThis change while desirable has two issues we discovered:\n\n- It is incompatible with `-funique-internal-linkage-names`, see\nhttps://github.com/llvm/llvm-project/pull/120805#discussion_r1913709817\n- It is incompatible with `-fvisibility-global-new-delete\u003dforce-hidden`,\nsee\nhttps://github.com/llvm/llvm-project/issues/123224#issuecomment-2607963878\n\nWe were hoping to address both of these issues with\nhttps://github.com/llvm/llvm-project/pull/122983, but that change has\nother issues we haven\u0027t yet managed to resolve. For now, we have decided\nto revert the change to avoid shipping a broken feature in LLVM 20, and\nwe plan to follow up with a new approach post branch.\n\nGitOrigin-RevId: 4167ea2cb082a2acb00b8b1dc09aa780dc0e3110\n"
    },
    {
      "commit": "159ae3d2066ee4f1dce0007e125dae6d1c2095b4",
      "tree": "cb8a20fd08ea728f9fb854b099abae557ed90ccf",
      "parents": [
        "338aa8a5c7e9672e0e561883e4b5c08c4cb6ecf8"
      ],
      "author": {
        "name": "Brad Smith",
        "email": "brad@comstyle.com",
        "time": "Thu Jan 23 04:26:02 2025 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Jan 23 01:29:29 2025 -0800"
      },
      "message": "[libc++abi] Remove support for Android 4 and older (#124054)\n\nGitOrigin-RevId: 9fd92634749c75b39be829c22240567ccda3ffce\n"
    },
    {
      "commit": "338aa8a5c7e9672e0e561883e4b5c08c4cb6ecf8",
      "tree": "ae5ad0d6677cb9ed678513a80529bac39db2ec39",
      "parents": [
        "17e7da0e6786d378102f188f956a40c4309b4bfd"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Jan 14 22:21:03 2025 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 14 13:25:28 2025 -0800"
      },
      "message": "[libc++] Simplify when the sized global deallocations overloads are available (#114667)\n\nThere doesn\u0027t seem to be much benefit in always providing declarations\nfor the sized deallocations from C++14 onwards if the user explicitly\npassed `-fno-sized-deallocation` to disable them. This patch simplifies\nthe declarations to be available exactly when the compiler expects sized\ndeallocation functions to be available.\n\nGitOrigin-RevId: ef804d8f9b4ef4ff39e873d5910e94887519bdb6\n"
    },
    {
      "commit": "17e7da0e6786d378102f188f956a40c4309b4bfd",
      "tree": "7d4351d66b1513a71a1748e29b10eda46d1015de",
      "parents": [
        "308fed6091a5d2b30d45b29f11f2e4cbb787b60e"
      ],
      "author": {
        "name": "Kirill Stoimenov",
        "email": "kstoimenov@google.com",
        "time": "Tue Jan 14 18:23:07 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 14 10:30:31 2025 -0800"
      },
      "message": "Revert \"[libc++] Stop copying headers to the build directory (#115380)\"\n\nThis reverts commit 428c8767ae997b0f726c0b40160ea8172551babf.\n\nBreaks sanitizer build: https://lab.llvm.org/buildbot/#/builders/51/builds/9056\n\nGitOrigin-RevId: 576b53801fc3d721602ae0d8377af9950f356000\n"
    },
    {
      "commit": "308fed6091a5d2b30d45b29f11f2e4cbb787b60e",
      "tree": "13b042ccdd461fdabd0667241ae7c5a51eb02055",
      "parents": [
        "1870b1afad0eedce644bdc1a0e7e4657a79ca5dc"
      ],
      "author": {
        "name": "Alexander Richardson",
        "email": "alexrichardson@google.com",
        "time": "Tue Jan 14 05:40:04 2025 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 14 05:45:04 2025 -0800"
      },
      "message": "[libc++] Stop copying headers to the build directory (#115380)\n\nThis was needed before https://github.com/llvm/llvm-project/pull/115077\nsince the compiler-rt test build made assumptions about the build\nlayout of libc++ and libc++abi, but now they link against a local\ninstallation of these libraries so we no longer need this workaround.\n\nGitOrigin-RevId: 428c8767ae997b0f726c0b40160ea8172551babf\n"
    },
    {
      "commit": "1870b1afad0eedce644bdc1a0e7e4657a79ca5dc",
      "tree": "7d4351d66b1513a71a1748e29b10eda46d1015de",
      "parents": [
        "93837410b85a977012e3d2abc52005bb381415cd"
      ],
      "author": {
        "name": "Fraser Cormack",
        "email": "fraser@codeplay.com",
        "time": "Mon Jan 13 21:15:40 2025 +0000"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jan 13 13:18:37 2025 -0800"
      },
      "message": "[libc++abi][ItaniumDemangle] Demangle DF16b as std::bfloat16_t (#120109)\n\nThis mangling is official in the Itanium C++ ABI specification and is\nalready supported by clang.\n\nGitOrigin-RevId: a100fd8cbd3dad3846a6212d97279ca23db85c75\n"
    },
    {
      "commit": "93837410b85a977012e3d2abc52005bb381415cd",
      "tree": "804f344c8a516cd0686b45ddd0e7dce4e5948ee7",
      "parents": [
        "450b4581a440fe0d2dd2fee3ea5c8e30aaaf2f41"
      ],
      "author": {
        "name": "Petr Hosek",
        "email": "phosek@google.com",
        "time": "Tue Jan 07 13:45:48 2025 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jan 07 13:50:51 2025 -0800"
      },
      "message": "[libcxx] Use alias for detecting overriden function (#120805)\n\nThis mechanism is preferable in environments like embedded since it\ndoesn\u0027t require special handling of the custom section.\n\nThis is a reland of https://github.com/llvm/llvm-project/pull/114961\nwhich addresses the issue reported by downstream users. Specifically,\nthe two differences from the previous version are:\n\n* The internal `symbol##_impl__` symbol in the Mach-O implementation is\n  annotated with `__attribute__((used))` to prevent LTO from deleting it\n  which we\u0027ve seen in the previous version.\n* `__is_function_overridden` is marked as `inline` so these symbols are\n  placed in a COMDAT (or fully inlined) to avoid duplicate symbol errors\n  which we\u0027ve seen in the previous version.\n\nGitOrigin-RevId: 841895543edcf98bd16027c6b85fe7c6419a4566\n"
    },
    {
      "commit": "450b4581a440fe0d2dd2fee3ea5c8e30aaaf2f41",
      "tree": "520163b8991ae3b241f47d3fa0bb1ab0567cd4b9",
      "parents": [
        "42c05091e67ed6f3b18dc970cf61d6af5ea09e4a"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "thakis@chromium.org",
        "time": "Thu Dec 19 15:52:19 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Dec 19 12:55:32 2024 -0800"
      },
      "message": "Revert \"[libcxx] Use alias for detecting overriden function (#114961)\"\n\nThis reverts commit 62bd10f7d18ca6f544286767cae2c9026d493888.\nBreaks building with -flto\u003dthin, see\nhttps://github.com/llvm/llvm-project/pull/114961#issuecomment-2555754056\n\nGitOrigin-RevId: 8dfae0c462e9558df77c83c97d89b4b83ed1baff\n"
    },
    {
      "commit": "42c05091e67ed6f3b18dc970cf61d6af5ea09e4a",
      "tree": "804f344c8a516cd0686b45ddd0e7dce4e5948ee7",
      "parents": [
        "eaa495d74e9b9020b1611387adad6da86d0ccf31"
      ],
      "author": {
        "name": "Petr Hosek",
        "email": "phosek@google.com",
        "time": "Tue Dec 17 08:16:26 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Dec 17 08:20:59 2024 -0800"
      },
      "message": "[libcxx] Use alias for detecting overriden function (#114961)\n\nThis mechanism is preferable in environments like embedded since it\ndoesn\u0027t require special handling of the custom section.\n\nGitOrigin-RevId: 62bd10f7d18ca6f544286767cae2c9026d493888\n"
    },
    {
      "commit": "eaa495d74e9b9020b1611387adad6da86d0ccf31",
      "tree": "520163b8991ae3b241f47d3fa0bb1ab0567cd4b9",
      "parents": [
        "3ce48956dee9d2209aa9504b8ea20b06dfc4732b"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Tue Dec 17 11:29:16 2024 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Dec 17 02:30:57 2024 -0800"
      },
      "message": "[libc++] Granularize \u003cnew\u003e includes (#119964)\n\nGitOrigin-RevId: 59890c13343af9e308281b3c76bac425087f4f8a\n"
    },
    {
      "commit": "3ce48956dee9d2209aa9504b8ea20b06dfc4732b",
      "tree": "692b6935c46bef5cbfa1f0f046647e12d5409f6e",
      "parents": [
        "d9cafa9ecfe5e174a003e05faa4fef512b5e7c63"
      ],
      "author": {
        "name": "Hubert Tong",
        "email": "hubert.reinterpretcast@gmail.com",
        "time": "Sat Dec 14 19:37:15 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Dec 14 17:20:59 2024 -0800"
      },
      "message": "NFC: clang-format test_demangle.pass.cpp but keep test \"lines\"\n\nAdd clang-format on/off around test \"lines\"\n\nRun clang-format without breaking string literals:\nclang-format --style\u003d\u0027{BasedOnStyle: llvm, BreakStringLiterals: false}\u0027\n-i test_demangle.pass.cpp\n\nAdd clang-format on/off on fp_literal_cases\n\nFixups: Split UNSUPPORTED to next line; xfail_cases trailing comma\n\nReplace physical tab\n\nGitOrigin-RevId: d33bf2e9df578ff7e44fd22504d6ad5a122b7ee6\n"
    },
    {
      "commit": "d9cafa9ecfe5e174a003e05faa4fef512b5e7c63",
      "tree": "5939ddcae3dce5f628feb24f1c939a702078e5fe",
      "parents": [
        "7c9a7aa397e299cfc30a345b5985623c60ffcf39"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Fri Dec 13 14:17:56 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Dec 13 11:21:05 2024 -0800"
      },
      "message": "[libc++] Granularize the \u003cnew\u003e header (#119270)\n\nThis disentangles the code which previously had a mix of many #ifdefs, a\nnon-versioned namespace and a versioned namespace. It also makes it\nclearer which parts of \u003cnew\u003e are implemented on Windows by including \u003cnew.h\u003e.\n\nGitOrigin-RevId: 9474e09459189fbed30f329a669f9c14979c5367\n"
    },
    {
      "commit": "7c9a7aa397e299cfc30a345b5985623c60ffcf39",
      "tree": "607b2ac2c1d140910d4d84493981088a6716369a",
      "parents": [
        "28ed932d2fa5ea303dd1c82a3078a195dfbfce58"
      ],
      "author": {
        "name": "Vitaly Buka",
        "email": "vitalybuka@google.com",
        "time": "Thu Dec 12 18:03:12 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Dec 12 18:06:24 2024 -0800"
      },
      "message": "[libc++abi] Build cxxabi with sanitizers (#119612)\n\nGitOrigin-RevId: 3de5e8b23f5c145b13d930eb5019566d3a6f88d5\n"
    },
    {
      "commit": "28ed932d2fa5ea303dd1c82a3078a195dfbfce58",
      "tree": "92127f7317a3a2b13777cbd545f8c5478ae3b46a",
      "parents": [
        "3ec6d9ecd7c8ef6c7b46a8fb877caf98b3fcdafb"
      ],
      "author": {
        "name": "Vitaly Buka",
        "email": "vitalybuka@google.com",
        "time": "Wed Dec 11 12:51:10 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Dec 11 12:54:19 2024 -0800"
      },
      "message": "[libc++abi] Don\u0027t do pointer arithmetic on nullptr (#119520)\n\n`nullptr + offset` is possible after `!is_virtual` branch.\n\nDetected with check-cxxabi on configured with:\n```\ncmake -DLLVM_APPEND_VC_REV\u003dOFF -GNinja \\\n  -DCMAKE_BUILD_TYPE\u003dRelease \\\n  -DLLVM_CCACHE_BUILD\u003dON \\\n  -DLLVM_USE_LINKER\u003dlld \\\n  -DLLVM_ENABLE_ASSERTIONS\u003dON \\\n  -DCMAKE_C_COMPILER\u003dclang \\\n  -DCMAKE_CXX_COMPILER\u003dclang++ \\\n  -DLIBCXXABI_USE_LLVM_UNWINDER\u003dOFF \\\n  -DCMAKE_INSTALL_PREFIX\u003d/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/libcxx_install_ubsan \\\n  \u0027-DLLVM_ENABLE_RUNTIMES\u003dlibcxx;libcxxabi;libunwind\u0027 \\\n  -DLIBCXX_TEST_PARAMS\u003dlong_tests\u003dFalse \\\n  -DLIBCXX_INCLUDE_BENCHMARKS\u003dOFF \\\n  -DLLVM_USE_SANITIZER\u003dUndefined \\\n  \u0027-DCMAKE_C_FLAGS\u003d-fsanitize\u003dundefined -fno-sanitize-recover\u003dall   -fno-sanitize\u003dvptr\u0027 \\\n  \u0027-DCMAKE_CXX_FLAGS\u003d-fsanitize\u003dundefined -fno-sanitize-recover\u003dall   -fno-sanitize\u003dvptr\u0027 \\\n  /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/../runtimes\n\n********************\nFailed Tests (2):\n  llvm-libc++abi-shared.cfg.in :: catch_null_pointer_to_object_pr64953.pass.cpp\n  llvm-libc++abi-shared.cfg.in :: catch_ptr_02.pass.cpp\n```\n\nGitOrigin-RevId: a54fce89fc8aff36c50e3a0ea2f92e1ab7093cf8\n"
    },
    {
      "commit": "3ec6d9ecd7c8ef6c7b46a8fb877caf98b3fcdafb",
      "tree": "90af13af08440859446f8236b28f054cbcb8d30e",
      "parents": [
        "86240549f4320181bc37ec4cd98a374dce6bccf5"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Wed Dec 11 12:49:06 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Dec 11 09:51:04 2024 -0800"
      },
      "message": "[libc++abi] Provide an explicit error when trying to build for MSVC (#119370)\n\nFixes #119322\n\nGitOrigin-RevId: b0b546d44777eb1fa25995384876bd14a006a929\n"
    },
    {
      "commit": "86240549f4320181bc37ec4cd98a374dce6bccf5",
      "tree": "f362ee6fa47002f780ae59e79c17d900991258d1",
      "parents": [
        "54a742eb38a527487bbe7eb7c2b204de1dd3d26f"
      ],
      "author": {
        "name": "Vitaly Buka",
        "email": "vitalybuka@google.com",
        "time": "Tue Dec 10 22:02:32 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Dec 10 22:05:31 2024 -0800"
      },
      "message": "[libc++abi] Don\u0027t leak in test (#119505)\n\nTrying to re-enable a test on bots\n\nhttps://github.com/llvm/llvm-zorg/blob/bb695735dba75e1a5dced13e836f4f46de464bac/zorg/buildbot/builders/sanitizers/buildbot_functions.sh#L443\n\nWhen we reach `terminate()` `exc` pointer is not\non the stack, so lsan correctly reports a leak.\n\nGitOrigin-RevId: a4538cdcee75b78b7165dda05c9aa7718c4837c4\n"
    },
    {
      "commit": "54a742eb38a527487bbe7eb7c2b204de1dd3d26f",
      "tree": "28ed23e46332a4d778038be5b4bf4e1607f9c19a",
      "parents": [
        "f1252b7d7560162bf9f8540622c61232fc9382b7"
      ],
      "author": {
        "name": "Hubert Tong",
        "email": "hubert.reinterpretcast@gmail.com",
        "time": "Tue Dec 10 20:24:15 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Dec 10 16:25:57 2024 -0800"
      },
      "message": "[libc++abi] Enable demangling of `cp` expression production (#114882)\n\nSee itanium-cxx-abi/cxx-abi#196\n\nGitOrigin-RevId: 918d4558b0bad366ecadd411ed48cf64728c68d7\n"
    },
    {
      "commit": "f1252b7d7560162bf9f8540622c61232fc9382b7",
      "tree": "b365e70e2a81437f85a9ffd93063480193bdddc1",
      "parents": [
        "58281d58c1499452925c3d114dbe8691d7900fef"
      ],
      "author": {
        "name": "Paul Kirth",
        "email": "paulkirth@google.com",
        "time": "Mon Dec 09 09:19:51 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Dec 09 09:21:20 2024 -0800"
      },
      "message": "[libcxxabi] Always link against libzircon for Fuchsia targets (#115910)\n\nWhen using LTO, the deplibs mechanism is insufficient to ensure that\nlibzircon is always brought into the link prior to LTO code generation.\nThe general problem is discussed in depth in\nhttps://github.com/llvm/llvm-project/issues/56070\n\nTo work around this, we can just provide libzircon as a link input.\n\nGitOrigin-RevId: fac9fcd55245479d040dde3f5e9f4e169c30a0ec\n"
    },
    {
      "commit": "58281d58c1499452925c3d114dbe8691d7900fef",
      "tree": "5ac72f06266882723fe5c62de9ba916eaf5780fb",
      "parents": [
        "852341c442c80f5bfcdc2f01efe19e391616b49e"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Fri Dec 06 15:30:02 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Dec 06 12:36:17 2024 -0800"
      },
      "message": "[libc++abi] Fix broken check for _LIBCPP_HAS_THREAD_API_PTHREAD (#118999)\n\nWe were still using the old `defined(_LIBCPP_HAS_THREAD_API_PTHREAD)`\ncheck, which is always true.\n\nGitOrigin-RevId: b23fc2c5bf92ae3bcd2ac4c784ead0ffba159f5a\n"
    },
    {
      "commit": "852341c442c80f5bfcdc2f01efe19e391616b49e",
      "tree": "59b4064f42b13eedaa8f53d19b5279f474b97245",
      "parents": [
        "a00ca264e8289f1537878bfe9bb3d54dca249504"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Wed Nov 13 11:57:16 2024 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Nov 13 03:00:48 2024 -0800"
      },
      "message": "[libc++] Make variables in templates inline (#115785)\n\nThe variables are all `constexpr`, which implies `inline`. Since they\naren\u0027t `constexpr` in C++03 they\u0027re also not `inline` there. Because of\nthat we define them out-of-line currently. Instead we can use the C++17\nextension of `inline` variables, which results in the same weak\ndefinitions of the variables but without having all the boilerplate.\n\nGitOrigin-RevId: b69ddbc62838f23ace237c206676b1ed1c882638\n"
    },
    {
      "commit": "a00ca264e8289f1537878bfe9bb3d54dca249504",
      "tree": "cfdc8bf9a1d0c59a5a20ef866e8b23fa8a688212",
      "parents": [
        "c5f21f3759ce7379136376d14532d59ce752dfc6"
      ],
      "author": {
        "name": "Alexander Richardson",
        "email": "alexrichardson@google.com",
        "time": "Mon Nov 11 16:20:44 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Nov 11 16:25:24 2024 -0800"
      },
      "message": "Revert \"Reapply \"[libc++abi] Stop copying headers to the build directory\"\" (#115793)\n\nReverts llvm/llvm-project#115379\n\nReverting since this broke the Fuchsia builders.\n\nGitOrigin-RevId: eaed095a566cf75aa7df208defeb101ce1a6ed96\n"
    },
    {
      "commit": "c5f21f3759ce7379136376d14532d59ce752dfc6",
      "tree": "6bfcfdccc9e7b8e3f30b982f2d8952d805477046",
      "parents": [
        "00d8a4895898bd96061d90684c923cc544fc07b8"
      ],
      "author": {
        "name": "Alexander Richardson",
        "email": "alexrichardson@google.com",
        "time": "Thu Nov 07 14:50:10 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Nov 07 14:54:00 2024 -0800"
      },
      "message": "Reapply \"[libc++abi] Stop copying headers to the build directory\"\n\nThis was needed before https://github.com/llvm/llvm-project/pull/115077\nsince the compiler-rt test build made assumptions about the build\nlayout of libc++ and libc++abi, but now they link against a local\ninstallation of these libraries so we no longer need this workaround.\n\nThe last attempt at landing this was reverted due to buildbot failures\nwhich should be fixed by https://github.com/llvm/llvm-zorg/pull/299.\n\nPull Request: https://github.com/llvm/llvm-project/pull/115379\n\nGitOrigin-RevId: fd799add2186356dc19e81106a1428a2edf7c20b\n"
    },
    {
      "commit": "00d8a4895898bd96061d90684c923cc544fc07b8",
      "tree": "cfdc8bf9a1d0c59a5a20ef866e8b23fa8a688212",
      "parents": [
        "60c8c7e631ef1d143fb269151331605f161c1439"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Nov 07 09:07:50 2024 -0500"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Nov 07 06:11:12 2024 -0800"
      },
      "message": "[libc++] Unify the benchmarks with the test suite (#101399)\n\nInstead of building the benchmarks separately via CMake and running them\nseparately from the test suite, this patch merges the benchmarks into\nthe test suite and handles both uniformly.\n\nAs a result:\n- It is now possible to run individual benchmarks like we run tests\n  (e.g. using libcxx-lit), which is a huge quality-of-life improvement.\n\n- The benchmarks will be run under exactly the same configuration as\n  the rest of the tests, which is a nice simplification. This does\n  mean that one has to be careful to enable the desired optimization\n  flags when running benchmarks, but that is easy with e.g.\n  `libcxx-lit \u003c...\u003e --param optimization\u003dspeed`.\n\n- Benchmarks can use the same annotations as the rest of the test\n  suite, such as `// UNSUPPORTED` \u0026 friends.\n\nWhen running the tests via `check-cxx`, we only compile the benchmarks\nbecause running them would be too time consuming. This introduces a bit\nof complexity in the testing setup, and instead it would be better to\nallow passing a --dry-run flag to GoogleBenchmark executables, which is\nthe topic of https://github.com/google/benchmark/issues/1827.\n\nI am not really satisfied with the layering violation of adding the\n%{benchmark_flags} substitution to cmake-bridge, however I believe\nthis can be improved in the future.\n\nGitOrigin-RevId: e236a52a88956968f318fb908c584e5cb80b5b03\n"
    },
    {
      "commit": "60c8c7e631ef1d143fb269151331605f161c1439",
      "tree": "c7184a1a313166e151a21c77d48beadcf6769aad",
      "parents": [
        "127f1c0790e08719fe64c1c287b0d1f7cc3646e7"
      ],
      "author": {
        "name": "Alexander Richardson",
        "email": "alexrichardson@google.com",
        "time": "Wed Nov 06 15:07:30 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Nov 06 15:11:20 2024 -0800"
      },
      "message": "Revert \"[libc++abi] Stop copying headers to the build directory\" (#115232)\n\nReverts llvm/llvm-project#115086\n\n2-stage sanitizer build is not happy:\nhttps://lab.llvm.org/buildbot/#/builders/25/builds/3915\n\nGitOrigin-RevId: d08772b1512f630240d8b7feaab749e659d3fce8\n"
    },
    {
      "commit": "127f1c0790e08719fe64c1c287b0d1f7cc3646e7",
      "tree": "b1d5409225acb9ec2daf0f78071f570af09d1065",
      "parents": [
        "d79544d587f895eeffc579ddcdcbb665ba670da0"
      ],
      "author": {
        "name": "Alexander Richardson",
        "email": "alexrichardson@google.com",
        "time": "Wed Nov 06 11:59:37 2024 -0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Nov 06 12:00:15 2024 -0800"
      },
      "message": "[libc++abi] Stop copying headers to the build directory\n\nThis was needed before https://github.com/llvm/llvm-project/pull/115077\nsince the compiler-rt test build made assumptions about the build\nlayout of libc++ and libc++abi, but now they link against a local\ninstallation of these libraries so we no longer need this workaround.\n\nReviewed By: ldionne\n\nPull Request: https://github.com/llvm/llvm-project/pull/115086\n\nGitOrigin-RevId: 5be02d7a03c6d40d4d71264936d4aab98e4186aa\n"
    },
    {
      "commit": "d79544d587f895eeffc579ddcdcbb665ba670da0",
      "tree": "c7184a1a313166e151a21c77d48beadcf6769aad",
      "parents": [
        "d3b3b5e60292fb6e387fe1049e0d19a7b9473f59"
      ],
      "author": {
        "name": "Hubert Tong",
        "email": "hstong@ca.ibm.com",
        "time": "Sat Nov 02 23:05:46 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Nov 04 14:20:58 2024 -0800"
      },
      "message": "NFC: Demangler README.txt: Fix LLVM unittests path\n\nGitOrigin-RevId: e9de53875b9005233f07a68d80e144af8607893b\n"
    },
    {
      "commit": "d3b3b5e60292fb6e387fe1049e0d19a7b9473f59",
      "tree": "092780fbcfdd080dc8af07790a746ee3b322ee61",
      "parents": [
        "e4578988931c93404b082fcd602b1711247b9764"
      ],
      "author": {
        "name": "c8ef",
        "email": "c8ef@outlook.com",
        "time": "Tue Nov 05 00:18:31 2024 +0800"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Nov 04 08:21:09 2024 -0800"
      },
      "message": "[demangler] Enhance demangling in llvm-cxxfilt for fixed-point types. (#114257)\n\nThis patch adds support for fixed-point type in demanger.\n\nCloses #114090.\n\nGitOrigin-RevId: 7da9da0b1902fe04985753d20dd37a9edd05dd41\n"
    },
    {
      "commit": "e4578988931c93404b082fcd602b1711247b9764",
      "tree": "c936ba1d27acc2cba01f47d5d2d026794357aa5d",
      "parents": [
        "77ea6be97041f7888cf10d57172a045ff0dc3245"
      ],
      "author": {
        "name": "Ryan Mansfield",
        "email": "ryan_mansfield@apple.com",
        "time": "Thu Oct 31 11:37:03 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 31 08:40:53 2024 -0700"
      },
      "message": "[libc++abi] Fix user prompt in cp-to-llvm.sh. (#114268)\n\nUser prompt wasn\u0027t listing the files to be copied.\n\nGitOrigin-RevId: df9301ed5831f4c9dd531cbc9dd0d54de3210419\n"
    },
    {
      "commit": "77ea6be97041f7888cf10d57172a045ff0dc3245",
      "tree": "913a7d8324ff01c6df8288ab9676c473160b21c7",
      "parents": [
        "40b0fc6335e24ad866ef93c464e930393dbb23fc"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Thu Oct 31 02:20:10 2024 +0100"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 30 18:25:45 2024 -0700"
      },
      "message": "[libc++] Granularize \u003ccstddef\u003e includes (#108696)\n\nGitOrigin-RevId: e99c4906e44ae3f921fa05356909d006cda8d954\n"
    },
    {
      "commit": "40b0fc6335e24ad866ef93c464e930393dbb23fc",
      "tree": "391593b45ef18dff8abbe6624c47ac6c69327c79",
      "parents": [
        "b57075a8abbb8423ffb97314ff195aa015bed25f"
      ],
      "author": {
        "name": "Vitaly Buka",
        "email": "vitalybuka@google.com",
        "time": "Thu Oct 24 23:12:32 2024 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 24 23:15:43 2024 -0700"
      },
      "message": "Revert \"[runtimes] Probe for -nostdlib++ and -nostdinc++ with the C compiler\" (#113653)\n\nReverts llvm/llvm-project#108357\n\nBreaks https://lab.llvm.org/buildbot/#/builders/164/builds/3908 and\nsimilar bots\n\nGitOrigin-RevId: 240e4780680f0d6a760be1b9ea432f410424b3a5\n"
    },
    {
      "commit": "b57075a8abbb8423ffb97314ff195aa015bed25f",
      "tree": "0423438aeef1a8bc23b73a45188be066898495ee",
      "parents": [
        "b5db09843c986cf960cde19dc4bd460262a6e62c"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Thu Oct 24 23:46:04 2024 +0300"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 24 13:51:25 2024 -0700"
      },
      "message": "[runtimes] Probe for -nostdlib++ and -nostdinc++ with the C compiler (#108357)\n\nWhile these flags semantically are relevant only for C++, we do add them\nto CMAKE_REQUIRED_FLAGS if they are detected. All flags in that variable\nare used both when testing compilation of C and C++ (and for detecting\nlibraries, which uses the C compiler driver).\n\nTherefore, to be sure we safely can add the flags to\nCMAKE_REQUIRED_FLAGS, test for the option with the C language.\n\nThis should fix compilation with GCC; newer versions of GCC do support\nthe -nostdlib++ option, but it\u0027s only supported by the C++ compiler\ndriver, not the C driver. (However, many builds of GCC also do accept\nthe option with the C driver, if GCC was compiled with Ada support\nenabled, see [1]. That\u0027s why this issue isn\u0027t noticed in all\nconfigurations with GCC.)\n\nClang does support these options in both C and C++ driver modes.\n\nThis should fix #90332.\n\n[1]\nhttps://github.com/llvm/llvm-project/issues/90332#issuecomment-2325099254\n\nGitOrigin-RevId: 75d0281bc81f0040c24d15bdf9c5cc46e9237224\n"
    },
    {
      "commit": "b5db09843c986cf960cde19dc4bd460262a6e62c",
      "tree": "391593b45ef18dff8abbe6624c47ac6c69327c79",
      "parents": [
        "8e34d39ca895e3527a13273824f76610bedf4e74"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 17 16:17:40 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 17 13:20:38 2024 -0700"
      },
      "message": "[runtimes] Improve the documentation for LIBCXX_ADDITIONAL_COMPILE_FLAGS (#112733)\n\nThis clarifies how that option is meant to be used to avoid confusion.\nAs a drive-by, also fix an incorrect usage in the recently-added GPU\ncaches.\n\nGitOrigin-RevId: e67442486d5efd48235f62b438557bc95193fc48\n"
    },
    {
      "commit": "8e34d39ca895e3527a13273824f76610bedf4e74",
      "tree": "01cbad89049d881b70ec7e3e45ac5c89062e4c9f",
      "parents": [
        "00a8d547b78bd9f01172b4963a3a75fa546423b8"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 17 16:15:33 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 17 13:20:32 2024 -0700"
      },
      "message": "[runtimes] Avoid cluttering the top-level build directory with test artifacts (#112717)\n\nInstead of placing artifacts for testing the runtimes at \u003cbuild\u003e/test,\nplace those artifacts at \u003cbuild\u003e/\u003cproject\u003e/test. This prevents\ncluttering the build directory with the runtimes\u0027 test artifacts for\neveryone else.\n\nAs a drive-by, remove LIBCXX_BINARY_INCLUDE_DIR which wasn\u0027t used\nanymore.\n\nGitOrigin-RevId: 8c77f4c5087ac5a8e5dc08e472cf06897689a68b\n"
    },
    {
      "commit": "00a8d547b78bd9f01172b4963a3a75fa546423b8",
      "tree": "ba57167994df97ab4b17242b7b534f652324d986",
      "parents": [
        "e16c7f83e6ff69f170c33848b223bf366513a5c7"
      ],
      "author": {
        "name": "Nikolas Klauser",
        "email": "nikolasklauser@berlin.de",
        "time": "Sat Oct 12 09:49:52 2024 +0200"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Oct 12 00:56:16 2024 -0700"
      },
      "message": "[libc++][RFC] Always define internal feature test macros (#89178)\n\nCurrently, the library-internal feature test macros are only defined if\nthe feature is not available, and always have the prefix\n`_LIBCPP_HAS_NO_`. This patch changes that, so that they are always\ndefined and have the prefix `_LIBCPP_HAS_` instead. This changes the\ncanonical use of these macros to `#if _LIBCPP_HAS_FEATURE`, which means\nthat using an undefined macro (e.g. due to a missing include) is\ndiagnosed now. While this is rather unlikely currently, a similar change\nin `\u003c__configuration/availability.h\u003e` caught a few bugs. This also\nimproves readability, since it removes the double-negation of `#ifndef\n_LIBCPP_HAS_NO_FEATURE`.\n\nThe current patch only touches the macros defined in `\u003c__config\u003e`. If\npeople are happy with this approach, I\u0027ll make a follow-up PR to also\nchange the macros defined in `\u003c__config_site\u003e`.\n\nGitOrigin-RevId: ba87515fea90b5d55836a8e3be63a7e683ce299d\n"
    },
    {
      "commit": "e16c7f83e6ff69f170c33848b223bf366513a5c7",
      "tree": "957739257ecbb3a9e30fb790596441a0e45f1072",
      "parents": [
        "1587e07299a4be1a962e8bddd8ba2a9ead703dae"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Fri Oct 11 09:27:22 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 11 06:29:52 2024 -0700"
      },
      "message": "[libc++abi] Remove unused LIBCXXABI_LIBCXX_INCLUDES CMake option (#111824)\n\nThis hasn\u0027t been used for several years, so it\u0027s effectively dead code\nat this point.\n\nGitOrigin-RevId: 923fef903853d61ccef39e8ac770693bf145207f\n"
    },
    {
      "commit": "1587e07299a4be1a962e8bddd8ba2a9ead703dae",
      "tree": "5c73c827e06176c66523860b36f3375c053f5605",
      "parents": [
        "0bf12d73f37540331c732a4168fd09d274b8bffa"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 10 13:13:17 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 10 10:16:05 2024 -0700"
      },
      "message": "[runtimes][NFC] Reindent CMake files (#111821)\n\nThis is a purely mechanical commit for fixing the indentation of the\nruntimes\u0027 CMakeLists files after #80007. That PR didn\u0027t update the\nindentation in order to make the diff easier to review and for merge\nconflicts to be easier to resolve (for downstream changes).\n\nThis doesn\u0027t change any code, it only reindents it.\n\nGitOrigin-RevId: 43ba97e7079525a9686e15a6963508dfbd493f81\n"
    },
    {
      "commit": "0bf12d73f37540331c732a4168fd09d274b8bffa",
      "tree": "21d1b8437ce4456779fcce74e832f6fb8c36396b",
      "parents": [
        "6525ff85167bfe8110a0871e49e099c6a3ccde31"
      ],
      "author": {
        "name": "Louis Dionne",
        "email": "ldionne.2@gmail.com",
        "time": "Thu Oct 10 08:00:01 2024 -0400"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 10 05:04:10 2024 -0700"
      },
      "message": "[runtimes] Always define cxx_shared, cxx_static \u0026 other targets (#80007)\n\nThis patch always defines the cxx_shared, cxx_static \u0026 other top-level\ntargets. However, they are marked as EXCLUDE_FROM_ALL when we don\u0027t want\nto build them. Simply declaring the targets should be of no harm, and it\nallows other projects to mention these targets regardless of whether\nthey end up being built or not.\n\nThis patch basically moves the definition of e.g. cxx_shared out of the\n`if (LIBCXX_ENABLE_SHARED)` and instead marks it as EXCLUDE_FROM_ALL\nconditionally on whether LIBCXX_ENABLE_SHARED is passed. It then does\nthe same for libunwind and libc++abi targets. I purposefully avoided to\nreformat the files (which now has inconsistent indentation) because I\nwanted to keep the diff minimal, and I know this is an area of the code\nwhere folks may have downstream diffs. I will re-indent the code\nseparately once this patch lands.\n\nThis is a reapplication of 79ee0342dbf0, which was reverted in\na3539090884c because it broke the TSAN and the Fuchsia builds.\n\nResolves #77654\n\nDifferential Revision: https://reviews.llvm.org/D134221\n\nGitOrigin-RevId: 917ada35cd937ad4104dff89c48398bd796ba6b7\n"
    }
  ],
  "next": "6525ff85167bfe8110a0871e49e099c6a3ccde31"
}
