)]}'
{
  "log": [
    {
      "commit": "57e70810b30fde2fb8d134edf5ae9a94d0113657",
      "tree": "9b4a46bd8590ed053c3f5cb91371f1d46f09cd51",
      "parents": [
        "5b5078d65c793bcfbe60b1f99cf178474fbe32b8"
      ],
      "author": {
        "name": "Schrodinger ZHU Yifan",
        "email": "yfzhu@google.com",
        "time": "Wed Jun 03 00:12:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Jun 03 00:16:41 2026"
      },
      "message": "[libc] add shrink in-place support for reallocations (#200272)\n\nThis PR adds shrinking in-place for the freelist heap. This allows the\nheap to reuse the place if the reallocation shrinks the size larger than\na minimal block unit.\n\nSynthesized random action tests show that that increase heap utilization\nrate from 87% to 97% percent, basically aligns with the expectation of\ndlmalloc.\n\nAssisted-by: AI tools, manually checked.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 243ddf607bbe4841cfe734507120c8d8ddc41eca\n"
    },
    {
      "commit": "5b5078d65c793bcfbe60b1f99cf178474fbe32b8",
      "tree": "b231d1c84695f3c18de1bceefa92b3b375f88f88",
      "parents": [
        "baa391ec8bb5d2b901da08faf4f0635e877803dc"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue Jun 02 19:23:23 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 19:25:56 2026"
      },
      "message": "[libc] Move INET_ADDRSTRLEN and INET6_ADDRSTRLEN to a common header (#201083)\n\nINET_ADDRSTRLEN and INET6_ADDRSTRLEN are needed by both \u003cnetinet/in.h\u003e\nand \u003carpa/inet.h\u003e. Previously we had them defined directly inside\nnetinet-in-macros.h, which meant arpa/inet.h did not have access to\nthem.\n\nI\u0027ve moved them to a new inet-address-macros.h header and configured\nboth YAML header targets to depend on it so they get included in both\ngenerated headers.\n\nI\u0027m also updating the docgen YAML file for arpa/inet.h to document these\nmacros.\n\nNote that other libc implementations simply have arpa/inet.h include\nnetinet/in.h (which is permitted by POSIX). This implementation takes a\nstricter stance and only exposes the symbols which are specified by\nPOSIX.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c6c633740c305684645ec2b093bf36587fdbc54f\n"
    },
    {
      "commit": "baa391ec8bb5d2b901da08faf4f0635e877803dc",
      "tree": "0119aaeb481464198cefe1fb52b018d1e157a486",
      "parents": [
        "24ea930285ce127dce1b2038f26f32b8532c4b9d"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue Jun 02 17:49:02 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 17:50:30 2026"
      },
      "message": "[libc] Add definition of struct in6_addr to netinet/in.h (#201057)\n\nThis patch implements the struct in6_addr definition for netinet/in.h,\nmapping it from netinet/in.yaml to the generated public header.\n\nI\u0027ve defined struct in6_addr under include/llvm-libc-types/ using an\nanonymous union containing s6_addr, s6_addr16, and s6_addr32 (only the\nfirst one is mandated by POSIX). Other implementations achieve this by\nusing a named union and defining the members as macros. This approach is\ncleaner, but could potentially run into compatibility problems with code\nwhich expects s6_addr is a macro. If we do, we may have to re-evaluate\nthis approach, but I\u0027d like to avoid uglyfying this preemptively.\n\nI added a simple test to check the memory layout of the address.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 05d152bd59372aa3e10bbf06deae5795a81052d9\n"
    },
    {
      "commit": "24ea930285ce127dce1b2038f26f32b8532c4b9d",
      "tree": "250afadbe80cb7ecf78eed25f44d7feaba4e8ea3",
      "parents": [
        "7d6951c9f36373397b05934215396c71ecdc4567"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue Jun 02 13:42:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 13:45:37 2026"
      },
      "message": "[libc] Use linux_syscalls::open instead of manual SYS_open ifdefs (#201089)\n\nI needed to clean up a few types in file.cpp in order to match the\nwrapper prototype.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3db25f80895d281d2d3921bb15677e0c8de03c7a\n"
    },
    {
      "commit": "7d6951c9f36373397b05934215396c71ecdc4567",
      "tree": "301f849523bc6e0f3901671f80796eb0b47ef1f9",
      "parents": [
        "e07e7f2368acb94cdd5be543edee8a3f0adcbbae"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Tue Jun 02 13:15:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 13:18:25 2026"
      },
      "message": "[libc] Define _POSIX_THREADS and support _SC_THREADS in sysconf (#201091)\n\nDefined the _POSIX_THREADS macro to 202405L in unistd-macros.h for Linux\nto signal POSIX thread support.\n\nAlso implemented runtime support for _SC_THREADS in sysconf, returning\n_POSIX_THREADS, and added _SC_THREADS and _POSIX_THREADS to the public\nunistd.yaml specification.\n\nAdded compile-time and runtime tests to verify _POSIX_THREADS definition\nand sysconf(_SC_THREADS) behavior. Standardized header comments in\nunistd-macros.h to conform to LLVM style.\n\nAssisted-by: Automated tooling, human reviewed.\n\n---------\n\nCo-authored-by: Pavel Labath \u003cpavel@labath.sk\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 52fd3ec25a3d9a20efae59c453a2450bf633a970\n"
    },
    {
      "commit": "e07e7f2368acb94cdd5be543edee8a3f0adcbbae",
      "tree": "77b1006166a641aaed7cd7b35b72314af2ac54f6",
      "parents": [
        "645d4b135a2e92469d4e9f8481e298110a765da1"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Tue Jun 02 12:27:32 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 12:31:00 2026"
      },
      "message": "[libc] Define SSIZE_MAX in limits-macros.h (#201087)\n\nDefined SSIZE_MAX in limits-macros.h to support POSIX compliance.\nApplications compiling against LLVM libc require SSIZE_MAX to be defined\nin limits.h.\n\nSSIZE_MAX is defined strictly in terms of __PTRDIFF_MAX__, matching\nssize_t defined as __PTRDIFF_TYPE__, ensuring they are always\nstructurally aligned and compile-time safe.\n\nAdded Doxygen comments for SSIZE_MAX.\nAdded SSIZE_MAX to limits.yaml and added a unit test in limits_test.cpp\nto verify the definition.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 10d3c6779d9faffed0a1d686ea76ee2cec48bd06\n"
    },
    {
      "commit": "645d4b135a2e92469d4e9f8481e298110a765da1",
      "tree": "48df529921ba672531f81c279164547b76233098",
      "parents": [
        "c41476a94b1804258f342e3a9ff6d4320d0e9303"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue Jun 02 09:40:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 09:45:41 2026"
      },
      "message": "[libc] Add sys/sendfile.h to the public header list (#201062)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 924388cd4bffe04cd6f191da0cd7015a19c673ef\n"
    },
    {
      "commit": "c41476a94b1804258f342e3a9ff6d4320d0e9303",
      "tree": "261769ade5681158960df35b18396a0135c2654c",
      "parents": [
        "bd5ae5838b30930934a0458f03a8edd8d317e55d"
      ],
      "author": {
        "name": "Alexey Samsonov",
        "email": "vonosmas@gmail.com",
        "time": "Mon Jun 01 23:23:02 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 23:26:00 2026"
      },
      "message": "[libc] Add a placeholder for swprintf function (#200895)\n\nAdd a declaration and stub implementation for the `swprintf` function.\nOnly enable it when `LLVM_LIBC_ENABLE_EXPERIMENTAL_ENTRYPOINTS` is\nspecified to clarify that the implementation is not ready yet.\n\nWe\u0027re singling out `swprintf` among the other wide-character formatting\nfunctions because it\u0027s used in libc++ to implement `std::to_wstring` for\nfloating point values\n(https://github.com/llvm/llvm-project/blob/2a2e45257b8277ae6dbd3bce1627a9b07d1a301d/libcxx/src/string.cpp#L366),\nand is the last remaining piece of functionality preventing us from\nturning on wide character support in libc++ built against llvm-libc.\nAdding the stub function would allow us to test the compilation with\n`_LIBCPP_HAS_WIDE_CHARACTERS` enabled, and start keeping track of what\ntests from libc++ test suite are working / not working yet.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1460e27c8d38bd9632e1bd95d1f534ba71996a02\n"
    },
    {
      "commit": "bd5ae5838b30930934a0458f03a8edd8d317e55d",
      "tree": "8563f7db050427e93b2f3cdc25b2824bf8a78038",
      "parents": [
        "9427458ccb9adc42f89c623896851b24f46f9de1"
      ],
      "author": {
        "name": "Zorojuro",
        "email": "sawantsukumar@gmail.com",
        "time": "Mon Jun 01 22:03:31 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 22:05:29 2026"
      },
      "message": "[libc] Renaming Float128 (DyadicFloat\u003c128\u003e) to DFloat128 (#200907)\n\nThis is to be able to use the `Float128` for emulated float128 type.\n[#200565 ](https://github.com/llvm/llvm-project/pull/200565)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9bda223f692b10d4311331e2c2ae82293b8af63e\n"
    },
    {
      "commit": "9427458ccb9adc42f89c623896851b24f46f9de1",
      "tree": "63aa777b6fc6ce4d286f4d96263b3516092ff813",
      "parents": [
        "6e5ec6f78d8b9f2e8a50fcc5692d1fc8b2964bde"
      ],
      "author": {
        "name": "Marcos Ramirez Joos",
        "email": "mramirezjoos.oss@proton.me",
        "time": "Mon Jun 01 21:36:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 21:40:42 2026"
      },
      "message": "[libc] Add FENV_ACCESS pragma with CMake compiler feature detection (#200268)\n\nRelated to https://github.com/llvm/llvm-project/pull/199009\n\nAdded compiler feature detection for _STDC FENV_ACCESS_ pragma. It is\nused to conditionally add function-scoped `#pragma STDC FENV_ACCESS ON`\nto `libc/src/__support/FPUtil/FEnvAccess.h`, whenever functions from the\n`\u003cfenv.h\u003e` header are called and the target supports the pragma.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f254ae6f7f12042d3822c64d4467fe3d385f992c\n"
    },
    {
      "commit": "6e5ec6f78d8b9f2e8a50fcc5692d1fc8b2964bde",
      "tree": "95bbb58fb4c3c86534d5e2ec0c0b7640f25ccfa4",
      "parents": [
        "30343f800130ea093ae943c071735797fcb90272"
      ],
      "author": {
        "name": "Zorojuro",
        "email": "sawantsukumar@gmail.com",
        "time": "Mon Jun 01 18:30:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 18:36:04 2026"
      },
      "message": "[libc][math] Adding constexpr to tests for Double-type math functions  (#200681)\n\nSimilar to\n```CPP\n  constexpr uint64_t X_COUNT \u003d 123;\n  constexpr uint64_t X_START \u003d FPBits(0.25).uintval();\n  constexpr uint64_t X_STOP \u003d FPBits(4.0).uintval();\n  constexpr uint64_t X_STEP \u003d (X_STOP - X_START) / X_COUNT;\n\n  constexpr uint64_t Y_COUNT \u003d 137;\n  constexpr uint64_t Y_START \u003d FPBits(0.25).uintval();\n  constexpr uint64_t Y_STOP \u003d FPBits(4.0).uintval();\n  constexpr uint64_t Y_STEP \u003d (Y_STOP - Y_START) / Y_COUNT;\n  ```\n  in [atan2_test.cpp](https://github.com/llvm/llvm-project/blob/main/libc/test/src/math/atan2_test.cpp)\n  This PR tends to add constexpr to all double function tests-only\n\n  Additonally, replacing\n  ``` CPP\n  LIBC_NAMESPACE::fputil::FPBits\u003cdouble\u003e(x).uintval();\n   ```\nto\n```CPP\nFPBits(x).uintval();\n```\n  Assisted using Copilot.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0f1f234990f40c942fb8b87cd2141c48848b8253\n"
    },
    {
      "commit": "30343f800130ea093ae943c071735797fcb90272",
      "tree": "d25007e9adf1f3a1af0225e5b793d0be97b0da1b",
      "parents": [
        "2f7782ab33bd578b9ad82816c39bff03391884f5"
      ],
      "author": {
        "name": "Aayush Shrivastava",
        "email": "79578660+iamaayushrivastava@users.noreply.github.com",
        "time": "Mon Jun 01 17:39:09 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 17:40:39 2026"
      },
      "message": "[libc][math] Add missing math.yaml entries for acospif and atan2f16 (#199442)\n\nFixes #199266\n\nThis PR adds missing `math.yaml` entries for `acospif` and `atan2f16`.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cd6891edcffa29284bb0815ec771467facaf3f35\n"
    },
    {
      "commit": "2f7782ab33bd578b9ad82816c39bff03391884f5",
      "tree": "061888cbeb09a2c96703210db872f3967e73faf9",
      "parents": [
        "a58b79ecef076d408f58d595e780cb5cbaf5d632"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon Jun 01 15:38:04 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 15:41:04 2026"
      },
      "message": "[libc] Add netinet/udp.h containing struct udphdr (#200839)\n\nThis patch adds a generated \u003cnetinet/udp.h\u003e containing the `udphdr`\nstructure definition.\n\nThere are two styles (\"linux\" and \"BSD\") of udphdr field names (and both\nof them can be found in the wild), so I follow the glibc and bionic\napproach of using an anonymous union. (musl uses a #define on the field\nnames, which doesn\u0027t seem that great).\n\nI\u0027ve added the target to `include/CMakeLists.txt` and registered it\nunder target lists in `headers.txt` for the supported Linux platforms\n(x86_64, aarch64, and riscv).\n\nTo verify layout and alignment correctness, I\u0027ve added a layout and\nfield compatibility unit test under `test/src/netinet/udp_test.cpp`.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 96f5b177203af235f59e9c3512dd3734a4edbefb\n"
    },
    {
      "commit": "a58b79ecef076d408f58d595e780cb5cbaf5d632",
      "tree": "29178174c1d4c6f4a901a470858c9913bd5c93e5",
      "parents": [
        "e42e027f7bedc3fb6f458abfa46e14f451310fef"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon Jun 01 13:59:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 14:00:48 2026"
      },
      "message": "[libc] Add sys/uio.h to Linux public header target lists (#200793)\n\nThe headers don\u0027t get installed without this.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a2d89d1938837362c367f40dc22891e1471e7de7\n"
    },
    {
      "commit": "e42e027f7bedc3fb6f458abfa46e14f451310fef",
      "tree": "cbc4d7c20c2762d955a247e8137523505f375ee6",
      "parents": [
        "62ee4bc51c5e14f5a11cf306fafcd17a383a87cb"
      ],
      "author": {
        "name": "David Spickett",
        "email": "david.spickett@arm.com",
        "time": "Mon Jun 01 10:20:45 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 10:25:46 2026"
      },
      "message": "[docs] Remove all references to Maintainers.rst (#200368)\n\nAll projects are using Maintainers.md files as of #200365.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 919f72a12f14c6b30400dc84584fd33846ffb008\n"
    },
    {
      "commit": "62ee4bc51c5e14f5a11cf306fafcd17a383a87cb",
      "tree": "5aea4b8e6cc36cf70efcc0019989167e9985d414",
      "parents": [
        "81b894cf157776822585cde099808bc3e4683022"
      ],
      "author": {
        "name": "Sonal Pinto",
        "email": "sonalpinto@gmail.com",
        "time": "Mon Jun 01 08:58:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 08:59:25 2026"
      },
      "message": "[libc][math] Guard f16 math headers to fix certain 32-bit ARM builds (#200715)\n\nWrap hypotf16.h and expxf16_utils.h in LIBC_TYPES_HAS_FLOAT16 macros\nlike other flaot16 math headers. This fixes build breaks on systems\nwhere float16 is unsupported (like some 32-bit ARM).\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ae1d75e6071e51fff924c6904852fc3a2ae56687\n"
    },
    {
      "commit": "81b894cf157776822585cde099808bc3e4683022",
      "tree": "eb2807de869994bf621ec132ca5e7e67181babfb",
      "parents": [
        "b83509d7efc416fb4db4d65df489e66e19a5b9f2"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon Jun 01 08:10:52 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 08:11:32 2026"
      },
      "message": "[libc] Add netinet/tcp.h header (#200356)\n\nThis patch adds the netinet/tcp.h header definition. For now I\u0027m only\nadding TCP_NODELAY to it, as that\u0027s the only constant specified by\nPOSIX.\n\nI also include the header in the public headers list for linux targets\nand hook it up to the implementation status docs.\n\nI don\u0027t add a test as this is just a constant definition, and it would\nbe very hard to devise (if even possible over a loopback interface) a\ntest to check that the option has the desired effect (in fact, POSIX\nsays that an implementation doesn\u0027t even have to let you set the\noption).\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 261e0f4ec53f1e98a6c5c3a958827eb83c4e4dd9\n"
    },
    {
      "commit": "b83509d7efc416fb4db4d65df489e66e19a5b9f2",
      "tree": "e463a7f751b1421c9c40aa49998804c5b6e3d53a",
      "parents": [
        "9309c117ebae84dd2f9df1ef99de4782162527d5"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Mon Jun 01 06:38:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 06:40:33 2026"
      },
      "message": "[libc] Add sys/param.h header (#200559)\n\nAdded the sys/param.h header containing standard BSD macros:\n\n* NBBY\n* MIN and MAX\n* howmany, roundup, and powerof2\n* MAXPATHLEN\n\nThe macros are defined in llvm-libc-macros/sys-param-macros.h with\nguards to prevent redefinition conflicts.\n\nEnabled the header for x86_64, aarch64, riscv, and arm Linux targets.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: dbe5e3391c0f7ecb4dd5b3f8943c1ebf689e4118\n"
    },
    {
      "commit": "9309c117ebae84dd2f9df1ef99de4782162527d5",
      "tree": "d1d0821ca4748b23802bfc8456aa89bc5773ff5e",
      "parents": [
        "492e6928aeab3245d9cc56047e43e26b89c0ea77"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Sat May 30 23:59:41 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun May 31 00:00:25 2026"
      },
      "message": "[libc][wctype] Rename src/wctype/wctype.h to avoid name collision with system header. (#200613)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7a07381d55111165be955ae7919c460b71aed0ae\n"
    },
    {
      "commit": "492e6928aeab3245d9cc56047e43e26b89c0ea77",
      "tree": "47eeabd4bd42be2d091c611ec92cf62cbaaa29f7",
      "parents": [
        "af47a60389c5e940f0f24122571b6458dc3e43aa"
      ],
      "author": {
        "name": "Mikhail R. Gadelha",
        "email": "mikhail@igalia.com",
        "time": "Sat May 30 15:39:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 30 15:45:45 2026"
      },
      "message": "[libc] Tag cpp::byte with gnu::may_alias (#200462)\n\nClang\u0027s TBAA grants the [basic.lval]/11.3 char-aliasing privilege only\nto the named ::std::byte type (Type::isStdByteType() requires the enum\nto be declared in the std namespace). LIBC_NAMESPACE::cpp::byte lives in\nlibc\u0027s cpp namespace, so it gets its own TBAA node disjoint from char\neven though it has the same shape as std::byte.\n\nThat mismatch lets the optimizer reorder typed loads past raw-byte\nwrites through cpp::byte *, miscompiling HeapSort on rv64/Release\n(UnsortedThreeElementArray{1,2,3}, UnsortedTwoElementArray1 in\nSortingTest.h). The same hazard is latent in every cpp::byte *-based\nraw-aliasing site: memory_utils Ptr/CPtr, lsearch/lfind, block.h and\nfreelist_heap.h allocator metadata.\n\nTag the type with gnu::may_alias so accesses through cpp::byte * share\nthe universal char-aliasing TBAA node, fixing all of the above in one\nplace. This patch also reverts PR #194171, as the may_alias attribute\nfixes it too.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0d1ed9383d1dc5133409e5088e336bc54700fbf7\n"
    },
    {
      "commit": "af47a60389c5e940f0f24122571b6458dc3e43aa",
      "tree": "7b4c14e93cc146e61e2494cf0d3369a01ce411f4",
      "parents": [
        "0b44c5d0a840c8b7fc9f4844fb6d0f52b24493ca"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Fri May 29 18:57:55 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 19:01:20 2026"
      },
      "message": "[libc] Fix SSE2 check for x86_64/sqrt.h. (#200468)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 6a96948271810324d02b23d31a83bc2166f4c787\n"
    },
    {
      "commit": "0b44c5d0a840c8b7fc9f4844fb6d0f52b24493ca",
      "tree": "f7d20509342410f0b7708d646cf39acc5c314932",
      "parents": [
        "93f95f90e5563de49d11f6794e90288524f35e9c"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Fri May 29 16:52:11 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 16:55:14 2026"
      },
      "message": "[libc][NFC] Add few options to allow users to skip building and running some tests. (#199474)\n\nThese options will be used to reduce redundancy and time for precommit\nCIs:\n- LIBC_TEST_SKIP_DEATH_TESTS\n- LIBC_TEST_SKIP_SHARED_MATH_TESTS\n- LIBC_TEST_CHECK_LIBC_BUILD_ONLY\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2f2122a1438116b6e4d159bc8c7d7abe49ce7098\n"
    },
    {
      "commit": "93f95f90e5563de49d11f6794e90288524f35e9c",
      "tree": "58a1b18aed76a8ad5f10bc3c924d23b9f76def67",
      "parents": [
        "58cfbd576b61ff366eb6c8fa0aa61f7dfdb521fb"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Fri May 29 08:05:56 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 08:10:57 2026"
      },
      "message": "[libc] Add byteswap.h to Linux public header target lists (#200345)\n\nThe headers don\u0027t get built/installed without this.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d7703c6aab9fd496cc467d81415d07c01247f188\n"
    },
    {
      "commit": "58cfbd576b61ff366eb6c8fa0aa61f7dfdb521fb",
      "tree": "56e8b48d18c4aaaba65d5f98996b8c91e8adb0c9",
      "parents": [
        "a85d87816a4f9bd3df5147441aad11bc3d839f1a"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Thu May 28 17:21:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 17:25:56 2026"
      },
      "message": "[libc] Implement towupper and towlower entrypoints (#198659)\n\nFollowing up on #187670 to add public entrypoints for the wctype\nconversion functions.\n\nAssisted-by: Automated tooling, human reviewed.\n\n---------\n\nCo-authored-by: Muhammad Bassiouni \u003c60100307+bassiounix@users.noreply.github.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f1c26bce3f30f29e9130d55a7ffb0a2a171a5652\n"
    },
    {
      "commit": "a85d87816a4f9bd3df5147441aad11bc3d839f1a",
      "tree": "eb08a70015215b946a4ff8bb8ec2987ce203dc27",
      "parents": [
        "ff9dcfaed85421a7936190e343590147dd677f31"
      ],
      "author": {
        "name": "Alexey Samsonov",
        "email": "vonosmas@gmail.com",
        "time": "Thu May 28 17:05:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 17:11:13 2026"
      },
      "message": "[libc] Don\u0027t touch str_end in strto* and wcsto* functions when base is incorrect (#200073)\n\nUpdates the behavior of `stro*` and `wcsto*` endpoints to not touch\n`str_end` pointer when the provided value of `base` is incorrect and\nerrno is set to `EINVAL`.\n\n`strto*` and `wcsto*` functions accept `base` as an input argument,\nwhich can only be 0 or lie in [2,36] range. In case of invalid argument,\nthe functions should return 0 and set errno accordingly. Should the\n\"output argument\" of `str_end` be updated in this case to point to the\nbeginning of the input string?\n* C standard is unclear about it -\nis says that `str` should be stored in `str_end` **if `str` is empty or\ndoes not have the expected form** -- but there is no \"expected form\" for\ninvalid base values.\n* POSIX standard explicitly mentions that for incorrect base value errno\nshould be set to `EINVAL` and points out that the value of `str_end`\nis **unspecified** in this case.\n\nKnown implementations don\u0027t have a universal agreement about it:\n* musl sets `str_end` unconditionally\n* glibc doesn\u0027t do that in `EINVAL` case\n* newlib doesn\u0027t do that either.\n\nLLVM-libc used to unconditionally set `str_end` even in `EINVAL` case,\nwhich is changed in this PR. This would not only help with portability,\nbut makes sense by itself - if input arguments are clearly invalid,\nlet\u0027s not touch output arguments either.\n\nAssisted by: Gemini, human-reviewed\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 934e5610ebfae936598896dc188cad331992d1af\n"
    },
    {
      "commit": "ff9dcfaed85421a7936190e343590147dd677f31",
      "tree": "1aa6e4136bab12d30ea33cbe229f53ca95145ad6",
      "parents": [
        "849ecd1aa7c8a72c5c31a8a52662cea122292c80"
      ],
      "author": {
        "name": "Nick Sarnie",
        "email": "nick.sarnie@intel.com",
        "time": "Thu May 28 12:30:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 12:36:19 2026"
      },
      "message": "[libc] Move fixed buffer GPU test to an integration test (#200042)\n\nMove the `fixedbuffer` GPU test to an integration test.\n\nlibc tests are intended to be GTest style tests written with the normal\n`TEST(Suite, Test)` GTest macros. Example\n[here](https://github.com/llvm/llvm-project/blob/main/libc/test/include/SignbitTest.h#L32).\n\nThis test has its own `main` which ends up causing a `main multiple\ndefinitions` linker error when compiling for SPIR-V (work in progress).\nI\u0027m not sure why this error doesn\u0027t occur for AMDGPU, probably the fact\nwe have to compile with a ton less compile/linker flags for SPIR-V and\none of them hides the issue.\n\nSpecifically the fix is that we don\u0027t link against\n`libc/test/UnitTest/CMakeFiles/LibcTest.hermetic.dir/LibcTestMain.cpp.o`\nwhich has its own main which conflicts with the one defined in the test.\n\nAll other tests in this directory are integration tests too.\n\nA quick check of other uses of the `TEST_MAIN` macro also showed them\nusing `add_integration_test` and not `add_libc_test`.\n\nSigned-off-by: Nick Sarnie \u003cnick.sarnie@intel.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 61b5b08623e8457e28bce2984593632a9774be96\n"
    },
    {
      "commit": "849ecd1aa7c8a72c5c31a8a52662cea122292c80",
      "tree": "a9814b57550a96eb2d04864e697b603f6032095f",
      "parents": [
        "be95a36286a288c9437f5ed991720ccece1a6391"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Wed May 27 21:28:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 21:31:13 2026"
      },
      "message": "[libc] Add missing struct_mmsghdr dependency to sys_socket (#200051)\n\nUpdated libc/include/CMakeLists.txt to add\n.llvm-libc-types.struct_mmsghdr to the sys_socket dependency list. This\nensures that the generated sys/socket.h correctly includes the\nstruct_mmsghdr.h type header.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b6161b9f4c9e306fa07295db67a7ecc8cfadcffb\n"
    },
    {
      "commit": "be95a36286a288c9437f5ed991720ccece1a6391",
      "tree": "5cc0afca8f09d365ee5a714219f865a2429ec973",
      "parents": [
        "d334e4727d31463119dbd80478a40547efaae4cf"
      ],
      "author": {
        "name": "Vitaly Buka",
        "email": "vitalybuka@google.com",
        "time": "Wed May 27 20:19:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 20:22:02 2026"
      },
      "message": "Reland: [lit] Move maxIndividualTestTime from global to test suite config (#199996)\n\nSimplify LitConfig initialization and setter to allow None values.\nTestingConfig.maxIndividualTestTime is initialized to 0 (or resolved to\n0 if None) strictly during initialization.\n\nThis fixes an issue where the aggressive BOLT timeout of 60s (previously\nset globally on lit_config) was leaking and affecting libc++ tests. By\nmoving the timeout configuration from the global lit_config to the\nindividual test suite config, we ensure that timeouts are isolated and\nrespect suite-local settings without leaking.\n\nPR Stack:\n* https://github.com/llvm/llvm-project/pull/198192\n* https://github.com/llvm/llvm-project/pull/199886\n* ➤ https://github.com/llvm/llvm-project/pull/199996\n* https://github.com/llvm/llvm-project/pull/198193\n\nThe diff from #198192 is 39b632f741012bfbff9858407765e45435ad95ff\n\nAssisted-by: Gemini\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2f0815059c7b033acf935d49380d8b0166460bb3\n"
    },
    {
      "commit": "d334e4727d31463119dbd80478a40547efaae4cf",
      "tree": "2e572b74a3fbd283e8e96399ebbb4a8052c28096",
      "parents": [
        "0f13bad20d08df548f9941f80ab367cad43cb8ec"
      ],
      "author": {
        "name": "Alexey Samsonov",
        "email": "vonosmas@gmail.com",
        "time": "Wed May 27 15:10:16 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 15:16:17 2026"
      },
      "message": "[libc][bazel] Add rules for __support/threads tests. (#199871)\n\n* Add Bazel BUILD rules for three `__support/threads` unit tests.\n* Fix/expand BUILD rules for the support libraries they depend on\n(clock_gettime and vdso) that were previously incorrectly missing `.cpp`\nfiles with implementations.\n* Minor fix to use `internal::exit` in `raw_mutex_test` to avoid adding\na dependency on `exit` entrypoint, which doesn\u0027t yet exist in Bazel.\n\nAssisted by: Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b65a71d4942abcdf17510e1cf5c4e9273d60aa72\n"
    },
    {
      "commit": "0f13bad20d08df548f9941f80ab367cad43cb8ec",
      "tree": "d2c03e19fae1cc36f8924f7ef48d54b0cf314c98",
      "parents": [
        "61c087c882d6cf2e5e31566cc8ebbc085cf1033e"
      ],
      "author": {
        "name": "Daniel Thornburgh",
        "email": "dthorn@google.com",
        "time": "Tue May 26 21:47:54 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 21:51:14 2026"
      },
      "message": "Reland \"[libc] Enable baremetal float printf using modular format\" (#199758)\n\nReverts llvm/llvm-project#199114\n\n#199118 fixed the issue uncovered in the Fuchsia CI build.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a14d084bbb1a7261d8a71c56120159abb6af330b\n"
    },
    {
      "commit": "61c087c882d6cf2e5e31566cc8ebbc085cf1033e",
      "tree": "9d4d010a6f3c5fd58b77cdf3184a63a23231ae10",
      "parents": [
        "917d2de7c095a4307e5c94ed61cba307dfb0bfe8"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Tue May 26 19:37:56 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 19:41:25 2026"
      },
      "message": "[libc][math] Temporarily disable exception tests for NextAfter and NextToward tests on Windows. (#199740)\n\nThey are a bit flaky on Windows.\nSee https://github.com/llvm/llvm-project/issues/199738\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3aa913fe647480791432d99bbdc016688d1ae841\n"
    },
    {
      "commit": "917d2de7c095a4307e5c94ed61cba307dfb0bfe8",
      "tree": "3e8366a19c76107402c369d27862571e2bff0734",
      "parents": [
        "7109ca799dd238773bc908989304351710cbcb8f"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon May 25 11:10:03 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 19:41:04 2026"
      },
      "message": "[libc] Fix inet_aton (#198791)\n\nThe main (in terms of LOC) change is moving the implementation to an\ninternal function in order to avoid the inet_addr-\u003einet_aton dependency.\n\nI also fix a bug where we (mistakenly) accepted whitespace and signs\ninside the address. I also match the glibc implementation in ignoring\nthe data after the first whitespace.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c59178d6037f582c7e8fb0141c7a16cd8d5d8d5e\n"
    },
    {
      "commit": "7109ca799dd238773bc908989304351710cbcb8f",
      "tree": "e5f388cac6deaa7d5c0da063cfe63b540c3a7414",
      "parents": [
        "125598f33b48af86390cb047dd70f1d3c23b2231"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon May 25 11:07:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 25 11:10:43 2026"
      },
      "message": "[libc] Port munmap and mprotect to the new syscall interface (#199199)\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: af92edf8b3aa4104992de9fe08ce2170d14bc28d\n"
    },
    {
      "commit": "125598f33b48af86390cb047dd70f1d3c23b2231",
      "tree": "55ba6812d445637c09fb1a0597f78dc298e3d456",
      "parents": [
        "0de8f726d9ce14c1ec08fef3672d2c65e738ca90"
      ],
      "author": {
        "name": "Aayush Shrivastava",
        "email": "79578660+iamaayushrivastava@users.noreply.github.com",
        "time": "Sun May 24 15:28:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun May 24 15:31:07 2026"
      },
      "message": "[libc][math] Implement isnanf16 header-only function (#198115)\n\nAdds `isnanf16` the float16 variant of isnan as part of issue\n[#195400](https://github.com/llvm/llvm-project/issues/195400), which\ntracks adding missing isnan variants for extended floating-point types.\n\nThe implementation follows the same pattern as the existing `isnanf`,\n`isnan`, and `isnanl` functions.\n\n---------\n\nCo-authored-by: Victor Campos \u003cgithub@victorcampos.me\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 852a20e6d1caf3cb54ce31956aa947bcf3f1a77b\n"
    },
    {
      "commit": "0de8f726d9ce14c1ec08fef3672d2c65e738ca90",
      "tree": "6aa20a16d54d47ded99355c19aa5d5f9ff999ce9",
      "parents": [
        "91fa89253b31d6b6d4f6095ffe8c559df7f6836f"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Sun May 24 06:16:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun May 24 06:20:28 2026"
      },
      "message": "[libc][NFC] Make LIBC_MATH safer and some minor improvements for floating point exception tests. (#199392)\n\n- Wrap LIBC_MATH usages inside parentheses\n- Skip clearing exceptions when not needed.\n- Skip FE_INEXACT when testing FE_UNDERFLOW / FE_OVERFLOW for basic ops.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: dd1649b020081263b3d2a08e3b254d7b4280222f\n"
    },
    {
      "commit": "91fa89253b31d6b6d4f6095ffe8c559df7f6836f",
      "tree": "560ab4aadff09b60bc7dff1ebd094b8514f6f548",
      "parents": [
        "8ffb8a9bafcbdbb79ea1cf7b871cf510017fa61b"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Sat May 23 09:37:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 23 09:40:34 2026"
      },
      "message": "[libc] Fix shared math tests for gcc-13. (#199318)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 85c3fd048d7df66d093bfaf45e7c3c3ec44122bf\n"
    },
    {
      "commit": "8ffb8a9bafcbdbb79ea1cf7b871cf510017fa61b",
      "tree": "29d770ad597fdfc4a6571bd5df6cc361380f8275",
      "parents": [
        "849cbd113ce8087cdedbde81273d49361dcc4cb9"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Sat May 23 01:45:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 23 01:50:23 2026"
      },
      "message": "[libc][NFC] Reduce the test size for math functions by default. (#199308)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 387a7385ce5e5d5e141359b2106e0759c7b4a000\n"
    },
    {
      "commit": "849cbd113ce8087cdedbde81273d49361dcc4cb9",
      "tree": "b24b3108ccd0581bb687f0acaa7179d363915f72",
      "parents": [
        "f692332a0220307c5de19597403c4d1cb277d339"
      ],
      "author": {
        "name": "Muhammad Bassiouni",
        "email": "60100307+bassiounix@users.noreply.github.com",
        "time": "Sat May 23 01:10:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 23 01:15:58 2026"
      },
      "message": "[libc][NFC][wctype] Fix test ci for old drivers (#199307)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cd1baf3cdc013d5ec68684a68d6a4376ed4027e0\n"
    },
    {
      "commit": "f692332a0220307c5de19597403c4d1cb277d339",
      "tree": "cbe6efff76049049e3416d0007496592da72b675",
      "parents": [
        "9051206877e832073b27f3a3de69091b3e3de628"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Fri May 22 06:48:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 06:50:10 2026"
      },
      "message": "[libc] Enforce standard identifier validation in hdrgen (#198971)\n\nImplemented validation for standard identifiers in the hdrgen tool to\ncatch typos and unknown standards. Aggregated standards from all entity\ntypes (macros, types, etc.) for validation, addressing a TODO in\nheader.py.\n\nAdded llvm_libc_ext, stdc_ext, and llvm_libc_stdfix_ext to the canonical\nidentifiers. Standardised invalid or inconsistently formatted standards\nin several YAML files.\n\nThis enforces the correctness of any provided standards field but does\nnot yet require that every entity has one (many entities still inherit\nstandards from the header level).\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c20020ea73aa13094800aeac09944c6f81cb0ea6\n"
    },
    {
      "commit": "9051206877e832073b27f3a3de69091b3e3de628",
      "tree": "fc79f743f68f1fd2ce73c4accdcb0b2205600494",
      "parents": [
        "07ac8091a8045ba7921ed346094c185f1d254172"
      ],
      "author": {
        "name": "Daniel Thornburgh",
        "email": "dthorn@google.com",
        "time": "Thu May 21 21:16:16 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 21:20:49 2026"
      },
      "message": "Revert \"[libc] Enable baremetal float printf using modular format\" (#199114)\n\nReverts llvm/llvm-project#198900\n\nThis can cause build failures due to an error in the handling of\nargument indices for `va_list` `printf` variants.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0f679999aae135b388c25fb1acbb030109c6418f\n"
    },
    {
      "commit": "07ac8091a8045ba7921ed346094c185f1d254172",
      "tree": "044f32dac0be2600346cfc3f3977568ebfe70773",
      "parents": [
        "4724638288626791f9416701bb5bd4f22abeb7f6"
      ],
      "author": {
        "name": "Daniel Thornburgh",
        "email": "dthorn@google.com",
        "time": "Thu May 21 18:06:31 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 18:10:54 2026"
      },
      "message": "[libc] Enable baremetal float printf using modular format (#198900)\n\nThe most best configuration for llvm-libc is for it to be used with a\nrecent clang. Accordingly, this patch enables floating point type\nsupport in printf for baremetal without inflating code size by also\nenabling modular printf support. This is safe for older clang and other\ncompilers, but it would increase code size for the default baremetal\nconfiguration on such targets.\n\n---------\n\nCo-authored-by: Michael Jones \u003cmichaelrj@google.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ba2c3b0c12e984eb77ef329b4c75e54b63513837\n"
    },
    {
      "commit": "4724638288626791f9416701bb5bd4f22abeb7f6",
      "tree": "fc79f743f68f1fd2ce73c4accdcb0b2205600494",
      "parents": [
        "f5666d00462e6b35582053d5bbd0ac1159689951"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Thu May 21 17:24:30 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 17:25:44 2026"
      },
      "message": "[libc][math] Add gcc-7 to 9 compatibility for shared math. (#197868)\n\n- Add more fine-grained constexpr annotations.\n- Apply fine-grained constexpr annotations to `src/__support`,\n`src/__support/FPUtil` folder.\n- Remove or update constexpr annotations for functions in\n`src/__support/math` folder.\n- Fix or ignore old gcc\u0027s warnings.\n\nAssisted-by: Gemini 3.1 Flash with step 3.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f4076e1c18178ebfa7db07da955af5d8e416d8bd\n"
    },
    {
      "commit": "f5666d00462e6b35582053d5bbd0ac1159689951",
      "tree": "bc2dcaa9a7b60321ee204ff4db70499cbe54f1b0",
      "parents": [
        "fa0a05dae695145be25167f1eeaad36dae36ee5d"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Thu May 21 13:33:54 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 13:35:55 2026"
      },
      "message": "Implement linux-specific sendmmsg(2) (#198778)\n\nAssisted by Gemini.\nCo-authored-by: Jeff Bailey \u003cjbailey@raspberryginger.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 553b6099b20c9f4ebbb19197c5c8b7cfcda565c2\n"
    },
    {
      "commit": "fa0a05dae695145be25167f1eeaad36dae36ee5d",
      "tree": "972377eaef08fb6589ee58eb3479a4e66e033b14",
      "parents": [
        "0f11f7562cef4ed958553dbc1be059a166b41c7c"
      ],
      "author": {
        "name": "Simi Pallipurath",
        "email": "simi.pallipurath@arm.com",
        "time": "Thu May 21 08:25:38 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 08:31:15 2026"
      },
      "message": "[libc] Make FreeListHeap::free ignore null pointers. (#198834)\n\nUpdate `FreeListHeap::free` to return immediately when passed `nullptr`.\n\nThis matches the expected `free(nullptr)` behaviour as per the C\nstandard and avoids running pointer validation on a null pointer\nallowing the hermetic malloc test libc/test/src/stdlib/malloc_test.cpp\nto pass.\n\nAs per standard:\nThe free function, paragraph:\n```\n  The free function causes the space pointed to by\n  ptr to be deallocated, that is, made available for\n  further allocation. If ptr is a null pointer,\n  no action occurs.\n```\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8f2f0162a9362f9042d1200b3fbcc09d3fa38f8c\n"
    },
    {
      "commit": "0f11f7562cef4ed958553dbc1be059a166b41c7c",
      "tree": "79c0bc35e268d4403ecf5d2facf80ba8f8a46ce0",
      "parents": [
        "c4aac071f38800e44e04ccbcc4cb751cd261dca4"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Thu May 21 05:48:03 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 05:51:29 2026"
      },
      "message": "[libc][NFC] Lowercase standard identifiers in YAML files (#198854)\n\nUpdate YAML files to use lowercase identifiers for standards.\n\nIn header.py, canonical identifiers for standards are explicitly defined\nin lowercase and mapped to their pretty names for display. This change\nensures that all YAML files use the lowercase identifiers (posix, linux,\nbsd, gnu) expected by the header generation tool.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8ac51bce5afbe6ce84167260be68f0c5ef346656\n"
    },
    {
      "commit": "c4aac071f38800e44e04ccbcc4cb751cd261dca4",
      "tree": "1346abbf028f610d83ffbf1c1a60b34b21eda90d",
      "parents": [
        "f4471a874d2a142bdeef3d459413cdf37f61577a"
      ],
      "author": {
        "name": "Alexey Samsonov",
        "email": "vonosmas@gmail.com",
        "time": "Wed May 20 22:25:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 22:30:50 2026"
      },
      "message": "[libc] Implement pthread_sigmask (#198682)\n\n* Extract `rt_sigprocmask` syscall wrapper into the\nlibc/src/__support/OSUtil/linux/syscall_wrappers/ directory\n* Convert all existing users of this syscall, and simplify the logic\nwhere applicable.\n* Implement `pthread_sigmask`, which is effectively another POSIX\nwrapper around `rt_sigprocmask` syscall similar to `sigprocmask`\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b996b4eebbedb3b96b584e4db244b6ce685fae45\n"
    },
    {
      "commit": "f4471a874d2a142bdeef3d459413cdf37f61577a",
      "tree": "1c0b90c5c5afb0d3204dcdee76fd7486dc86152a",
      "parents": [
        "183c85d8a85e72b097006edacd10cd84cacae304"
      ],
      "author": {
        "name": "Alexey Samsonov",
        "email": "vonosmas@gmail.com",
        "time": "Wed May 20 22:24:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 22:30:32 2026"
      },
      "message": "[libc] Update prctl() declaration to use variadic arguments. (#198654)\n\nprctl declaration should typically use variadic arguments (e.g. see\nhttps://man7.org/linux/man-pages/man2/prctl.2.html), as the types /\nquantity of subsequent arguments depends on the `option`. We can\u0027t\ndepend on all `\u003cprctl.h\u003e` users to explicitly cast arguments to\n`unsigned long` and passing all 5 of them every time.\n\n* Don\u0027t add any option-specific logic, and just consume `arg2`-`arg5`\nfrom variadic arguments and pass them to syscall implementation as-is,\nassuming that they won\u0027t be used by the kernel if they are not needed,\nand consuming these arguments won\u0027t lead to crashes.\n* Updated the test to use `prctl` variants with less than 5 explicit\narguments (for PR_SET_NAME and PR_GET_NAME).\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 57d2c4c7889333f8d1ebb77efdb5195c2e4f5e1e\n"
    },
    {
      "commit": "183c85d8a85e72b097006edacd10cd84cacae304",
      "tree": "935c2154abb1259e9bec21a1a44daeb1b99a25f4",
      "parents": [
        "58bbde54ba8b37ddf86491054567da778f4ba6f0"
      ],
      "author": {
        "name": "Jackson Stogel",
        "email": "jtstogel@gmail.com",
        "time": "Wed May 20 20:29:36 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 20:30:53 2026"
      },
      "message": "[libc][nfc] Include header for EFIAPI macro (#198876)\n\nThis file uses `EFIAPI`, but it\u0027s not included. It looks like\ncompilation currently succeeds because `EFI_SYSTEM_TABLE.h` is the only\nheader that includes `EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL.h`, and it happens\nto include `EFIAPI-macros.h` indirectly.\n\nWe will be adding Bazel rules for this file, and Bazel typically\nrequires all headers to be compilable on their own. This build error is\ntheoretically reproducable by running cmake build with\n`-DCMAKE_VERIFY_INTERFACE_HEADER_SETS` if we had the appropriate\nFILE_SETs defined.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f755811bab9520fb52b6d531ea8a4ffcdae6b245\n"
    },
    {
      "commit": "58bbde54ba8b37ddf86491054567da778f4ba6f0",
      "tree": "59eac2bbbfc4a30f30e21c0be5d6ee3a35fed4f2",
      "parents": [
        "631c40c3d62a0f31334a2c0f843409bcd576192b"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Wed May 20 19:54:40 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 19:55:44 2026"
      },
      "message": "[libc] implement alarm entrypoint (#198620)\n\nImplemented the alarm entrypoint for unistd.h.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4de983f0213643c1d4d4e8f19929b051c7190a68\n"
    },
    {
      "commit": "631c40c3d62a0f31334a2c0f843409bcd576192b",
      "tree": "8861cdf10d3ec8a4b0919890291ccc5368a8b524",
      "parents": [
        "d9bcd742264f7bad3228d0fb08a76fe2e0dbc93e"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Wed May 20 17:53:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 17:55:16 2026"
      },
      "message": "[libc] move mblen to stdlib (#198642)\n\nMove mblen from wchar to stdlib to conform with C standard. Also update\nheaders to match new style.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 61750f4629327ec9df0a20a18ce1bf1710f254fd\n"
    },
    {
      "commit": "d9bcd742264f7bad3228d0fb08a76fe2e0dbc93e",
      "tree": "d9de035d36c43c960142fc59b89cb5d7c15bc166",
      "parents": [
        "6e99b5db711be7584bb89eeed271e91cc3d52aa9"
      ],
      "author": {
        "name": "Volodymyr Turanskyy",
        "email": "Volodymyr.Turanskyy@arm.com",
        "time": "Wed May 20 12:00:11 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 12:06:23 2026"
      },
      "message": "[libc] Fix modular printf attributes (#194003)\n\nThis fixes the validation error related to modular printf missing format attribute in C++ code by moving the validation after the implicit format attribute is added for builtins and known library functions.\n\nThis also adds a simple C++ test since the C code did compile successfully because the implicit attributes were added in time for the validation happening for C code.\n\nAssisted-by: codex, reviewed and cross checked, also tested with ATfE,\nby me. Modular printf reduced code size from ~37K to ~13K for int-only\nprintf sample.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5b168934d72d4f7ce6177c86bfea0961a0ccc4eb\n"
    },
    {
      "commit": "6e99b5db711be7584bb89eeed271e91cc3d52aa9",
      "tree": "5de3512c32f5cfe06d1644710f59fc7d5ae176a8",
      "parents": [
        "ec245eaff565997e990b4aa7aeb4db202214e4c8"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Wed May 20 10:38:04 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 10:41:08 2026"
      },
      "message": "[libc] Change POSIX to posix in unistd.yaml (#198745)\n\n1. In `header.py`, the canonical identifiers for standards are\nexplicitly defined in lowercase and mapped to their uppercase/pretty\nnames for display:\n\n```python\n    # All the canonical identifiers are in lowercase for easy maintenance.\n    # This maps them to the pretty descriptions to generate in header comments.\n    LIBRARY_DESCRIPTIONS \u003d {\n        \"stdc\": \"Standard C\",\n        \"posix\": \"POSIX\",\n        \"bsd\": \"BSD\",\n        \"gnu\": \"GNU\",\n        \"linux\": \"Linux\",\n        \"uefi\": \"UEFI\",\n        \"svid\": \"SVID\",\n    }\n```\n\n3. Later in the same file, when generating library descriptions, it\nchecks for the lowercase string header.py:\n    # If the header itself is in POSIX, just call it that.\n```python\n    if \"posix\" in self.standards:\n        return descriptions[\"posix\"]\n```\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2e006e9818f27573f42fb38ca16041b9594e9e7a\n"
    },
    {
      "commit": "ec245eaff565997e990b4aa7aeb4db202214e4c8",
      "tree": "5863198460490a7f4a784958358de9b55fa3712d",
      "parents": [
        "93e4b7aa294b48a1e03b1d69419e701fd6a134ff"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Wed May 20 06:39:14 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 06:40:44 2026"
      },
      "message": "[libc] Use scope_exit to clean up resources in tests (#196120)\n\nSimplify socket and FILE unit tests by using the `scope_exit` helper to\nautomatically clean up resources (sockets and FILE pointers), preventing\nleaks on test failures.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 44fc3b38512401fd34393ae1ad46ef27a73ebfb4\n"
    },
    {
      "commit": "93e4b7aa294b48a1e03b1d69419e701fd6a134ff",
      "tree": "9a93d84053d1cd5cc012ce55167fbd70e86e3282",
      "parents": [
        "1a9f7e8826c189b7f38745a769031c0c0cb3a10a"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Wed May 20 00:59:17 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 01:00:58 2026"
      },
      "message": "[libc][math] Undefine issignaling macro for issignaling implementation. (#198686)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: be0ba5cb78ed702cc3bcdb1a667ce52615f54bbe\n"
    },
    {
      "commit": "1a9f7e8826c189b7f38745a769031c0c0cb3a10a",
      "tree": "852b3590740316759f4015605f66b7f8dacebcc0",
      "parents": [
        "05a697d8f5410611fd419613bb3585e2ad34ab68"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 21:47:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 21:50:36 2026"
      },
      "message": "[libc] clean up wchar file deps and includes (#198648)\n\nThere were a couple comments left on the wchar file series after I\u0027d\nalready merged some. This PR should apply those changes to the rest of\nthe wchar file functions.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d63ca96ec35e963e651d1b8765283117ca83e1f9\n"
    },
    {
      "commit": "05a697d8f5410611fd419613bb3585e2ad34ab68",
      "tree": "6c45bb89b4fdc2dd79d4c4406d71ab771c5f33fc",
      "parents": [
        "836f877542c8c8b0d7b6c492e9435b73f97dd33a"
      ],
      "author": {
        "name": "Muhammad Bassiouni",
        "email": "60100307+bassiounix@users.noreply.github.com",
        "time": "Tue May 19 20:35:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 20:41:19 2026"
      },
      "message": "[libc][wctype] Add perfect hash map for conversion functions (#187670)\n\n- Upstream PTRHash and PerfectHashTable\n- Add lowber_bound and distance\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f97e1d46878d53a50a64c6b3faa45f43741d69ac\n"
    },
    {
      "commit": "836f877542c8c8b0d7b6c492e9435b73f97dd33a",
      "tree": "af3cf4aee112d6fe1b215b2a1aa976c5c737d91a",
      "parents": [
        "5182a89448c01f198e85fd1b6bbe15007f3616a0"
      ],
      "author": {
        "name": "Schrodinger ZHU Yifan",
        "email": "yfzhu@google.com",
        "time": "Tue May 19 20:04:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 20:05:53 2026"
      },
      "message": "[libc][freebsd] initialize freebsd support (#124459)\n\nInitialize FreeBSD support. Currently, only overlay build (mainly math\nroutines) is supported.\nThis PR mainly define the target entrypoints and basic syscall support.\nDifferent from Linux, FreeBSD\u0027s syscall return always consist of two\ncomponent:\n- return value as arch register\n- error flag\nOn x86-64, the flag is returned via the carry bit state. Hence, for\nsyscall stubs, we always return a structure containing these two fields.\n\nFor math support, the only big difference is that FreeBSD has different\nnaming convention in some exception macros.\n\nFurther fixes for C++ userland are tracked in #197605\n\nAssisted-by: Codex with gpt-5.5 high fast\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 633539bfa1516e616b798b2eae98bea689b3c410\n"
    },
    {
      "commit": "5182a89448c01f198e85fd1b6bbe15007f3616a0",
      "tree": "101d57094c594e586ffd58073693353ed859d442",
      "parents": [
        "631bc435f171f1a683996d8ce90ed67976ca59c4"
      ],
      "author": {
        "name": "DylanFleming-arm",
        "email": "85629460+DylanFleming-arm@users.noreply.github.com",
        "time": "Tue May 19 18:38:30 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 18:40:33 2026"
      },
      "message": "[libc][mathvec] Add exhaustive tester for SIMD math routines (#189488)\n\nAn exhaustive tester based on the scalar version.\n\nUses LIBC scalar math routines as a reference rather than MPFR\n\nAlso corrects a missed 1ULP value in expf when the target doesn\u0027t\nsupport FMAs\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 86b58f5dbf1ad25dccbf66bca53ffc75a0e92dbf\n"
    },
    {
      "commit": "631bc435f171f1a683996d8ce90ed67976ca59c4",
      "tree": "9b2a5ce0f952b9f0a9b1eee0f7f437a54ff44081",
      "parents": [
        "5755bc331aadd4f32472576cbea2d8df22ee2d3d"
      ],
      "author": {
        "name": "Luca Barbato",
        "email": "luca.barbato@gmail.com",
        "time": "Tue May 19 18:01:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 18:04:16 2026"
      },
      "message": "[libc] Remove broken __builtin_aarch64_wsr fallback in set_thread_ptr (#197295)\n\nThe fallback used __builtin_aarch64_wsr (32-bit) instead of\n__builtin_aarch64_wsr64, truncating the 64-bit thread pointer value and\ncausing non-deterministic runtime crashes.\n\nModern GCC correctly warns about it and -Werror\u003dconversion catches it.\n\n```\n/var/tmp/portage/llvm-runtimes/libc-22.1.5/work/libc/startup/linux/aarch64/tls.cpp: In function ‘bool __llvm_libc_22_1_5_::set_thread_ptr(uintptr_t)’:\n/var/tmp/portage/llvm-runtimes/libc-22.1.5/work/libc/startup/linux/aarch64/tls.cpp:90:38: error: conversion from ‘uintptr_t’ {aka ‘long unsigned int’} to ‘unsigned int’ may change value [-Werror\u003dconversion]\n   90 |   __builtin_aarch64_wsr(\"tpidr_el0\", val);\n      |                                      ^~~\ncc1plus: all warnings being treated as errors\n```\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b16e3a0db7759ec31de981692e10c19d930c9dac\n"
    },
    {
      "commit": "5755bc331aadd4f32472576cbea2d8df22ee2d3d",
      "tree": "8d5c00e45afc04d51e8cd682753cc3c6c065a6bc",
      "parents": [
        "29c0db559bc2f51fe79bdd79e182df743ce3688d"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 17:22:06 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 17:25:57 2026"
      },
      "message": "[libc] implement putwc (#196165)\n\nAdd putwc function and tests. Part 9/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 40fa628fffb96d55cdaaa294a5d02b75bb738418\n"
    },
    {
      "commit": "29c0db559bc2f51fe79bdd79e182df743ce3688d",
      "tree": "576d15b7078ffc03a3b0992488922f751ff70550",
      "parents": [
        "971373944261b8e504fbfa6d2f8ac759a04885b3"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 17:14:23 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 17:17:05 2026"
      },
      "message": "[libc] implement getwchar (#196164)\n\nAdd getwchar function and tests. Part 8/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c520ae386458ac3763c7d16a0be105f906e319ed\n"
    },
    {
      "commit": "971373944261b8e504fbfa6d2f8ac759a04885b3",
      "tree": "14aec1fa47ff5375c6b2e764b44665c9a793c483",
      "parents": [
        "fe5609b0ed68383c32fe15cb4cf0f5e4aa868e8a"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Tue May 19 17:13:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 17:16:49 2026"
      },
      "message": "[libc][NFC] Fix typos in time.yaml keys for header generation (#198551)\n\nThe YAML parser for header generation expects the plural \u0027standards:\u0027\nkey for function definitions. Using the singular \u0027standard:\u0027 caused\nthese entries to be ignored by the parser.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8f50a28e675f71a1e9d19ba65de2b7571b566402\n"
    },
    {
      "commit": "fe5609b0ed68383c32fe15cb4cf0f5e4aa868e8a",
      "tree": "37288580bc52be06cac2791428d377c105a6f3d3",
      "parents": [
        "968b5b70bc89bdf66feaf1feb218571f2d696f0d"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 17:04:14 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 17:06:05 2026"
      },
      "message": "[libc] implement fgetws (#196161)\n\nAdd fgetws function and tests. Part 5/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b39ffdb9bff7ea0a1319b724b620b0aba8b83642\n"
    },
    {
      "commit": "968b5b70bc89bdf66feaf1feb218571f2d696f0d",
      "tree": "4d4028a85f046204fc06d1b57777f2d985070765",
      "parents": [
        "658252e738a7abd81f7d7058dcec87962fe582be"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 16:54:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 16:55:55 2026"
      },
      "message": "[libc] implement fputws (#196160)\n\nAdd fputws function and tests. Part 4/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 51c961b7eb5c55b6770fce7399d522ea112370ce\n"
    },
    {
      "commit": "658252e738a7abd81f7d7058dcec87962fe582be",
      "tree": "608af40d1f0b96eed1f03ebb87c635aafa68753f",
      "parents": [
        "b0943808bbe841e1fcdd491eb4756f7751131b74"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Tue May 19 16:43:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 16:46:08 2026"
      },
      "message": "[libc] implement fputwc (#196158)\n\nAdd fputwc function and tests. Part 2/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 196c1693b4954604fc11627d8e3aafacc5afe78a\n"
    },
    {
      "commit": "b0943808bbe841e1fcdd491eb4756f7751131b74",
      "tree": "476e8972ee446e62d8896f01b49212b52643e24f",
      "parents": [
        "9ba33d93cee0e28a19700210856d197d39bab5aa"
      ],
      "author": {
        "name": "Kiriti Ponduri",
        "email": "123718855+udaykiriti@users.noreply.github.com",
        "time": "Tue May 19 15:27:04 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 15:30:25 2026"
      },
      "message": "[libc] prefer *at syscalls in sys/stat wrappers (#197940)\n\n- These changes flips the #ifdef order to prefer the *at syscalls over\nnormal ones.\n- In modern architectures, *at system calls are preferred over normal\nsystem calls cuz of safety issues.\n- So by checking for \"\"*at\"\" system calls first, we ensure better\ncompatibility with modern systems.\n- After then normal syscalls moved else or elif for support to older\nones.\n  - From merged pr(#195792) and issue(#195620)\n\n---------\n\nSigned-off-by: udaykiriti \u003cudaykiriti624@gmail.com\u003e\nCo-authored-by: Jeff Bailey \u003cjbailey@raspberryginger.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: af0b42d8a5b0dcfacf958a2267855ce25002675f\n"
    },
    {
      "commit": "9ba33d93cee0e28a19700210856d197d39bab5aa",
      "tree": "20df80d0bdc78424573af3eacbff6417289132e5",
      "parents": [
        "7e39ba976e2a0a159c9181cc819db4668b5e716b"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue May 19 14:00:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 14:05:40 2026"
      },
      "message": "[libc] Port remaining socket functions to syscall_wrappers (#198463)\n\nWhile in there:\n- fix file headers to conform to latest standards\n- add missing restrict qualifier to recvfrom\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8076d17b61028e7fd5723fa84fd5615c945ae46b\n"
    },
    {
      "commit": "7e39ba976e2a0a159c9181cc819db4668b5e716b",
      "tree": "4431b296b59a5675469c252345abd3c3243aac1f",
      "parents": [
        "c7358e81bab5a7900e5cb0e21afe3e8accacaad5"
      ],
      "author": {
        "name": "jinge90",
        "email": "ge.jin@intel.com",
        "time": "Tue May 19 13:43:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 13:46:07 2026"
      },
      "message": "Fix unused parameter for add_bitcode_entrypoint_library for GPU Libc (#198458)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ae8d973ae253463e4b821086b720fbc813c61e96\n"
    },
    {
      "commit": "c7358e81bab5a7900e5cb0e21afe3e8accacaad5",
      "tree": "c88dba13c7b5517a4074b50fb05fd484c154bab1",
      "parents": [
        "887622315bec0018cf905ccde9a2dc22d71a7811"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue May 19 13:33:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 13:34:43 2026"
      },
      "message": "[libc] Add struct sockaddr_in (#197909)\n\nThe struct needs to be 16 bytes long for compatibility with the linux\nkernel (which rejects smaller sizes, even though the reset of the bytes\nare unused).\n\nThe padding field (and its name) is not specified by POSIX, but it\u0027s\ntraditionally called sin_zero, and there exists a fair amount of code\nthat references that name, so I\u0027m matching it as well.\n\nI\u0027m testing the compatibility of this struct by binding to a localhost\naddress. This test requires that the machine has a loopback interface\nwith an assigned ipv4 address. If some of the environments do not have\nit, we can try to detect this in the test and skip it, but this would\ndiminish the value of the test.\n\nAs a drive-by, I\u0027m also adding the (non-POSIX) INADDR_LOOPBACK constant.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e2464bf702197349a1ec0691e4ab188ea9a18155\n"
    },
    {
      "commit": "887622315bec0018cf905ccde9a2dc22d71a7811",
      "tree": "003e50222786adc2e56b8e9e72869e6e517160aa",
      "parents": [
        "25682ef1d2e0e0b8895e69661165b696f917d3dc"
      ],
      "author": {
        "name": "dcandler",
        "email": "david.candler@arm.com",
        "time": "Tue May 19 12:08:19 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 12:11:23 2026"
      },
      "message": "[libc][cmake] Don\u0027t assume CPU features in cross builds (#198308)\n\nAssuming all CPU features are available during cross builds will be\nincorrect in some cases, such as armv8.0-a where FullFP16 is not\navailable and therefore FP16 instructions will not be understood.\n\nLooking at the file history, the feature detection code previously\nrelied on try_run instead of try_compile, which might explain why it\ncouldn\u0027t be used in cross builds as cross built binaries wouldn\u0027t be\nexecutable. But now the tests are compile only, they can work for cross\nbuilds too, which would be better than assuming features.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 313cc46e5893e6299ee1460e8dcc4f0ff5da015a\n"
    },
    {
      "commit": "25682ef1d2e0e0b8895e69661165b696f917d3dc",
      "tree": "6f0ad633062fcaa5ea0d7e055883b4beb4dd17e7",
      "parents": [
        "ad542c9346cb37f13050180fd8b52b5bb3ce6b72"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Tue May 19 09:48:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 09:50:55 2026"
      },
      "message": "[libc] Add regex_macros dependency to regex header (#198453)\n\nAdded the regex_macros dependency to the regex header target.\nregex-macros.h was not being installed when regex entrypoints were\nenabled.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0eceac10de71050086961c6bde5a6976727b30e8\n"
    },
    {
      "commit": "ad542c9346cb37f13050180fd8b52b5bb3ce6b72",
      "tree": "3d835fd7baaca07353e099a69c414f1175020b9b",
      "parents": [
        "c74e3ae124462ae99572ed4f96cffe625e5ee399"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Tue May 19 06:24:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 06:26:07 2026"
      },
      "message": "[libc] Migrate socket syscall wrappers to syscall_checked (#198241)\n\nAlso update the file headers while I\u0027m at it. Move includes into a\nsingle block so that clang-format can enforce a consistent ordering. Fix\na couple of discrepancies in the cmake file.\n\nAssisted by Gemini.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f60e4137fae82f61d5b567a2addb1dad2e85db64\n"
    },
    {
      "commit": "c74e3ae124462ae99572ed4f96cffe625e5ee399",
      "tree": "7d4aece205c36746390d9576086872cb89b4fe79",
      "parents": [
        "2025a0bcb00b005ec335510bdc9d7a6b4525cb31"
      ],
      "author": {
        "name": "Joseph Huber",
        "email": "huberjn@outlook.com",
        "time": "Mon May 18 20:11:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 20:15:53 2026"
      },
      "message": "[flang-rt][NFC] Clean up warnings when building flang-rt (#198384)\n\nSummary:\nTrivial warning fixes around uninitialized values.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 519eb6c8128a548a67d43eeabd13538b7af4e218\n"
    },
    {
      "commit": "2025a0bcb00b005ec335510bdc9d7a6b4525cb31",
      "tree": "3224355a34db8929838787cdbed17726ba7c3136",
      "parents": [
        "9ca3c073e552bf3f9460c22d53f9edc7f73418d3"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Mon May 18 16:30:13 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 16:36:29 2026"
      },
      "message": "[libc][NFC] Fix #endif comments in hdr/ proxy headers (#198313)\n\nThe #endif closing the LIBC_FULL_BUILD guard used the CMake variable\nname LLVM_LIBC_FULL_BUILD in its comment rather than the preprocessor\nmacro LIBC_FULL_BUILD that the #ifdef above references. These are\ndistinct: LLVM_LIBC_FULL_BUILD is the CMake option; LIBC_FULL_BUILD is\nthe C macro defined via -DLIBC_FULL_BUILD when that option is ON.\n\nFixed 113 files under libc/hdr/ with a mechanical substitution.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f33e9e4aea5a0cfe3e54e75680ae0e127d1d0b4e\n"
    },
    {
      "commit": "9ca3c073e552bf3f9460c22d53f9edc7f73418d3",
      "tree": "6326ea238e74828c742bdcfb3938926c388dfd34",
      "parents": [
        "11442e9ae94661c7371537263632d44c511e17a8"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Mon May 18 15:15:18 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 15:20:41 2026"
      },
      "message": "[libc] Add POSIX regex stub implementation and build infrastructure (#196995)\n\nAdded the four POSIX regex entrypoints (regcomp, regexec, regerror,\nregfree) and registered them for x86_64, aarch64, riscv, and arm.\nregerror is fully implemented with all 13 POSIX error code strings. The\nother three are stubs backed by simple string matching to validate the\nbuild pipeline end-to-end.\n\nThis implementation is restricted to full-build mode\n(LLVM_LIBC_FULL_BUILD) to avoid ABI compatibility risks with system\nheaders and internal state management in overlay mode.\n\nNew files:\n* include/regex.yaml and regex-macros.h for header generation\n* regex_t, regoff_t, regmatch_t type headers\n* src/regex/ with all four entrypoints\n* test/src/regex/ with regerror and basic round-trip tests\n\nAll 7 tests pass.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3c532a4fe152b83111c7814d3e8d2cf8a250d09c\n"
    },
    {
      "commit": "11442e9ae94661c7371537263632d44c511e17a8",
      "tree": "cedf435e900b6cf9156115c01f76b4c2964763f9",
      "parents": [
        "791987b359221104b9abe64341db570eda7ed115"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon May 18 15:13:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 15:15:54 2026"
      },
      "message": "[libc] Enable arpa/inet.h entrypoints in overlay mode (#198270)\n\nTwo of these depend on in_addr_t and struct in_addr, but these are types\nwhose layout is defined by POSIX and OS ABIs, and they are simpler than\nstruct sockaddr_in, which we enabled in #195035.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0475a4b34c7f9dab74f42c4ca10ccd6908d65875\n"
    },
    {
      "commit": "791987b359221104b9abe64341db570eda7ed115",
      "tree": "44f5ba8efc303aff72c9e91ef907dc46d73d5c26",
      "parents": [
        "f1cf8be077eea1e345adbce13c60a015e30b151a"
      ],
      "author": {
        "name": "Joseph Huber",
        "email": "huberjn@outlook.com",
        "time": "Mon May 18 15:08:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 15:11:41 2026"
      },
      "message": "[libc] Demote compiler check error to a warning (#198033)\n\nSummary:\nThis check exists to encode the policy that this is only intended to be\nbuilt with a just-built compiler. In practice it\u0027s a little too strict\nand breaks pretty much every six months when the version bumps or when\npeople try to build a separate patch. Just demote to a warning.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 13da33e922fe43cd97246f5e33320acc4f5ea186\n"
    },
    {
      "commit": "f1cf8be077eea1e345adbce13c60a015e30b151a",
      "tree": "a66bc5b89dd31712c30d58293c38269bf53f6e5b",
      "parents": [
        "977c122b9c55a09c9a2fd9180f1b61a508893b85"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon May 18 13:58:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 14:00:50 2026"
      },
      "message": "[libc] Disable newly added -Wfenv-access clang warning (#198303)\n\nAdded in #187860, the warning triggers on existing libc code. This\nunbreaks the precommit bots.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 798c5c0cad3204059d14c789f1ad7c2600bce37c\n"
    },
    {
      "commit": "977c122b9c55a09c9a2fd9180f1b61a508893b85",
      "tree": "d81fca1e09ef68f44917f70787fa91aff07eadc7",
      "parents": [
        "c3520905a1861c724793979250b4e2620796be3e"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Mon May 18 13:46:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 13:51:18 2026"
      },
      "message": "[libc][ctype] fix macro guard collisions in locale-aware headers (#198279)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 444588536ff17f2c1dde4852899ea809cd23415e\n"
    },
    {
      "commit": "c3520905a1861c724793979250b4e2620796be3e",
      "tree": "c324e099a3956106f49844aab21dae63b6ad3a2b",
      "parents": [
        "1dbb88a585cf92a44e47e84f5384dd6db6a3027a"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Mon May 18 06:09:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 06:10:35 2026"
      },
      "message": "[libc] Introduce a typed syscall wrapper and use it in mmap (#197459)\n\nLinux reserves a range of values (everything above -4096u, aka\nMAX_ERRNO) as an error value, so the check can be performed without\nknowing the details of the specific syscall. libc functions where these\nvalues would be a valid result (e.g. PTRACE_PEEKDATA) are implemented\ndifferently at the kernel level (e.g. returning the result through a\npointer argument). The only exception are a handful of syscalls (getpid,\ngetuid, ...) which can never fail, and where this could be an actual\nuser/group ID (particularly on 32-bit systems).\n\nSpecifically, for mmap, this lets us remove the is_valid_mmap helper and\nSYS_mmap2 ifdefs in various places.\n\nMore generally, this can simplify many syscall wrappers as often the\nonly thing they are doing is converting the return value into an\nErrorOr.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: aa1081f2c4cc28477ccbf473302c94d027b7fd1f\n"
    },
    {
      "commit": "1dbb88a585cf92a44e47e84f5384dd6db6a3027a",
      "tree": "55acebc35bf5de8a0b717388e609d5115958473e",
      "parents": [
        "4380df3af34b92ae73243f17f58f7e2ca53a333b"
      ],
      "author": {
        "name": "Nico Weber",
        "email": "thakis@chromium.org",
        "time": "Mon May 18 04:30:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 04:35:29 2026"
      },
      "message": "[libc][math] Fix pow() subnormal base exponent computation (#198134)\n\nFor subnormal inputs, get_exponent() returns -1023. The code subtracted\n64 after normalizing but didn\u0027t recompute e_x from the normalized value.\nThis set e_x to -1087 for every subnormal.\n\nTo fix, compute e_x from the normalized value.\n\npowf() doesn\u0027t have this bug because it adds\n`x_u \u003e\u003e FloatBits::FRACTION_LEN` to ex, where x_u is `x_u \u003d\nFloatBits(x).uintval();` with `x` being the normalized value. Added\nsubnormal base tests for powf to show that it works fine as-is.\n\nFixes #197212.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d8e40964f2597c38af2b4c7967aa95d7f76a8d48\n"
    },
    {
      "commit": "4380df3af34b92ae73243f17f58f7e2ca53a333b",
      "tree": "6f5fea282cfd227ccebf38537f10540e14e5559e",
      "parents": [
        "3d2b12e5ddc1d1311706934f9bd04d045be941be"
      ],
      "author": {
        "name": "Mikhail R. Gadelha",
        "email": "mikhail@igalia.com",
        "time": "Sat May 16 00:36:02 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 16 00:41:06 2026"
      },
      "message": "[libc] Make cpp::byte alias-safe (#194171)\n\nChange LIBC_NAMESPACE::cpp::byte from an enum-backed type to unsigned\nchar so libc’s raw-memory utilities and sorting code can legally access\nobject representations without violating C++ strict-aliasing rules.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a1403139d0ba7fdfc82d6ae8a2884f27fec9fa15\n"
    },
    {
      "commit": "3d2b12e5ddc1d1311706934f9bd04d045be941be",
      "tree": "bf9ff6eee1c81f30a324a95989727165367950e5",
      "parents": [
        "2f06c232e14b7cc17b1be9e82f7756afd15cfff7"
      ],
      "author": {
        "name": "Luca Barbato",
        "email": "luca.barbato@gmail.com",
        "time": "Sat May 16 00:27:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 16 00:30:38 2026"
      },
      "message": "[libc] Fix install-libc to work with LLVM_LIBC_FULL_BUILD\u003dOFF (#197366)\n\nInitialize variables that are conditionally set to avoid undefined\nreferences in install-libc and install-libc-stripped targets:\n\n- Initialize added_bitcode_targets to empty string (may be undefined\nwhen LIBC_TARGET_OS_IS_GPU\u003dOFF)\n- Initialize startup_target to empty string and only set to\n\"libc-startup\" when both LLVM_LIBC_FULL_BUILD\u003dON and NOT baremetal\n(startup directory is only included in full builds)\n- Initialize header_install_target to empty string (may be undefined\nwhen LLVM_LIBC_FULL_BUILD\u003dOFF)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0320f033decad99d81dfe7e156d6e32bb2d61725\n"
    },
    {
      "commit": "2f06c232e14b7cc17b1be9e82f7756afd15cfff7",
      "tree": "74d15377f9ddcd1f0747246658280fc3376f4ac0",
      "parents": [
        "0575f38605fbd46d242cd5c54de640afa2bbd016"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Sat May 16 00:05:03 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat May 16 00:10:44 2026"
      },
      "message": "[libc] Add config option to use memory builtin functions. (#197977)\n\nAdd a new CMake and C++ definition configuration option\n`LIBC_CONF_USE_MEM_BUILTINS` to allow users to use compiler builtins for\nmemory utility functions (memcpy, memset, memmove, memcmp, and bcmp)\ninstead of LLVM libc\u0027s internal implementations. Main use-cases are:\n- when users want to bring their own memory functions implementations\nthat are highly optimized for their targets\n- improve portability by providing a fallback for targets for which LLVM\nlibc does not have memory utility implementations yet\n- to be used for libc/shared functions and their testings, as we expect\nlibc/shared functions to provide their own memory functions.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a070a15671dc156646ac445fa0564ac33fd0b3a7\n"
    },
    {
      "commit": "0575f38605fbd46d242cd5c54de640afa2bbd016",
      "tree": "6f07b10cf0cda641259009536739cfade8b55d8a",
      "parents": [
        "2faf6a6197cefcfd65995ad232d8b7220f6c845f"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 21:49:37 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 21:55:09 2026"
      },
      "message": "[libc] Reduce number of iterations in threading tests. (#198030)\n\nPreviously the threading tests were running noticeably slowly and\ncausing flakey timeouts on some buildbots (e.g.\nhttps://lab.llvm.org/buildbot/#/builders/71/builds/48420)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: aaaae52215b4d8e44d9a05a40782560030850921\n"
    },
    {
      "commit": "2faf6a6197cefcfd65995ad232d8b7220f6c845f",
      "tree": "1253e9c0eab7e2442d5f39a8fef2f1f47fdd7ebc",
      "parents": [
        "bd1c313247049ee70caa1ebfed77b4d835b9cf32"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 21:02:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 21:06:08 2026"
      },
      "message": "[libc] Fix shadowing in printf (#197985)\n\nThe 320 bit float converter defined StorageType and DECIMAL_POINT\noutside of its functions. This caused issues with other definitions of\nthe same variables after #197516.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e7f80d6785b28a2ddd44a694365304135fc9adef\n"
    },
    {
      "commit": "bd1c313247049ee70caa1ebfed77b4d835b9cf32",
      "tree": "85b6ce4d59e57402638842e09e955f986ed81922",
      "parents": [
        "ba8cef7cddc07691c7e52e0414986c8d9f9d617d"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 18:49:33 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 18:50:28 2026"
      },
      "message": "[libc] implement ungetwc (#196162)\n\nAdd ungetwc function and tests. Part 6/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5f78a534403af6f21072c84e7be991e10964fc73\n"
    },
    {
      "commit": "ba8cef7cddc07691c7e52e0414986c8d9f9d617d",
      "tree": "bb3fa61cad46892ef3cd8b9760a512ffc7a7e105",
      "parents": [
        "7fb1b7c3acf3667f5acaf5bae6873022deb721c2"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 18:28:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 18:32:06 2026"
      },
      "message": "[libc] implement fgetwc (#196159)\n\nAdd fgetwc function and tests. Part 3/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c82de499201c68c94212c375df2815580d91af1e\n"
    },
    {
      "commit": "7fb1b7c3acf3667f5acaf5bae6873022deb721c2",
      "tree": "26f798bea0c9a996646c051f63be3017200290cf",
      "parents": [
        "a9b5497a77ec47ff7702433049a0e3bfba5c516f"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 18:26:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 18:31:43 2026"
      },
      "message": "[libc] implement getwc (#196163)\n\nAdd getwc function and tests. Part 7/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 05c54934021be86b40000006790caf1925b0551b\n"
    },
    {
      "commit": "a9b5497a77ec47ff7702433049a0e3bfba5c516f",
      "tree": "c7722a3c67525c9f164de502f8df919a3158f292",
      "parents": [
        "532df63d134e48b9b4c91876d0a466b4698f657c"
      ],
      "author": {
        "name": "Michael Jones",
        "email": "michaelrj@google.com",
        "time": "Fri May 15 18:25:40 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 18:31:23 2026"
      },
      "message": "[libc] implement putwchar (#196166)\n\nAdd putwchar function and tests. Part 10/10.\n\nAssisted by Gemini\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a00859b279e4044940cf971c134a5d9a96f1a12d\n"
    },
    {
      "commit": "532df63d134e48b9b4c91876d0a466b4698f657c",
      "tree": "9d096f245f4ac20bec4ce99abdf727a1361a73dc",
      "parents": [
        "dc3c8299eba95b73807fcf50288320be1a0141f7"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Fri May 15 12:24:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 12:25:34 2026"
      },
      "message": "[libc] Disable GCC 12 waccess passes to fix ICE in environ_internal (#197916)\n\nThe waccess pass in GCC 12 consistently segmentation faults when\nanalyzing the memory allocations in environ_internal.cpp. This change\ndisables the relevant tree-waccess passes for this specific file,\navoiding the ICE without requiring intrusive code refactoring.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b152ea80bacb2a6538e91149badbc6c6d8a34491\n"
    },
    {
      "commit": "dc3c8299eba95b73807fcf50288320be1a0141f7",
      "tree": "a4231970d86c466188b61614b484a4e2f77d7d28",
      "parents": [
        "0e6fee073598f0b5a859bbd4c314dfc8c696e7f0"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Fri May 15 09:20:54 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 09:25:49 2026"
      },
      "message": "[libc] Fix truncation warning/error in #197694 (#197889)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2ee06c888a95faf3a1f1382847987463c7dffd73\n"
    },
    {
      "commit": "0e6fee073598f0b5a859bbd4c314dfc8c696e7f0",
      "tree": "1ad21a9b3b133f8da117d5a7e85d289ee86d5394",
      "parents": [
        "9c9aa8f950c6de4a89fc5c6e4d8e705af69c11b3"
      ],
      "author": {
        "name": "Pavel Labath",
        "email": "pavel@labath.sk",
        "time": "Fri May 15 07:19:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 15 07:20:25 2026"
      },
      "message": "[libc] Add some checks to the mmap wrapper (#197694)\n\n- check that the discarded offset bits (both high and low) are zero\n(page alignment is checked in the kernel, but this cannot be done values\nwe discard for mmap2, nor for truncated values on 32-bit systems)\n- check for negative offsets (the kernel interface uses unsigned values,\nbut our off_t is signed)\n\nOne thing I\u0027m not checking, but other implementations do, is the size of\nthe allocation (after page alignment) fits into a ptrdiff_t. I didn\u0027t do\nthat now as it requires figuring how to get (and whether to cache) the\npage size. This is mainly relevant for 32-bit systems as no 64-bit\nsystem will let you allocate 2^63 bytes of (virtual) memory.\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5d9e711267c345fdc342bd963ddd8e99ed667205\n"
    },
    {
      "commit": "9c9aa8f950c6de4a89fc5c6e4d8e705af69c11b3",
      "tree": "1a276865c8410230c72f718351ca1453ebc9fd2a",
      "parents": [
        "7fe941883fda32bc69e64e71974e170fda567076"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Thu May 14 20:45:47 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 20:50:46 2026"
      },
      "message": "[libc] Fix LIBC_HAS_CONSTANT_EVALUATION macro and re-add LIBC_ENABLE_CONSTEXPR control. (#197774)\n\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: da9b5318c2d83f532d189b4ee0dd43c50a0f6957\n"
    },
    {
      "commit": "7fe941883fda32bc69e64e71974e170fda567076",
      "tree": "ba07cd00314c615c1ed826bfeaaeb5066db0aa15",
      "parents": [
        "5ccbd6464fefa125a563520965d8264098609c58"
      ],
      "author": {
        "name": "Mohammed Ashraf",
        "email": "125150223+Holo-xy@users.noreply.github.com",
        "time": "Thu May 14 19:31:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 19:35:50 2026"
      },
      "message": "[libc][hdrgen] Extend guard attribute support for types (#191663)\n\nCloses #187404\n- Add support for an optional guard attribute on types in hdrgen YAML\ninput.\n- Parse and validate guard from YAML in yaml_to_classes.py, ensuring\nguard macros have macro_header in the same YAML file.\n- Introduce emit_guard a function that extracts the common logic between\nguarded types and guarded functions.\n- Add  integration tests for both type guarding and function guarding\n\n---------\n\nCo-authored-by: un-pixelated \u003cmasterhc321@gmail.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a089568c021d2dd11acd9185d849659d3724f68c\n"
    },
    {
      "commit": "5ccbd6464fefa125a563520965d8264098609c58",
      "tree": "f5a0f7434e12c6e37cc96d1084d737aca8eea9a3",
      "parents": [
        "426c3fd6777a2189f679fa605f97860055b07c5d"
      ],
      "author": {
        "name": "Jinsong Ji",
        "email": "jinsong.ji@intel.com",
        "time": "Thu May 14 19:17:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 19:19:05 2026"
      },
      "message": "[libc][math] Fix UBSan errors from left-shifting negative values (#197747)\n\nReplace left-shift operations on potentially negative exponent values\nwith mathematically equivalent multiplication to avoid undefined\nbehavior. When computing exponential functions for inputs that produce\nresults less than 1, the exponent \u0027hi\u0027 can be negative (e.g., -2 for\nexp(-1.0) ≈ 0.368). Left-shifting negative values is undefined behavior\nin C++.\n\nFixed in:\n- exp.h: 3 instances\n- exp2.h: 3 instances\n- exp10.h: 3 instances\n- expm1.h: 2 instances\n- exp_utils.h: 1 instance (hi + 1022 can be negative)\n\nExposed by 2b2a63819f9f.\n\nCo-Authored-By: Claude Sonnet 4.5 \u003cnoreply@anthropic.com\u003e\n\n---------\n\nCo-authored-by: Claude Sonnet 4.5 \u003cnoreply@anthropic.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8ef6b39e623701b89e36f79c0c2285c3f6c8cae2\n"
    },
    {
      "commit": "426c3fd6777a2189f679fa605f97860055b07c5d",
      "tree": "7851a5f485611d82c9643b804eb839d44b72c7e1",
      "parents": [
        "250eecab62eae71bdb5e708f96e973d541ee1162"
      ],
      "author": {
        "name": "Jeff Bailey",
        "email": "jbailey@raspberryginger.com",
        "time": "Thu May 14 16:22:16 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 16:25:18 2026"
      },
      "message": "[libc] Restore sysconf to default entrypoints (#197696)\n\nReverts the experimental gating of sysconf introduced in 1d93fc4f74fe\nand restores it to the Scudo integration test entrypoints (undoing\n8257855f77d5).\n\nsysconf works correctly for the constants it handles. Moving it behind\nthe experimental flag broke the Scudo build since Scudo calls\nsysconf(_SC_PAGESIZE).\n\nChanges:\n* libc/config/linux/{x86_64,aarch64,riscv}/entrypoints.txt: moved\nsysconf back into TARGET_LIBC_ENTRYPOINTS, removed the\nLLVM_LIBC_ENABLE_EXPERIMENTAL_ENTRYPOINTS guard.\n* libc/test/integration/scudo/CMakeLists.txt: restored\nlibc.src.unistd.sysconf to the Scudo entrypoint library.\n\nAssisted-by: Automated tooling, human reviewed.\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 4bdc3383d9f8c6cb887e5f5b87a4fef0accb0018\n"
    },
    {
      "commit": "250eecab62eae71bdb5e708f96e973d541ee1162",
      "tree": "d601db8893020e7129f00f98b4a0896a61b65e61",
      "parents": [
        "55fd990cf3be4a002ed289abb6339d13a3843073"
      ],
      "author": {
        "name": "Aiden Grossman",
        "email": "aidengrossman@google.com",
        "time": "Thu May 14 14:19:57 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 14:25:50 2026"
      },
      "message": "[libc] Include correct headers in type_traits (#197691)\n\nOtherwise we end up with errors like the following when building with\nbazel:\n```c++\nIn file included from external/+_repo_rules+llvm-project/libc/src/__support/CPP/type_traits/is_move_constructible.h:12:\nexternal/+_repo_rules+llvm-project/libc/src/__support/CPP/type_traits/is_constructible.h:32:14: error: no template named \u0027bool_constant\u0027\n   32 |     : public bool_constant\u003c__is_constructible(T, Args...)\u003e {};\n```\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7206901d53c4460f8fb2aa5e83fcbf7ec443b231\n"
    },
    {
      "commit": "55fd990cf3be4a002ed289abb6339d13a3843073",
      "tree": "b9e00e4f38d916d2d36b7cd09ff6e366dc80d3d4",
      "parents": [
        "46bdd39c4ad5bb9a16cb5dfd5d411afa0104f827"
      ],
      "author": {
        "name": "lntue",
        "email": "lntue@google.com",
        "time": "Thu May 14 13:00:45 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 13:02:53 2026"
      },
      "message": "[libc] Fix shared math for gcc-7 or older compatibility. (#197476)\n\n- Add gcc-7 or older compatibility for cpp::is_assignable and\ncpp::is_constructible.\n- Apply LIBC_CONSTEXPR to FPUtil/rounding_mode.h\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 25c89996ab220146e1095a1a0ab6af12ebf71f58\n"
    },
    {
      "commit": "46bdd39c4ad5bb9a16cb5dfd5d411afa0104f827",
      "tree": "948bc5ebdf9d34c63829d40d55e13c8948ea3208",
      "parents": [
        "cc78945cf4ec34d52413d73d175374a521f1305c"
      ],
      "author": {
        "name": "Kiriti Ponduri",
        "email": "123718855+udaykiriti@users.noreply.github.com",
        "time": "Thu May 14 12:42:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 14 12:45:28 2026"
      },
      "message": "[libc] prefer *at syscalls in sys/stat wrappers (#195792)\n\n  - so the changes flips the #ifdef order to prefer the *at syscalls over normal ones.\n  - In modern architectures, *at system calls are preferred over normal\n    system calls.\n  - so by checking for \"*at\" sys calls first, we ensure better\n    compatibility with modern systems.\n  - then normal syscalls moved to else for support of older ones.\n\nSigned-off-by: udaykiriti \u003cudaykiriti624@gmail.com\u003e\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c5695b8f60a57caa46491ce78c7be9e336ad7fe9\n"
    }
  ],
  "next": "cc78945cf4ec34d52413d73d175374a521f1305c"
}
