[all-commits] [llvm/llvm-project] 630243: [llvm, clang] Don't assume non-erased DenseMap entr...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Thu May 28 09:43:43 PDT 2026


  Branch: refs/heads/users/alexey-bataev/spr/slp-enable-full-non-power-of-2-vectorization-by-default
  Home:   https://github.com/llvm/llvm-project
  Commit: 6302439f5aaea6cb776d8ceb5c2ef9108fccf702
      https://github.com/llvm/llvm-project/commit/6302439f5aaea6cb776d8ceb5c2ef9108fccf702
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/Interpreter/IncrementalParser.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/RemoveRedundantDebugValues.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/IR/LegacyPassManager.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/DenseSetTest.cpp
    M llvm/unittests/Support/JSONTest.cpp

  Log Message:
  -----------
  [llvm,clang] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#198982)

In preparation for switching DenseMap from tombstone deletion to
backward-shift deletion, update call sites that reuse an iterator or a
bucket reference after erasing another entry from the same map.

These work under tombstone deletion because unrelated buckets stay put,
but backward-shift deletion relocates entries to close the gap.

Add DenseMap::remove_if, similar to SmallPtrSet::remove_if, as
replacement for erase-while-iterating, and use it where applicable.

Aided by Claude Opus 4.7


  Commit: eceae62c84049e07b945d4912654c04c33d2c5ae
      https://github.com/llvm/llvm-project/commit/eceae62c84049e07b945d4912654c04c33d2c5ae
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon/getset.c

  Log Message:
  -----------
  [clang][CIR][nfc] Remove redundant code + update run lines (#199049)

This is just a minor clean-up post #186119.


  Commit: 133ad80cd864b546ee6d73f10b8ac36a9c982fed
      https://github.com/llvm/llvm-project/commit/133ad80cd864b546ee6d73f10b8ac36a9c982fed
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    A llvm/test/Transforms/CodeGenPrepare/X86/null-psi-no-crash.ll

  Log Message:
  -----------
  [CodeGenPrepare] Report an error if ProfileSummaryAnalysis is not available (#199268)

CodeGenPreparePass can't declare ProfileSummaryAnalysis as required,
because PSA is a module-level analysis, but CFP is a function-level pass.
Therefore it accesses PSA using getCachedResult, and PSA might be null.

In practice this doesn't happen, because the CGP pass pipeline
preparation code ensures that PSA is present. But if you invoke
CGP via opt -passes=codegenprepare, then it's not
there, and we segfault.

Fix for https://github.com/llvm/llvm-project/issues/173360.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: bb02cabc1dc448c805d1bf7d4036a1dabf1b744e
      https://github.com/llvm/llvm-project/commit/bb02cabc1dc448c805d1bf7d4036a1dabf1b744e
  Author: Kavin Gnanapandithan <kavin.balag at gmail.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/ordered-reduction.ll

  Log Message:
  -----------
  [SLP] Ensure TreeCost is scaled for ordered fadd reductions (#199388)

Resolves #199267

Addresses an issue where `getScaleToLoopIterations()` can return 1 on
isolated SLP trees because `UserTreeIndex` is invalid. This prevents
`TreeCost` from scaling alongside `ReductionCost`, causing the cost
model to incorrectly treat an unprofitable vector reduction as
profitable.

This patch passes the reduction root instruction down into
`calculateTreeCostAndTrimNonProfitable` and the underlying scale
calculation so `getScaleToLoopIterations` can get the correct block
context.


  Commit: 0068f46436ba971e936ef15e401a47adaa0b81fd
      https://github.com/llvm/llvm-project/commit/0068f46436ba971e936ef15e401a47adaa0b81fd
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp

  Log Message:
  -----------
  [VPlan] Simplify VPSCEVExpander, clarify naming/comments (NFC). (#199423)

Address post-commit comments from
https://github.com/llvm/llvm-project/pull/189455,
removing unneeded member, and clarify naming/comments to stress the
current logic tries to expand a SCEV to VPInstructions, with only a small 
sub-set of SCEV expression supported.


  Commit: 1503b86870993f9ad76d79ebd38cb989669c991e
      https://github.com/llvm/llvm-project/commit/1503b86870993f9ad76d79ebd38cb989669c991e
  Author: Jonathan Cohen <joncoh at apple.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedCyclone.td

  Log Message:
  -----------
  [NFC][AArch64][Cyclone] Model WriteSTP with a local SchedWriteRes (#198844)

Cyclone scheduling model uses SchedAlias between 2 SchedWriteRes
definitions from AArch64Schedule.td.
This prevents other scheduling models from aliasing WriteSTP. This patch
address the issue by defining a new CyWriteSTP and using that instead.


  Commit: aa8641584ad990f2a9f9c09e442439d672a2ef15
      https://github.com/llvm/llvm-project/commit/aa8641584ad990f2a9f9c09e442439d672a2ef15
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M .github/workflows/unprivileged-download-artifact/action.yml

  Log Message:
  -----------
  workflows/unprivileged-download-artifact: Remove template expansion (#199107)

https://github.com/llvm/llvm-project/security/code-scanning/1749
https://github.com/llvm/llvm-project/security/code-scanning/1752
https://github.com/llvm/llvm-project/security/code-scanning/1753
https://github.com/llvm/llvm-project/security/code-scanning/1879
https://github.com/llvm/llvm-project/security/code-scanning/1880


  Commit: 3f561eab147abf17c1838b4e3dc19837837a9740
      https://github.com/llvm/llvm-project/commit/3f561eab147abf17c1838b4e3dc19837837a9740
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll

  Log Message:
  -----------
  [LV] Handle chained selects/blends when creating new rdx chain. (#199443)

Make sure we recursively clone chains of selects/blends when re-creating
a reduction chain with new types.

Fixes https://github.com/llvm/llvm-project/issues/199406.


  Commit: 25db538883c4eeeb85889b01eaba3e7f433a0531
      https://github.com/llvm/llvm-project/commit/25db538883c4eeeb85889b01eaba3e7f433a0531
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M .github/workflows/docs.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-doxygen.yml
    R llvm/docs/requirements-hashed.txt
    M llvm/docs/requirements.txt
    A llvm/docs/requirements.txt.in

  Log Message:
  -----------
  workflows: Require hashed dependencies when installing docs dependencies (#197306)


  Commit: 45fa0a1deb722d52425fbca5cb56020e540cea63
      https://github.com/llvm/llvm-project/commit/45fa0a1deb722d52425fbca5cb56020e540cea63
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/test/Driver/crash-ir-repro.cpp

  Log Message:
  -----------
  [Clang][Driver] Reenable test on UBSan/HWAsan (#199448)

It passes locally, presumably due to
15488a7f78ce7b9ae3c06b031134e5cb339b335c fixing the behavior here.


  Commit: 3ad076ecc8121c44fb5c36b21c3e8acbeb4292ab
      https://github.com/llvm/llvm-project/commit/3ad076ecc8121c44fb5c36b21c3e8acbeb4292ab
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M .github/workflows/release-sources.yml

  Log Message:
  -----------
  workflows/release-sources: Validate input and remove template expansion (#199426)

https://github.com/llvm/llvm-project/security/code-scanning/1730
https://github.com/llvm/llvm-project/security/code-scanning/1731
https://github.com/llvm/llvm-project/security/code-scanning/1732
https://github.com/llvm/llvm-project/security/code-scanning/1733


  Commit: 38a8cd7cf6a1c45919a8c272c151de0dcc32571c
      https://github.com/llvm/llvm-project/commit/38a8cd7cf6a1c45919a8c272c151de0dcc32571c
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix use-after-scope from #198784 (#199455)

This fixes a use-after-scope introduced by #198784 (reported in
https://github.com/llvm/llvm-project/pull/198784#issuecomment-4530043621),
by manually extending the lifetime.

AFAIK clang is built using C++17 [*], hence C++23 P2718R0's lifetime
extension in range-based for loops does not apply.

[*] "Unless otherwise documented, LLVM subprojects are written using
standard C++17 code"
(https://llvm.org/docs/CodingStandards.html#c-standard-versions)


  Commit: 72d747d9576cfd13039cb5f7ed7f8fb69f85daec
      https://github.com/llvm/llvm-project/commit/72d747d9576cfd13039cb5f7ed7f8fb69f85daec
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    R libcxx/test/std/utilities/memory/specialized.algorithms/destroy.h
    A libcxx/test/support/algorithms.h

  Log Message:
  -----------
  [libc++][test] Move backported algorithms to `libcxx/test/support` (#199431)

And namespace `util`. This will make helpers provided more consistently,
and potentially allow us to unify test helper namespaces in the future.


  Commit: 25294a2fffcf40cbd8b6743d78524badeded7446
      https://github.com/llvm/llvm-project/commit/25294a2fffcf40cbd8b6743d78524badeded7446
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Validate input and remove template expansion (#199434)

https://github.com/llvm/llvm-project/security/code-scanning/1699
https://github.com/llvm/llvm-project/security/code-scanning/1700
https://github.com/llvm/llvm-project/security/code-scanning/1701
https://github.com/llvm/llvm-project/security/code-scanning/1702
https://github.com/llvm/llvm-project/security/code-scanning/1703
https://github.com/llvm/llvm-project/security/code-scanning/1704
https://github.com/llvm/llvm-project/security/code-scanning/1705
https://github.com/llvm/llvm-project/security/code-scanning/1706
https://github.com/llvm/llvm-project/security/code-scanning/1707
https://github.com/llvm/llvm-project/security/code-scanning/1708
https://github.com/llvm/llvm-project/security/code-scanning/1709
https://github.com/llvm/llvm-project/security/code-scanning/1710
https://github.com/llvm/llvm-project/security/code-scanning/1711


  Commit: e8bd5dc7f424fcb22c6db20ef98f069f2635244f
      https://github.com/llvm/llvm-project/commit/e8bd5dc7f424fcb22c6db20ef98f069f2635244f
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/tools/clang-sycl-linker/BUILD.gn

  Log Message:
  -----------
  [gn build] Add missing clang-sycl-linker dependency (#199464)


  Commit: ab1745439c7019d0753afc616c5fc5aef7b82fb6
      https://github.com/llvm/llvm-project/commit/ab1745439c7019d0753afc616c5fc5aef7b82fb6
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    R llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll

  Log Message:
  -----------
  Revert "[LV] Handle chained selects/blends when creating new rdx chain. (#199443)" (#199461)

This reverts commit 3f561eab147abf17c1838b4e3dc19837837a9740 due to
buildbot breakage
((https://lab.llvm.org/staging/#/builders/7/builds/1736/steps/9/logs/stdio).


  Commit: 11f0e7768bcd7c1c5081395f46391aacf37f9ac4
      https://github.com/llvm/llvm-project/commit/11f0e7768bcd7c1c5081395f46391aacf37f9ac4
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/GCRootLowering.cpp
    M llvm/test/CodeGen/Generic/gc-lowering.ll

  Log Message:
  -----------
  [CodeGen][GC] Initialize roots with `Constant::getNullValue()` instead of `ConstantPointerNull::get()` (#199367)

Fixes #199219


  Commit: a029fb9dda06a08c1f37037d03dda3ec053bc139
      https://github.com/llvm/llvm-project/commit/a029fb9dda06a08c1f37037d03dda3ec053bc139
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/test/CodeGenCXX/visibility.cpp
    A clang/test/Modules/template-default-args-2.cpp
    A clang/test/Modules/template-default-args-3.cpp
    M clang/test/SemaTemplate/generic-lambda.cpp
    M clang/test/SemaTemplate/partial-spec-instantiate.cpp

  Log Message:
  -----------
  [clang] NFC: add some new test cases (#199467)

These are extracted from my current and future PRs.

They don't have much to do with the PRs themselves except that they were
regressions our test suite missed catching.


  Commit: 8811c2b3586831761807b683382d50ee185f3d7a
      https://github.com/llvm/llvm-project/commit/8811c2b3586831761807b683382d50ee185f3d7a
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp

  Log Message:
  -----------
  [ConstantHoisting] Avoid DenseMap reference invalidated by insertion (#199468)

Fix https://reviews.llvm.org/D28962 : DenseMap does not promise to keep
references stable across insertion. This happens to work today because
we don't do bucket eviction.

Pre-populate every node up front.


  Commit: 4aac0c636a437e727f4ecc691c4f964cccee0e4d
      https://github.com/llvm/llvm-project/commit/4aac0c636a437e727f4ecc691c4f964cccee0e4d
  Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/utils/lit/tests/unit/Util.py

  Log Message:
  -----------
  [AIX] Re-apply: Remove unsupported AIX native echo option -n by using printf (#199395)

AIX native echo doesn't support the `-n` flag.
Use `printf` instead to ensure the test works across all systems and
making it portable.

The current test fails as follows:
```
FAIL: lit :: unit/Util.py (1 of 1)
******************** TEST 'lit :: unit/Util.py' FAILED ********************
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
"/opt/freeware/bin/python3.12" /home/himadhit/llvm/community/build/utils/lit/tests/unit/Util.py
# executed command: /opt/freeware/bin/python3.12 /home/himadhit/llvm/community/build/utils/lit/tests/unit/Util.py
# .---command stderr------------
# | F..
# | ======================================================================
# | FAIL: test_basic (__main__.TestCommandCache.test_basic)
# | ----------------------------------------------------------------------
# | Traceback (most recent call last):
# |   File "/home/himadhit/llvm/community/build/utils/lit/tests/unit/Util.py", line 32, in test_basic
# |     self.assertEqual(lit_config.run_command_cached(["echo", "-n", "hi"]), b"hi")
# | AssertionError: b'-n hi\n' != b'hi'
# | 
# | ----------------------------------------------------------------------
# | Ran 3 tests in 2.092s
# | 
# | FAILED (failures=1)
# `-----------------------------
# error: command failed with exit status: 1
```

Co-authored-by: himadhith <himadhith.v at ibm.com>


  Commit: e77ae26ca8ead5ca47dd6ed909031fb3c539a488
      https://github.com/llvm/llvm-project/commit/e77ae26ca8ead5ca47dd6ed909031fb3c539a488
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/test/tools/llubi/alloca_large_count.ll
    M llvm/test/tools/llubi/alloca_large_size.ll
    M llvm/test/tools/llubi/alloca_poison_count.ll
    M llvm/test/tools/llubi/alloca_size_overflow.ll
    M llvm/test/tools/llubi/assume_false.ll
    M llvm/test/tools/llubi/assume_invalid_align.ll
    M llvm/test/tools/llubi/assume_misalign.ll
    M llvm/test/tools/llubi/assume_misalign_all_ones.ll
    M llvm/test/tools/llubi/assume_nondereferenceable.ll
    M llvm/test/tools/llubi/assume_null.ll
    M llvm/test/tools/llubi/assume_null_all_ones.ll
    M llvm/test/tools/llubi/assume_poison.ll
    M llvm/test/tools/llubi/assume_poison_align.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_nullary_provenance.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob1.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob2.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob3.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_poison.ll
    M llvm/test/tools/llubi/attribute_noundef_agg_ub.ll
    M llvm/test/tools/llubi/attribute_noundef_ub.ll
    M llvm/test/tools/llubi/br_poison.ll
    M llvm/test/tools/llubi/call_mismatched_signature.ll
    M llvm/test/tools/llubi/call_poison.ll
    M llvm/test/tools/llubi/divrem_ub1.ll
    M llvm/test/tools/llubi/divrem_ub2.ll
    M llvm/test/tools/llubi/divrem_ub3.ll
    M llvm/test/tools/llubi/divrem_ub4.ll
    M llvm/test/tools/llubi/indirectbr_invalid.ll
    M llvm/test/tools/llubi/indirectbr_poison.ll
    M llvm/test/tools/llubi/infinite_loop.ll
    M llvm/test/tools/llubi/invoke_poison.ll
    M llvm/test/tools/llubi/lib_cxx_memory_large_size.ll
    M llvm/test/tools/llubi/lib_double_free.ll
    M llvm/test/tools/llubi/lib_free_nullary_pointer.ll
    M llvm/test/tools/llubi/lib_free_out_of_bound.ll
    M llvm/test/tools/llubi/lib_free_stack.ll
    M llvm/test/tools/llubi/lib_poison_argument.ll
    M llvm/test/tools/llubi/lib_printf_not_enough_argument.ll
    M llvm/test/tools/llubi/lib_printf_unknown_specifier.ll
    M llvm/test/tools/llubi/lib_read_nullary_string.ll
    M llvm/test/tools/llubi/lib_uninit_string.ll
    M llvm/test/tools/llubi/load_noundef_ub_poison.ll
    M llvm/test/tools/llubi/load_noundef_ub_poison_padding.ll
    M llvm/test/tools/llubi/load_noundef_ub_undef.ll
    M llvm/test/tools/llubi/loadstore_misaligned.ll
    M llvm/test/tools/llubi/loadstore_null.ll
    M llvm/test/tools/llubi/loadstore_oob1.ll
    M llvm/test/tools/llubi/loadstore_poison.ll
    M llvm/test/tools/llubi/loadstore_uaf.ll
    M llvm/test/tools/llubi/metadata_noundef_ub.ll
    M llvm/test/tools/llubi/stack_overflow.ll
    M llvm/test/tools/llubi/store_dead.ll
    M llvm/test/tools/llubi/switch_poison.ll
    M llvm/test/tools/llubi/unreachable.ll
    M llvm/tools/llubi/lib/CMakeLists.txt
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/ExecutorBase.cpp
    M llvm/tools/llubi/llubi.cpp

  Log Message:
  -----------
  [llubi] Print out inst location in stack trace (#199430)

This patch appends `file:line number` to each frame in the stack trace.
It would improve the debugging experience.

In all test files, the inputs are supplied via stdin. I think it should
be okay, as I don't need to add wildcards for filenames.


  Commit: 63bb8dc70a1786165ae5bf472cadb1a90f91fa2f
      https://github.com/llvm/llvm-project/commit/63bb8dc70a1786165ae5bf472cadb1a90f91fa2f
  Author: Brad Smith <brad at comstyle.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp

  Log Message:
  -----------
  [Mips] Remove mips from omitting the frame pointer for Linux (#199381)

6b1f976858eea5a64f058ca48873be834bd79569 enabled omitting
the frame pointer no matter what OS so remove the now redundancy
with having this on the Linux path.


  Commit: d06febc3a5fef5d87200a8af76c1efe811ba4dc0
      https://github.com/llvm/llvm-project/commit/d06febc3a5fef5d87200a8af76c1efe811ba4dc0
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y.pass.cpp

  Log Message:
  -----------
  [libc++] Fix shared_ptr(Y*) constraint check on GCC (#199429)

GCC has fixed SFINAEing on `delete` since at least GCC 11, so we can
properly constrain the constructor.


  Commit: 9bd8bbb2b76c55ca83ddb6e0aa8a3a79b65706d4
      https://github.com/llvm/llvm-project/commit/9bd8bbb2b76c55ca83ddb6e0aa8a3a79b65706d4
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-24 (Sun, 24 May 2026)

  Changed paths:
    M .github/workflows/llvm-abi-tests.yml

  Log Message:
  -----------
  workflows/llvm-abi-tests: Remove template expansions (#199436)

https://github.com/llvm/llvm-project/security/code-scanning/1655
https://github.com/llvm/llvm-project/security/code-scanning/1656
https://github.com/llvm/llvm-project/security/code-scanning/1657
https://github.com/llvm/llvm-project/security/code-scanning/1658
https://github.com/llvm/llvm-project/security/code-scanning/1659
https://github.com/llvm/llvm-project/security/code-scanning/1660
https://github.com/llvm/llvm-project/security/code-scanning/1661
https://github.com/llvm/llvm-project/security/code-scanning/1662
https://github.com/llvm/llvm-project/security/code-scanning/1663
https://github.com/llvm/llvm-project/security/code-scanning/1664


  Commit: aac212f0bc9acbc40a8a2e9638f4b7496c25d0b2
      https://github.com/llvm/llvm-project/commit/aac212f0bc9acbc40a8a2e9638f4b7496c25d0b2
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes e77ae26 (#199476)

This fixes e77ae26ca8ead5ca47dd6ed909031fb3c539a488.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 0285f1c6b791fb974a71a236e329848cf2d2fbe9
      https://github.com/llvm/llvm-project/commit/0285f1c6b791fb974a71a236e329848cf2d2fbe9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M mlir/include/mlir/Support/ThreadLocalCache.h
    M mlir/lib/Conversion/PDLToPDLInterp/RootOrdering.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp

  Log Message:
  -----------
  [mlir] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199365)

Like the preceding llvm/ change, fix MLIR sites that reuse an iterator
or bucket reference after erasing from the same map, in preparation for
backward-shift DenseMap deletion which relocates surviving entries.

Use DenseMap::remove_if in ThreadLocalCache::clearExpiredEntries and the
RootOrdering cycle contraction (deferring the in-cycle graph erases
until
after iteration). ThreadLocalCache::get reads the value into a local and
bufferizeOp snapshots the worklist before folding, since those erases
re-enter via a rewriter listener.

Aided by Claude Opus 4.7


  Commit: 8446759ee610fe5ad1c5ab9cb2239ef3ad2e4c30
      https://github.com/llvm/llvm-project/commit/8446759ee610fe5ad1c5ab9cb2239ef3ad2e4c30
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h

  Log Message:
  -----------
  [lldb] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199499)

Similar to #198982


  Commit: 4e4095bb9ffbf46217a0574b3258b1a5d6edf737
      https://github.com/llvm/llvm-project/commit/4e4095bb9ffbf46217a0574b3258b1a5d6edf737
  Author: Boyao Wang <wangboyao at bytedance.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvzip.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll

  Log Message:
  -----------
  [RISCV][CodeGen] Add initial CodeGen support of vunzip{e,o} (#196024)

Add initial support for vunzip{e,o} instructions, which are included in
zvzip extension.


  Commit: 48cec8344ab4edf284c80909fa00aff06fc8c806
      https://github.com/llvm/llvm-project/commit/48cec8344ab4edf284c80909fa00aff06fc8c806
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/clear_cache.c

  Log Message:
  -----------
  [compiler-rt] Inline __NR_riscv_flush_icache instead of including linux/unistd.h (#193645)

Avoid the dependency on kernel headers to get __NR_riscv_flush_icache,
mirroring the existing approach used for __ARM_NR_cacheflush.

Assisted-by: Claude Sonnet 4.6


  Commit: 5f6a7f6af28ea3d8283538625f08d949cde2ba7b
      https://github.com/llvm/llvm-project/commit/5f6a7f6af28ea3d8283538625f08d949cde2ba7b
  Author: Rohit Garg <rohgarg at qti.qualcomm.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp

  Log Message:
  -----------
  [LoopInterchange] drop duplicate Instruction type check in populateDependencyMatrix (#199498)

Remove a duplicate isa<Instruction> check in populateDependencyMatrix.


  Commit: af92edf8b3aa4104992de9fe08ce2170d14bc28d
      https://github.com/llvm/llvm-project/commit/af92edf8b3aa4104992de9fe08ce2170d14bc28d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/mprotect.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/munmap.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/thread.cpp
    M libc/startup/linux/aarch64/CMakeLists.txt
    M libc/startup/linux/aarch64/tls.cpp
    M libc/startup/linux/riscv/CMakeLists.txt
    M libc/startup/linux/riscv/tls.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    M libc/startup/linux/x86_64/tls.cpp

  Log Message:
  -----------
  [libc] Port munmap and mprotect to the new syscall interface (#199199)

Assisted by Gemini.


  Commit: c59178d6037f582c7e8fb0141c7a16cd8d5d8d5e
      https://github.com/llvm/llvm-project/commit/c59178d6037f582c7e8fb0141c7a16cd8d5d8d5e
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    A libc/src/__support/net/CMakeLists.txt
    A libc/src/__support/net/address.cpp
    A libc/src/__support/net/address.h
    M libc/src/arpa/inet/CMakeLists.txt
    M libc/src/arpa/inet/inet_addr.cpp
    M libc/src/arpa/inet/inet_aton.cpp
    M libc/test/src/arpa/inet/inet_aton_test.cpp

  Log Message:
  -----------
  [libc] Fix inet_aton (#198791)

The main (in terms of LOC) change is moving the implementation to an
internal function in order to avoid the inet_addr->inet_aton dependency.

I also fix a bug where we (mistakenly) accepted whitespace and signs
inside the address. I also match the glibc implementation in ignoring
the data after the first whitespace.


  Commit: 25bb6a9775ebff46512df133788d266228f90c66
      https://github.com/llvm/llvm-project/commit/25bb6a9775ebff46512df133788d266228f90c66
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    A llvm/test/Transforms/InstCombine/trunc-minmax-intrinsics.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/trunc-intrinsics.ll

  Log Message:
  -----------
  [InstCombine] Narrow umin/umax/smin/smax through trunc. (#199213)

Update EvaluateInDifferentType / canEvaluateTruncated to support
narrowing umin/umax/smin/smax intrinsics, when their result fits in the
narrow type: zero high bits for umin/umax, or enough sign
bits for smin/smax.

Alive2 Proofs:
 * umin/umax with high bits zero: https://alive2.llvm.org/ce/z/dJC_Fj
 * smin/smax with sign-bits set: https://alive2.llvm.org/ce/z/z7vM8Z

End-to-end examples from C workloads performing pixel math:
https://llvm.godbolt.org/z/jK3bd3GfY

PR: https://github.com/llvm/llvm-project/pull/199213


  Commit: 59681c65c71c4f89bf86e010291ac6f5d7cd5003
      https://github.com/llvm/llvm-project/commit/59681c65c71c4f89bf86e010291ac6f5d7cd5003
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M libcxx/include/any
    A libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_reference_types.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/reference_types.verify.cpp
    A libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.const.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.verify.cpp

  Log Message:
  -----------
  [libc++] remove duplicate assertions for void/reference const any_cast (#199425)

For test cases of the const overload of any_cast, such as:
```C++
void test() {
  std::any a = 0;
  const std::any& a2 = a;
  (void)std::any_cast<int&>(&a2);
}
```
(And similarly for void).

The problem is that the assertions are implemented both in the const and
non-const any_cast overloads, but since the const overload delegates to
the non-const overload, that ends up producing the same assertion twice.

This separates those test cases, because those assertions are
implemented in the function body, and that's only instantiated once per
specialization, not once per use.


  Commit: 3056add6389b58656092edf9fed75ca6d55a9d9d
      https://github.com/llvm/llvm-project/commit/3056add6389b58656092edf9fed75ca6d55a9d9d
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp

  Log Message:
  -----------
  [VPlan] Rename Expression::isSingleScalar (NFC) (#199041)

The single-scalar terminology, as it is used in other places indicates
that all operands are scalars and that the result is a scalar.
VPExpressionRecipe::isSingleScalar is a misnomer, and is actually a
vector-to-scalar, using the existing terminology. Rename it for clarity.


  Commit: 84f95300d0f9efb45d5f1b76eb806c4772b16569
      https://github.com/llvm/llvm-project/commit/84f95300d0f9efb45d5f1b76eb806c4772b16569
  Author: Santanu Das <santdas at qti.qualcomm.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/test/Driver/hexagon-toolchain-elf.c
    M llvm/lib/Target/Hexagon/Hexagon.td
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonSubtarget.h
    A llvm/test/CodeGen/Hexagon/reserved-regs.ll

  Log Message:
  -----------
  [Hexagon] Support reserving R16-R28 registers via -ffixed-rN (#197208)

Extend register reservation from R19-only to R16-R28. This allows users
to reserve callee-saved registers (R16-R27) and R28 via command-line
flags -ffixed-r16 through -ffixed-r28. The single bool ReservedR19 is
replaced with an array-based approach (ReservedR[32]) to scale cleanly
across all supported registers.

---------

Co-authored-by: quic-santdas <quic_santdas at quicinc.com>


  Commit: e1a9576a9049a8c5fdf249e22ecc68dbc8d9d910
      https://github.com/llvm/llvm-project/commit/e1a9576a9049a8c5fdf249e22ecc68dbc8d9d910
  Author: Jiahao Guo <eoonguo at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c

  Log Message:
  -----------
  [CIR][AArch64] Lower NEON vsli/vsliq intrinsics (#198309)

### summary

part of: https://github.com/llvm/llvm-project/issues/185382

Lower the AArch64 NEON shift-left-and-insert intrinsics (`vsli_n_v` /
`vsliq_n_v`) in the CIR codegen path. The lowering mirrors classic
CodeGen (`clang/lib/CodeGen/TargetBuiltins/ARM.cpp`): bitcast both
vector operands to the target element type and emit a direct
`llvm.aarch64.neon.vsli` intrinsic call.


  Commit: 2894d7502f0b9ee8a3fc26867f180838c3aca3a1
      https://github.com/llvm/llvm-project/commit/2894d7502f0b9ee8a3fc26867f180838c3aca3a1
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Semantics/OpenMP/workdistribute05.f90

  Log Message:
  -----------
  [Flang][OpenMP] Allow workdistribute inside 'target teams' (#199006)

Currently, a `workdistribute` construct nested inside of a combined
`target teams` is incorrectly reported as an error. This patch fixes
that.


  Commit: 72b1c13378f6236956df37f9f8f621c7e60d32a6
      https://github.com/llvm/llvm-project/commit/72b1c13378f6236956df37f9f8f621c7e60d32a6
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/TestEnumValueLookup.py
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/main.cpp

  Log Message:
  -----------
  [lldb] Add enum lookup to DIL (#192065)


  Commit: c52c3d203ded16ad88c8cf00e039fd2e45784e94
      https://github.com/llvm/llvm-project/commit/c52c3d203ded16ad88c8cf00e039fd2e45784e94
  Author: Jonathan L'Work <113400649+Jonathan03ant at users.noreply.github.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt

  Log Message:
  -----------
  [AMDGPU] Fix v_dot4_i32_i8 alias to set neg_lo modifiers (#197998)

Fixes issue here https://github.com/ROCm/ROCm/issues/6126

The `v_dot4_i32_i8` assembly alias was not setting the `neg_lo` modifier
bits when converted to `v_dot4_i32_iu8`, which causes signed int8
operands to be treated as unsigned.

For example: `q=[1,-1,1,-1], k=[1,1,1,1]`: expected 0, returned 512. The
instruction is computing `1*1 + 255*1 + 1*1 + 255*1 = 512` ; treating
`-1 (0xFF)` as `255`.

On AMD GFX11+, the native `v_dot4_i32_i8` instruction doesn't exist. The
hardware provides `v_dot4_i32_iu8` with `neg_lo` modifier bits to
control signedness of each operand. The compiler correctly lowers
`v_dot4_i32_i8` intrinsics by setting `neg_lo:[1,1,0]`, but inline
assembly using the `v_dot4_i32_i8` mnemonic bypasses this lowering and
goes directly to the assembler.

The assembler accepted `v_dot4_i32_i8` as a simple mnemonic alias but
didn't set the neg_lo modifiers, this results in all-unsigned behavior
which is wrong.

This patch adds assembly parser logic to detect when `v_dot4_i32_i8` is
used and automatically inject `neg_lo=0x3` *(src0 and src1 signed, src2
unsigned)* during operand conversion.

---------

Co-authored-by: Shilei Tian <i at tianshilei.me>


  Commit: 3e6582fba63f1b2cade4eb3222736d50e1121b7b
      https://github.com/llvm/llvm-project/commit/3e6582fba63f1b2cade4eb3222736d50e1121b7b
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/warn-lifetime-safety-invalidations.cpp

  Log Message:
  -----------
  Reland "[LifetimeSafety] Detect iterator invalidation through container aliases" (#197873)

This relands #195231, which was reverted in commit
7c9717848851f3a71908becab4312ddc2d8482b8.

The original crash from the reproducer no longer reproduces after
#196680, #197220, and #197604. I verified the original `repro.cpp`: it
no longer hits the lifetime-safety assertion now.

Also added regression tests for the crash:

```cpp
struct SinkInteriorBorrow {
  const char *dest_; // expected-note {{this field dangles}}

  SinkInteriorBorrow(std::string *dest, int n) : dest_(dest->data()) { // expected-warning {{parameter which escapes to a field is later invalidated}}
    if (n > 0)
      dest->clear(); // expected-note {{invalidated here}}
  }
};
```

Closes https://github.com/llvm/llvm-project/issues/193044


  Commit: e9132e96ee84c15c16e4f482701756192c7b1c9a
      https://github.com/llvm/llvm-project/commit/e9132e96ee84c15c16e4f482701756192c7b1c9a
  Author: Jan Schultke <me at eisenwave.net>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/Sema/builtins-elementwise-math.c

  Log Message:
  -----------
  [clang] Implement `__builtin_elementwise_clmul` (#196633)

Follow-up to:
- https://github.com/llvm/llvm-project/pull/140301
- https://github.com/llvm/llvm-project/pull/168731

I'm mostly just following the steps of
https://github.com/llvm/llvm-project/pull/153113/ and other prior PRs
here. I don't have any idea how testing works yet.

CC @artagnon @oscardssmith


  Commit: 78f660cca04448cde10dad5e04f1bc09927dd965
      https://github.com/llvm/llvm-project/commit/78f660cca04448cde10dad5e04f1bc09927dd965
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll

  Log Message:
  -----------
  [AtomicExpand] Support non-integer atomic loads. (#199310)

This is arguably an enhancement rather than a bugfix.  But
AtomicExpandPass already tries to support some non-integer atomic ops
using cmpxchg by bitcasting to/from an integer type.  We're just missing
this one path used by atomic load.  Seems easy enough to support it.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 76c26357e9431086ae8821a8deefc22654822ba8
      https://github.com/llvm/llvm-project/commit/76c26357e9431086ae8821a8deefc22654822ba8
  Author: Domenic Nutile <domenic.nutile at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll

  Log Message:
  -----------
  [AMDGPU][True16] Create tests that will demonstrate true16 G_SEXTLOAD/G_ZEXTLOAD legalization changes (#198669)

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>

Stack PRs:
https://github.com/llvm/llvm-project/pull/198670
https://github.com/llvm/llvm-project/pull/198671

See https://github.com/llvm/llvm-project/pull/195289 for previous
discussion


  Commit: 79f19001448d88fe5e5d77719013932becfd0f7d
      https://github.com/llvm/llvm-project/commit/79f19001448d88fe5e5d77719013932becfd0f7d
  Author: RolandF77 <froese at ca.ibm.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstrAltivec.td
    A llvm/test/CodeGen/PowerPC/partial-red.ll

  Log Message:
  -----------
  [PowerPC] Add PPC BE support for partial reductions (#195927)

Add PPC BE support for partial reduction ISD opcodes
PARTIAL_REDUCE_UMLA/SMLA/SUMLA.


  Commit: c1c4c8e23d099c199ea90b050742c3d6c5efcfaf
      https://github.com/llvm/llvm-project/commit/c1c4c8e23d099c199ea90b050742c3d6c5efcfaf
  Author: Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/drop-unit-dims-with-shape-cast.mlir
    M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
    M mlir/test/Dialect/Vector/vector-transforms.mlir

  Log Message:
  -----------
  Revert "[mlir][vector] Migrate drop-lead-unit-dim to shape_cast #196206" (#199546)

This reverts commit 24b8bb18f3417419cbd16fcd31f4e2842df952a1 from
#196206

This broke AArch64 SVE Linux buildbots, however it was not reported due
a glitch in the buildbot infrastructure. Following bots are failing:

https://lab.llvm.org/buildbot/#/builders/121
https://lab.llvm.org/buildbot/#/builders/41
https://lab.llvm.org/buildbot/#/builders/4
https://lab.llvm.org/buildbot/#/builders/199
https://lab.llvm.org/buildbot/#/builders/17
https://lab.llvm.org/buildbot/#/builders/198
https://lab.llvm.org/buildbot/#/builders/143


  Commit: 7ba877e9ce07572a2f6e0857e9083889d77a91fa
      https://github.com/llvm/llvm-project/commit/7ba877e9ce07572a2f6e0857e9083889d77a91fa
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp

  Log Message:
  -----------
  [VPlan] Add matcher for canonical VPWidenIntOrFpInductionRecipe (NFC). (#199539)

Add matcher for canonical VPWidenIntOrFpInductionRecipe to simplify some
matching.


  Commit: c10922a6ca6a2de54653cceafcd4fb276039ae26
      https://github.com/llvm/llvm-project/commit/c10922a6ca6a2de54653cceafcd4fb276039ae26
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes af92edf (#199515)

This fixes af92edf8b3aa4104992de9fe08ce2170d14bc28d.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 5b93aeb21818cfdb142b14e70ef4eb0363ca9d88
      https://github.com/llvm/llvm-project/commit/5b93aeb21818cfdb142b14e70ef4eb0363ca9d88
  Author: David Salinas <dsalinas at amd.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/lib/Driver/OffloadBundler.cpp
    A clang/test/Driver/clang-offload-bundler-multi-compress.c

  Log Message:
  -----------
  clang-offload-bundler incorrectly errors on multi-CCOB binaries (#182579)

Issue: https://github.com/ROCm/llvm-project/issues/448

Objects can have multiple Clang Compressed Offload Bundles (CCOB) in the
.hip_fatbin section. This happens when there are multiple
translation/compilation units built and then linked together into an
Archive or Shared Object. The resulting .hip_fatbin section will have
multiple offload bundles delimited by the magic string "CCOB" (on a 4k
alignment boundary). The Clang Offload bundler API, when a List of
bundle entries is requested, was not properly iterating (looping) over
each separate bundle.

REPRODUCTION
Test File: librocblas.so.5 from ROCm 6.x distribution
.hip_fatbin section: 8,163,887 bytes containing 64 concatenated CCOBs

Extract the .hip_fatbin section with:
objcopy --dump-section .hip_fatbin=fatbin.bin binary


Structure:
Offset 0x0: CCOB header + 1.16 MB compressed (→ 12.41 MB uncompressed)
Offset 0x129000: CCOB header + 1.01 MB compressed (→ 13.14 MB
uncompressed)
Offset 0x227000: CCOB header + 36.5 KB compressed (→ 1.21 MB
uncompressed)
... (61 more bundles)

Command:
$ clang-offload-bundler --type=o --input=librocblas.so.5 --list

Error:
clang-offload-bundler: error: Failed to decompress input: Could not
decompress embedded file contents: Src size is incorrect

Expected:
Should list all target triples in the bundle, or at minimum process
the first bundle without error.


  Commit: d5f223da95da701f03cab10626d2a6d518e03737
      https://github.com/llvm/llvm-project/commit/d5f223da95da701f03cab10626d2a6d518e03737
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec-strided-store.ll

  Log Message:
  -----------
  [SLP] Enable widening strided revectorization of vector stores (#198920)

This commit adds support for re-vectorization of vector stores into
widened strided stores. That is:
```
%p1 = getelementptr i16, ptr %p0, i64 16
store <4 x i16> zeroinitializer, ptr %p1, align 2
store <4 x i16> zeroinitializer, ptr %p0, align 2
```
can be further vectorized to:
```
call void @llvm.experimental.vp.strided.store.v2i64.p0.i64(<2 x i64> zeroinitializer, ptr align 2 %p0, i64 32, <2 x i1> splat (i1 true), i32 2)
```


  Commit: f6e4e71fcdbff98cb060f87695c75f00b43bf918
      https://github.com/llvm/llvm-project/commit/f6e4e71fcdbff98cb060f87695c75f00b43bf918
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    A llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll

  Log Message:
  -----------
  Reapply "[LV] Handle chained selects/blends when creating new rdx cha… (#199559)

This reverts commit ab1745439c7019d0753afc616c5fc5aef7b82fb6 & reapplies
#199443.

Recommit with additional additional fix to handle other select-like
recipes including VPWidenRecipe and VPReplicateRecipe.

Original message:
Make sure we recursively clone chains of selects/blends when re-creating
a reduction chain with new types.

Fixes https://github.com/llvm/llvm-project/issues/199406.


  Commit: 192ea327028d1e8ad37413ebf26ee0da40a4b0fc
      https://github.com/llvm/llvm-project/commit/192ea327028d1e8ad37413ebf26ee0da40a4b0fc
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp

  Log Message:
  -----------
  [ObjectYAML] Fix `DXContainerYAML::fromDXContainer` return value (#199534)


  Commit: 9b4f7d1ae62db9c828ea6b676a295b1e70abed9c
      https://github.com/llvm/llvm-project/commit/9b4f7d1ae62db9c828ea6b676a295b1e70abed9c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll

  Log Message:
  -----------
  [VPlan] Collect unit-stride predicates for making vector decisions. (#199568)

Split-off from approved https://github.com/llvm/llvm-project/pull/197276
to land separately.

Collect all unit-stride predicates once, up-front, ensuring that cost
decisions have predicates available, independent of processing order.


  Commit: 3c6fdba85b4f21b30b9cd9196b0e858204b3dff2
      https://github.com/llvm/llvm-project/commit/3c6fdba85b4f21b30b9cd9196b0e858204b3dff2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
    R llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll

  Log Message:
  -----------
  [LV] Move constant folding test to VPlan (NFC). (#198407)

Check VPlan print for constant folding test. This makes it more robust
w.r.t. to future cost-modeling changes.


  Commit: 3aa9ae2da352db6f5822fdc91a170db5e496be32
      https://github.com/llvm/llvm-project/commit/3aa9ae2da352db6f5822fdc91a170db5e496be32
  Author: Elio <xiongzile at bytedance.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    A llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll

  Log Message:
  -----------
  [VPlan] Collect FOR PHIs before sinking/hoisting recurrence users (#194671)

Avoid iterating over HeaderVPBB->phis() while potentially mutating the
underlying VPBasicBlock. Collect all VPFirstOrderRecurrencePHIRecipe
instances first, then process them in a separate loop.

This prevents iterator invalidation when sinking or hoisting recurrence
users, and makes the transformation more robust.

Fixes: https://github.com/llvm/llvm-project/issues/194618
Fixes https://github.com/llvm/llvm-project/issues/198589

---------

Co-authored-by: Zile Xiong <xiongzile99 at gmail.com>


  Commit: d0646cbe307dd2bd10686f923061a7d981263e40
      https://github.com/llvm/llvm-project/commit/d0646cbe307dd2bd10686f923061a7d981263e40
  Author: Zhijie Wang <yesterda9 at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix false negative for GSL Owner methods inherited from a non-Owner base (#197864)

- Take the implicit object's actual type (e.g., the type before any
`DerivedToBase` cast) into account when checking for GSL Owner. Other
`isGslOwnerType` call sites with the same pattern (e.g.,
`isGslOwnerType(MCE->getImplicitObjectArgument()->getType())` in
`VisitCXXMemberCallExpr`) lack a real-world trigger today and are
deferred to a follow-up.
- Unify the GSL Owner checks inside `shouldTrackImplicitObjectArg` so
they share a single source of truth.

Fixes: #188832


  Commit: 2cad228d3863f6a70b33625a1c967066207e34ab
      https://github.com/llvm/llvm-project/commit/2cad228d3863f6a70b33625a1c967066207e34ab
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/IslNodeBuilder.cpp

  Log Message:
  -----------
  [polly] Simplify with DenseMap::remove_if. NFC (#199577)

In preparation for DenseMap change that relocates surviving entries on
erase.


  Commit: a725adb96bf75764ad9043099935d1b5d16ef152
      https://github.com/llvm/llvm-project/commit/a725adb96bf75764ad9043099935d1b5d16ef152
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/docs/CMake.rst

  Log Message:
  -----------
  [Docs] Update LLVM_USE_SANITIZER list (#199580)

HWAddress and Leaks are valid options that were not present in the
documentation.


  Commit: 1ed7260974d49760ec96ff224d2ff710764af8bf
      https://github.com/llvm/llvm-project/commit/1ed7260974d49760ec96ff224d2ff710764af8bf
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp

  Log Message:
  -----------
  [NVPTX] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199575)

GenericToNVVM erases entries from GVMap while iterating it. In
preparation for DenseMap change that relocates surviving entries on
erase, snapshot the map and erase by key.


  Commit: ff2eac10dbc1c1d888ac2dee4798bc54db672417
      https://github.com/llvm/llvm-project/commit/ff2eac10dbc1c1d888ac2dee4798bc54db672417
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp

  Log Message:
  -----------
  [Hexagon] Simplify with DenseMap::remove_if. NFC (#199576)


  Commit: 884e828617bf512a992723bd70dc108deb775753
      https://github.com/llvm/llvm-project/commit/884e828617bf512a992723bd70dc108deb775753
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199578)

In preparation for DenseMap change that relocates surviving entries on
erase, replace erase-while-iterating with remove_if.


  Commit: 01ce8d6763712261b9333855f10e9d2fe3342d86
      https://github.com/llvm/llvm-project/commit/01ce8d6763712261b9333855f10e9d2fe3342d86
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/test/tools/llvm-profdata/sample-nametable.test

  Log Message:
  -----------
  [ProfData] Remove HWAsan exclusion (#199582)

This passes locally for me with HWAsan enabled on a AArch64 machine, so
it seems like this might have been fixed since adding the opt-out.


  Commit: 0b6a1ef4297bb839fe26041602d32411358e0032
      https://github.com/llvm/llvm-project/commit/0b6a1ef4297bb839fe26041602d32411358e0032
  Author: Miro Hrončok <miro at hroncok.cz>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
    M llvm/utils/lit/tests/shtest-ulimit-nondarwin.py

  Log Message:
  -----------
  [lit] Normalize RLIM_INFINITY to "infinity" in print_limits.py for Python 3.15+ (#190953)

Python 3.15 changed resource.getrlimit() to return the platform's
maximum value (e.g., 18446744073709551615 on 64-bit systems) instead of
-1 for RLIM_INFINITY. This breaks lit tests that expect -1 for unlimited
resource limits.

This patch normalizes the return value to "infinity" when it equals
RLIM_INFINITY to maintain compatibility with existing tests across all
Python versions.

Fixes test failure: shtest-ulimit-nondarwin.py
Expected: RLIMIT_FSIZE=-1
Got: RLIMIT_FSIZE=18446744073709551615

Reference:
https://github.com/python/cpython/commit/0324c726dea702282a0300225e989b19ae23b759
Reference: https://bugzilla.redhat.com/show_bug.cgi?id=2448969

Analysis and testing assisted by AI.

Assisted-by: Claude Sonnet 4.5

---------

Co-authored-by: Alexander Richardson <mail at alexrichardson.me>
Co-authored-by: Tulio Magno Quites Machado Filho <tuliom at quites.com.br>


  Commit: 269719b1f63c68fffbca43f54cebaad23cf0246a
      https://github.com/llvm/llvm-project/commit/269719b1f63c68fffbca43f54cebaad23cf0246a
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M compiler-rt/include/sanitizer/common_interface_defs.h
    M compiler-rt/lib/asan/asan_errors.cpp
    M compiler-rt/lib/asan/asan_errors.h
    M compiler-rt/lib/asan/asan_poisoning.cpp
    M compiler-rt/lib/asan/asan_report.cpp
    M compiler-rt/lib/asan/asan_report.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
    R compiler-rt/test/asan/TestCases/copy_container_annotations.cpp

  Log Message:
  -----------
  Revert "[compiler-rt][ASan] Add function copying annotations (#91702)" (#194204)

This reverts commit c76045d9bf3bd1c7a381dc85d1db63a38fd69aa4.

It does not look like this has been used anywhere since it was
implemented. I see no uses of it in LLVM, anywhere in our internal
monorepo, or across the entirety of Github outside of other copies of
LLVM tests. Given that, remove it. The intended use case around SSO ASan
string annotations is also likely to be significantly reworked soon.


  Commit: 97e7ee26b2b3ea695c1966498ee572acd1e40418
      https://github.com/llvm/llvm-project/commit/97e7ee26b2b3ea695c1966498ee572acd1e40418
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/ProfileData/InstrProf.cpp
    A llvm/test/Transforms/PGOProfile/Inputs/indirect-call-vp-zeros.ll
    A llvm/test/Transforms/PGOProfile/indirect-call-vp-zeros.ll

  Log Message:
  -----------
  [InstrProf] Do not emit metadata for zero values with zero counts (#199380)

If we have a indirect call site with a profile that has VP information
for said callsite that only contains zero values with zero counts, we
would start to emit invalid profile information after
1d146967d51ba76b8379d9e12961aa23e5745701. VP metadata in this case is at
best redundant with BFI. So we restrict metadata emission to only if we
have a sufficient number of values for the VP metadata to be valid.


  Commit: b938d8b562d6ebbb72ceafaf57cead215fef86da
      https://github.com/llvm/llvm-project/commit/b938d8b562d6ebbb72ceafaf57cead215fef86da
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp

  Log Message:
  -----------
  [DA] Consolidate accumulating GCD functions (NFCI) (#197936)

This patch consolidates two functions `accumulateCoefficientsGCD` and
`analyzeCoefficientsForGCD` by merging the latter into the former. These
two functions are very similar, and keeping both of them does not make
much sense.


  Commit: 7dabf946d908858beb94c7c718a09bedc6eb4407
      https://github.com/llvm/llvm-project/commit/7dabf946d908858beb94c7c718a09bedc6eb4407
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr199509.ll

  Log Message:
  -----------
  [SelectionDAG] Handle CSE in PromoteIntOp_VP_STRIDED. (#199562)

If the UpdateNodeOperands triggers CSE, we need to handle result
replacement ourselves because strided load has 2 results.


  Commit: b929dbabe54b0974cce73f70c6d3831bd7e1ddfe
      https://github.com/llvm/llvm-project/commit/b929dbabe54b0974cce73f70c6d3831bd7e1ddfe
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp

  Log Message:
  -----------
  [X86] FixupInstTuning: ProcessShiftLeftToAdd should return true after mutating. (#199589)

I think this is almost NFC, though it should affect some of the
compilation statistics like "number of instrs changed by X pass".

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply at anthropic.com>


  Commit: 5723dd03231f963037b63d34e54902bb9e173b74
      https://github.com/llvm/llvm-project/commit/5723dd03231f963037b63d34e54902bb9e173b74
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Split v4i16/v8i8 MUL on RV32. (#199504)


  Commit: d1902d34606e070df3ffb1cadbd3aac0f1165484
      https://github.com/llvm/llvm-project/commit/d1902d34606e070df3ffb1cadbd3aac0f1165484
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvp-bitcast-const-fold.ll

  Log Message:
  -----------
  [RISCV][P-ext] Fold bitcast of v4i8/v2i16 const splat to scalar on RV64 (#199513)

clang lowers `int8x4_t f(int8x4_t a) { return ~a; }` to a
bitcast-wrapped vector xor with splat(-1). v4i8/v2i16 aren't legal on
RV64, so the xor gets scalarized to i64 with the constant still wrapped
in BITCAST:
      `i64 = xor X, (bitcast (v8i8 splat -1))`

The scalar `not` PatFrag (xor X, -1) requires a literal constant and
can't see through BITCAST, so XORI -1 (= `not`) misses and we emit `li
-1; xor` (2 insns). The v8i8/v4i16/v2i32 paths stay at vector level and
match the bitcast-aware vector `vnot` td-pat, so they're fine; only the
widened-from-v4i8/v2i16 path falls through to scalar `not`.

Fix it by folding the bitcast of a v4i8/v2i16 constant splat to a scalar
i32 constant pre-legalization. Type promotion sign-extends to i64 -1 and
XORI matches.


  Commit: 50a110ace7559f0655cf74cf2080b108c5bc2cda
      https://github.com/llvm/llvm-project/commit/50a110ace7559f0655cf74cf2080b108c5bc2cda
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/Transforms/CodeGenPrepare/X86/split-store-alignment.ll

  Log Message:
  -----------
  [CodeGenPrepare] splitMergedValStore: don't split atomic stores. (#199592)

splitMergedValStore notices when you do e.g.

    z = x | (y << 32)
    store z

and may split this up into 32-bit two stores, of x and y, depending
e.g. on the type of x and y.

It skips this optimization for volatile stores, but currently does NOT
skip it for atomics (!!).  So an atomic store can be split up into two
(non-atomic!) stores.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply at anthropic.com>


  Commit: 03c8a834d6a963b7e252c4d2915c419da0a2ee93
      https://github.com/llvm/llvm-project/commit/03c8a834d6a963b7e252c4d2915c419da0a2ee93
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M libcxx/include/__configuration/hardening.h
    M libcxx/include/string
    M libcxx/include/tuple

  Log Message:
  -----------
  [libc++] Address most LLVM23 TODOs (#199397)

There is still one LLVM23 TODO left that can only be resolved once we
update GCC.


  Commit: 386e356b5f0a3e49e42b80c350a6847c1d3bc661
      https://github.com/llvm/llvm-project/commit/386e356b5f0a3e49e42b80c350a6847c1d3bc661
  Author: Edward Nathan Varghese <cs22btech11020 at iith.ac.in>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp

  Log Message:
  -----------
  [AArch64] Add support for MSVC-style mangling for SVE (#196738)

Fixes #196170

Recent MSVC toolchains added support for AArch64 SVE types and use
dedicated builtin manglings such as `$_CD` instead of the older
artificial `__clang` struct manglings.

Update Clang's Microsoft mangling implementation to match MSVC for
supported SVE builtin types.

Unsupported SVE types continue using the existing artificial tag
mangling until MSVC gains support for them.

Adds representative coverage for:
* scalar SVE types
* tuple/vector SVE types
* fallback manglings for unsupported types


  Commit: d7856fed0268ae8c903a6928610122647a44d2fa
      https://github.com/llvm/llvm-project/commit/d7856fed0268ae8c903a6928610122647a44d2fa
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insert-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Add exact flag to G_LSHR in RISCVLegalizerInfo::legalizeVScale (#199595)

This matches what is in SelectionDAG.


  Commit: 23b754f5745a51f5f1ff2d9c65f539b54c913589
      https://github.com/llvm/llvm-project/commit/23b754f5745a51f5f1ff2d9c65f539b54c913589
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td

  Log Message:
  -----------
  [RISCV] Use the new "let append" TableGen feature to reduce duplication. NFC (#199596)

Similar to #198761, use this to add [IsRV64] where needed.


  Commit: d4550cc82efa06745192f78120e1acfc7892b35d
      https://github.com/llvm/llvm-project/commit/d4550cc82efa06745192f78120e1acfc7892b35d
  Author: Igor Gorban <igor.gorban at intel.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M clang/lib/Sema/OpenCLBuiltins.td
    A clang/test/SemaOpenCL/intel-bfloat16-conversions-builtins.cl

  Log Message:
  -----------
  [OpenCL] Add cl_intel_bfloat16_conversions builtins (#199422)

Add cl_intel_bfloat16_conversions declarations to OpenCLBuiltins.td
and cover the extension with a dedicated header-free SPIR test.

Specification:

https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_bfloat16_conversions.html

Co-authored-by: Copilot


  Commit: 44d60bad70c7832c2917724d183aa6c208fe589b
      https://github.com/llvm/llvm-project/commit/44d60bad70c7832c2917724d183aa6c208fe589b
  Author: YunQiang Su <syq at debian.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h

  Log Message:
  -----------
  sanitizer_common: Fix build on MIPS with _TIME_BITS=64 (#199590)

When we build sanitizer_common with -D_TIME_BITS=64, the assert of
struct_kernel_stat_sz fails due to the size of struct stat get different
size.


  Commit: fe3d6b051b31f5794cd29818acb9203dbb7dd6f4
      https://github.com/llvm/llvm-project/commit/fe3d6b051b31f5794cd29818acb9203dbb7dd6f4
  Author: Li-Zheng-Rong <2508120225 at hhu.edu.cn>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang-tools-extra/clangd/ProjectModules.cpp

  Log Message:
  -----------
  [NFC] [clangd] [C++20] [Modules] Fix false duplicate module warning for equivalent paths (#199343)

When checking for multiple source files declaring the same module, the
comparison used raw string equality on file paths. This causes false
positives when the same file is represented by different but equivalent
path strings.

Use pathEqual(normalizePath(...), normalizePath(...)) instead to compare
canonical paths, consistent with how clangd handles path comparisons
elsewhere.


  Commit: 44583eca36b6e4e11cc171bc05d9eb0c5b716e1d
      https://github.com/llvm/llvm-project/commit/44583eca36b6e4e11cc171bc05d9eb0c5b716e1d
  Author: Arun Thangamani <arun.thangamani at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir

  Log Message:
  -----------
  [mlir][x86] Fix - multiple issues / F8 support for AMX dot-product lowering (#196984)

This patch fixes issues or support additional patterns for AMX
`dot-product` lowering.

1. Fix issue related to write-back to `C` matrix,
2. Supports additional lowering pattern where the cache tile sizes are:
32,32,32,
3. Online packing - loop peeling is now based on `step` size,
4. Extends support for `f8` lowering (`mx-fp8` lowering will be
supported after vector.contract has `mx` support).


  Commit: de188bbad3df25ccc85a853328c98a45b9df7db3
      https://github.com/llvm/llvm-project/commit/de188bbad3df25ccc85a853328c98a45b9df7db3
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/MC/CMakeLists.txt

  Log Message:
  -----------
  [DirectX][ObjectYAML] Fix CI build issue in DXContainerInfo.cpp (#199605)

After https://github.com/llvm/llvm-project/pull/198222, the following
error was reported in CI bots:

```
[1546/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o
FAILED: [code=1] lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o
sccache /usr/bin/g++ -DLLVM_EXPORTS -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/runner/work/circt/circt/build/lib/MC -I/home/runner/work/circt/circt/llvm/llvm/lib/MC -I/home/runner/work/circt/circt/build/include -I/home/runner/work/circt/circt/llvm/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fPIC -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o -MF lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o.d -o lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o -c /home/runner/work/circt/circt/llvm/llvm/lib/MC/DXContainerInfo.cpp
/home/runner/work/circt/circt/llvm/llvm/lib/MC/DXContainerInfo.cpp:14:10: fatal error: llvm/Support/VCSRevision.h: No such file or directory
   14 | #include "llvm/Support/VCSRevision.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
[1547/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/ConstantPools.cpp.o
[1548/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerRootSignature.cpp.o
[1549/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerPSVInfo.cpp.o
[1550/5356] Building CXX object lib/Bitcode/Reader/CMakeFiles/LLVMBitReader.dir/MetadataLoader.cpp.o
[1551/5356] Building CXX object lib/Bitcode/Reader/CMakeFiles/LLVMBitReader.dir/BitcodeReader.cpp.o
ninja: build stopped: subcommand failed.
```

This adds llvm_vcsrevision_h dependency to MC to fix that.


  Commit: fb8243f32c955690ebdfdd32eb9aaaf0c391b648
      https://github.com/llvm/llvm-project/commit/fb8243f32c955690ebdfdd32eb9aaaf0c391b648
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td

  Log Message:
  -----------
  [RISCV] Use append TableGen feature in RISCVInstrInfoXqci.td (#199603)

This improves the readability of the file.

An AI came up with the patch which I reviewed and ensured that the tests
pass.


  Commit: c618e112145fbbbe7ab14ab202f8626703920b96
      https://github.com/llvm/llvm-project/commit/c618e112145fbbbe7ab14ab202f8626703920b96
  Author: Varad Rahul Kamthe <133588066+varadk27 at users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    A mlir/test/Target/LLVMIR/nvvm/divf/divf.mlir
    A mlir/test/Target/LLVMIR/nvvm/divf/divf_invalid.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Add `nvvm.divf` Op (#198744)

Adds the `nvvm.divf` NVVM dialect op covering all 16 PTX `div` forms via attribute-driven selection:

- Default (`approx = false, full = false`): IEEE-compliant rounded divide (`div.<RM>[.ftz].{f32,f64}`), 12 forms -- requires `rnd` ∈ `{rn, rm, rp, rz}`; supports f32 and f64 (f64 does not accept `ftz`).
- `approx = true`: fast hardware approximation (`div.approx[.ftz].f32`), 2 forms -- f32 only.
- `full = true`: full-range approximation (`div.full[.ftz].f32`), 2 forms -- f32 only.


  Commit: b86512ce648f4a31ba5110dc0e0f84b63f5be785
      https://github.com/llvm/llvm-project/commit/b86512ce648f4a31ba5110dc0e0f84b63f5be785
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-25 (Mon, 25 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Split v4i16/v8i8 vselect on RV32. (#198898)

We don't have a 64-bit merge instruction on RV32.

Assisted-by: Claude Sonnet 4.5


  Commit: 377af85dad4e71b928a493464af5cf2f32e7e192
      https://github.com/llvm/llvm-project/commit/377af85dad4e71b928a493464af5cf2f32e7e192
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/LICM/strlen.ll
    M llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll
    M llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll
    M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll

  Log Message:
  -----------
  [InferAttrs] Annotate math and basic string libcalls with `nosync` (#197761)

Math libcalls as well as some simple string ones do not create
synchronizes-with edges, thus `nosync` may be derived.

Co-authored-by: Johannes Doerfert <jdoerfert.llvm at gmail.com>


  Commit: be39e065d325ad52628c23eb01d999656e30a22f
      https://github.com/llvm/llvm-project/commit/be39e065d325ad52628c23eb01d999656e30a22f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/IR/LegacyPassManager.cpp

  Log Message:
  -----------
  [IR] Inline remove_if in PMDataManager::removeNotPreservedAnalysis (#199571)

PR #198982 rewrote removeNotPreservedAnalysis to use DenseMap::remove_if
with one predicate shared across two call sites. The predicate is always
inlined; the cost is that two call sites make
DenseMapBase::remove_if<...>
itself emit out of line instead of inlining into the caller. As this
runs
after every modifying codegen pass (legacy PM), it shows up as a small
instructions:u regression, most visibly at -O0 where the legacy codegen
PM
is a large fraction of compile time:

https://llvm-compile-time-tracker.com/compare.php?from=69a5cf515fd317bcf918e48de9137dd8549870c5&to=6302439f5aaea6cb776d8ceb5c2ef9108fccf702&stat=instructions%3Au

Collect the maps into a SmallVector and prune them from a single
remove_if
call site, so the instantiation is inlined again.


  Commit: a225aafbd1a40be0dd9c31e2d0b0b7c42b9d36e3
      https://github.com/llvm/llvm-project/commit/a225aafbd1a40be0dd9c31e2d0b0b7c42b9d36e3
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/ProgrammersManual.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/DenseSetTest.cpp

  Log Message:
  -----------
  [DenseMap] Invalidate iterators on erase (#199369)

Tighten DenseMap's `erase` contract so that, like `insert` and `grow`,
it invalidates iterators and references obtained before the call.
Under the current tombstone-based deletion this is purely an
LLVM_ENABLE_ABI_BREAKING_CHECKS check — the bucket array is not actually
mutated for other entries — but it surfaces stale-iterator-after-erase
patterns now rather than when DenseMap's deletion scheme changes.

Mirrors the SmallPtrSet change in #96762, which dropped tombstones in
small mode and likewise had `erase` invalidate iterators.

Depends on #198982 and #199365


  Commit: 49e2295cf52cac72cc3d3bcb4738582bc0c6bde1
      https://github.com/llvm/llvm-project/commit/49e2295cf52cac72cc3d3bcb4738582bc0c6bde1
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/GVN.cpp
    A llvm/test/Transforms/GVN/PRE/pre-load-combine-metadata.ll

  Log Message:
  -----------
  [GVN] Properly combine AA metadata if available load is hoisted (#197948)

Ensure the AA metadata are properly merged between the new load and the
old one during PRE. Actually set `DoesKMove` in `combineMetadataForCSE`,
otherwise the new load is assumed not to move, which is not correct if
the new load has happened to be hoisted.

Fixes: https://github.com/llvm/llvm-project/issues/196787.


  Commit: a69ce910db2d33ae6203aed998feba3136d68e0b
      https://github.com/llvm/llvm-project/commit/a69ce910db2d33ae6203aed998feba3136d68e0b
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp

  Log Message:
  -----------
  [Clang][AMDGPU] clean up auto-generated CHECK lines in a test (NFC) (#199614)


  Commit: d06d3a7bdca153c3130704ef115c72095488e1f7
      https://github.com/llvm/llvm-project/commit/d06d3a7bdca153c3130704ef115c72095488e1f7
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    A clang/test/Analysis/ctu/constraintsatisfaction.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Fix of crash at ConstraintSatisfaction import (#197407)

Null pointer dereference could happen during `ASTImporter` import of a
`ConstraintSatisfaction` object.


  Commit: fda6309919a0c391ed224c0da214ba89ecff5478
      https://github.com/llvm/llvm-project/commit/fda6309919a0c391ed224c0da214ba89ecff5478
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp

  Log Message:
  -----------
  [AArch64][GlobalISel] Add tablegen pattern for uaddo combine (#198724)

Related to #197693 which filters the worklist to only include opcodes
for which there are combines. It's mostly handled by canMatchOpcode
which is tablgen'ed but some old combines like this one are missing a
tablegen pattern and require extra handling. This adds a simple wrapper
so it gets picked up by canMatchOpcode and we can delete the C++
handling.

Assisted-by: codex


  Commit: 4ab4d2d9bb4a1d87b36bb4703d3b95138129c051
      https://github.com/llvm/llvm-project/commit/4ab4d2d9bb4a1d87b36bb4703d3b95138129c051
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/sink-to-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-calls.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-load-live-out.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-unary-ops.ll
    M llvm/test/Transforms/LoopVectorize/multi_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
    M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
    M llvm/test/Transforms/LoopVectorize/predicated-single-exit.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/sink-to-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp

  Log Message:
  -----------
  [VPlan] Fold canonical IV recipe creation into createLoopRegion. (#198383)

Remove the separate addCanonicalIVRecipes transform and create the
canonical IV's increment and the latch's exiting branch directly in
createLoopRegion, using the loop region's VPRegionValue for the
canonical IV. The temporary VPPhi placeholder previously inserted in the
header is no longer needed.

PR: https://github.com/llvm/llvm-project/pull/198383


  Commit: 970ecaef1db3701f04e63223ce9188a748be6083
      https://github.com/llvm/llvm-project/commit/970ecaef1db3701f04e63223ce9188a748be6083
  Author: Vladislav Semykin <34096407+ViNN280801 at users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash in __builtin_dump_struct with immediate callables (#192880)

## Motivation

`ComplexRemove` (used by `Sema::PopExpressionEvaluationContext` to strip
nested `ConstantExpr` wrappers) inherits the default
`TreeTransform::TransformOpaqueValueExpr`, which asserts on any
`OpaqueValueExpr` with a non-null `SourceExpr` unless a binding has
already been set up.

`__builtin_dump_struct` binds the record pointer to an `OpaqueValueExpr`
inside a `PseudoObjectExpr`. When the callable argument is
immediate-escalated (e.g. via `__builtin_is_within_lifetime`),
`RemoveNestedImmediateInvocation` roots `ComplexRemove` inside the PSE's
semantic form, reaching that OVE without the binding the assert expects
- triggering a crash.

## Closing Issues

Closes #192846

---------

Signed-off-by: ViNN280801 <vladislav.semykin at gmail.com>
Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
Co-authored-by: Younan Zhang <zyn7109 at gmail.com>


  Commit: a975b7cd3538cfba015c7a49e2e86be58aa546c3
      https://github.com/llvm/llvm-project/commit/a975b7cd3538cfba015c7a49e2e86be58aa546c3
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/masked-udiv.ll

  Log Message:
  -----------
  [RISCV] Fix fixed-length masked.{u,s}{div,rem} lowering not converting operands (#197913)

Similar to #197724, but this time I also somehow forgot to convert the
operands to scalable vectors. I'm surprised that nothing asserted here,
since SDT_RISCVIntBinOp_VL has a type profile constraint that the
operands and result types need to be the same.


  Commit: 4448a1a7c095dc781495d631b73dcdff652436ba
      https://github.com/llvm/llvm-project/commit/4448a1a7c095dc781495d631b73dcdff652436ba
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-mask-op.ll

  Log Message:
  -----------
  [X86] LowerBUILD_VECTORvXi1 - scalarize the bool masks if we insert a single non-const value (#199523)

Minor generalization of the existing fold for splat bool masks - if only
a single value is used in insertion(s) (as well as any immediate/undefs
values), then fold to a scalar select (val, insert|immediate, immediate)

Yak shaving for #198162


  Commit: 19e915fc5c91645ccc4050180e9daabec30358c4
      https://github.com/llvm/llvm-project/commit/19e915fc5c91645ccc4050180e9daabec30358c4
  Author: hev <wangrui at loongson.cn>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
    A llvm/test/CodeGen/LoongArch/musttail-call.ll
    A llvm/test/CodeGen/LoongArch/musttail-indirect-args.ll

  Log Message:
  -----------
  [LoongArch] Fix musttail with indirect arguments by forwarding incoming pointers (#198965)

When a `musttail` call passes arguments indirectly (fp128 on LA32, i128
on LA32), the backend allocates a stack temporary and hands the callee a
pointer. The tail call deallocates the caller's frame, and the pointer
dangles.

Fix by forwarding the incoming indirect pointers instead. They point to
the caller's caller's frame, which stays valid after the tail call.
Forwarded formal parameters reuse the pointer directly; computed values
get stored into the incoming buffer first.

The pointers are saved in virtual registers (`CopyToReg`/`CopyFromReg`)
rather than SDValues. The SelectionDAG is cleared between basic blocks
and musttail calls can appear in non-entry blocks, so storing raw
SDValues across BBs is unsound (this was the bug that led to the revert
in 501417baa60f). The vreg save only fires when the function has
musttail calls; other functions see no codegen change.

Non-musttail tail calls with indirect args are still rejected.

This uses the same strategy as the corresponding RISC-V fix (#185094).


  Commit: 73f141f75caf842e289a9d8166365b702adfeb3b
      https://github.com/llvm/llvm-project/commit/73f141f75caf842e289a9d8166365b702adfeb3b
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp

  Log Message:
  -----------
  [NFC] Add null terminator assert to CodeViewRecordIO::mapStringZ (#199624)

mapStringZ assumes that there's a null terminator past the end of Value
(I suppose the name hints at this too). This doesn't seem very nice to
me, but at least we can add an assert to check that the assumption
holds.


  Commit: 322ff9f317bbefd52751028dc358524797e18045
      https://github.com/llvm/llvm-project/commit/322ff9f317bbefd52751028dc358524797e18045
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Remove TargetLowering arg from getContainerForFixedLengthVector. NFC (#199629)

Unless I'm missing something we can just fetch the TLI from
RISCVSubtarget


  Commit: 5ab7435196ce395fc0713f4034e65fcaee67e63e
      https://github.com/llvm/llvm-project/commit/5ab7435196ce395fc0713f4034e65fcaee67e63e
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
    R llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fsub-chained.ll

  Log Message:
  -----------
  [LV] Add support for partial reduction chains with fsubs. (#197114)

The cost-model prevented this from happening, but the LV would otherwise
generate incorrect code (i.e. without the fneg).


  Commit: 3398f4e66558c67f7a8db70982d8bdbd8ed9a52d
      https://github.com/llvm/llvm-project/commit/3398f4e66558c67f7a8db70982d8bdbd8ed9a52d
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir

  Log Message:
  -----------
  [mlir][mem2reg] fix assert for indirect blocking uses inside regions (#199193)

When adding new blocking uses created by the interface of a previous
blocking uses (typically forwarding the blocking uses to the op result
users), the mem2reg framework was assuming that the new blocking uses
are in the same region as the original blocking use, which is not true
in general and lead to the assert:

`Transforms/Mem2Reg.cpp:743: void
{anonymous}::MemorySlotPromoter::removeBlockingUses(mlir::Region*):
Assertion `op->getParentRegion() == region && "all operations must still
be in the same region"' failed.`

This patch fixes this by adding the new uses into the userToBlockingUses
for the region of the new blocking uses.


  Commit: b2634fc4f8b1b1702a970812d534d3a888788b3e
      https://github.com/llvm/llvm-project/commit/b2634fc4f8b1b1702a970812d534d3a888788b3e
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a crash in __builtin_subcb (#199400)

Don't try to initialize pointers that can't be initialized


  Commit: 495e6c54420fb06664d0dfaeee1926eade10f114
      https://github.com/llvm/llvm-project/commit/495e6c54420fb06664d0dfaeee1926eade10f114
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    A llvm/test/Transforms/Coroutines/coro-materialize-intrinsics.ll
    M llvm/test/Transforms/Coroutines/coro-materialize.ll

  Log Message:
  -----------
  [Coroutines] Allow rematerialization of unary operators and selected intrinsics (#197698)

All of those can be cheaply recomputed when the coroutine has resumed.

Before this change, results of unary operators and intrinsics were
spilled into the coroutine frame and reloaded on resume:

```
  %neg = fneg float %n
  store float %neg, ptr %neg.spill.addr

  ; In resume:
  %neg.reload = load float, ptr %neg.reload.addr
  ; ... use %neg.reload
```

After this change, only the operand is spilled and the operation is
rematerialized on each resume, avoiding the frame store:

```
  store float %n, ptr %n.spill.addr

  ; In resume:
  %n.reload = load float, ptr %n.reload.addr
  %neg = fneg float %n.reload
  ; ... use %neg
```

Assisted-by: Claude Code


  Commit: adcad45cbdf804c18ba691d879df98a9e3e22fc2
      https://github.com/llvm/llvm-project/commit/adcad45cbdf804c18ba691d879df98a9e3e22fc2
  Author: Kartik Ohlan <kartik7ohlan at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c

  Log Message:
  -----------
  [CIR] Vector saturating rounding shift right and narrow intrinsics  (#198947)

This PR ignores all SISD variants that we had in #198216 

Part of https://github.com/llvm/llvm-project/issues/185382

Move the test cases to
[intrinsics.c](https://github.com/llvm/llvmproject/pull/clang/test/CodeGen/AArch64/neon/intrinsics.c)
Removed the test cases from
[neon-intrinsics.c](https://github.com/llvm/llvmproject/pull/clang/test/CodeGen/AArch64/neon/intrinsics.c)


variants that are skipped/ not covered in this PR  (SISD)

```

1.  vqrshrunh_n_s16 (uint8_t, _h scalar)
2.  vqrshruns_n_s32 (uint16_t, _s scalar)
3.  vqrshrnh_n_s16 (int8_t, _h scalar)
4.  vqrshrns_n_s32 (int16_t, _s scalar)
5.  vqrshrnh_n_u16 (uint8_t, _h scalar)
6.  vqrshrns_n_u32 (uint16_t, _s scalar)


```


  Commit: 0f1d083eff4bb5d409093a0c2b5ce32f070f8af7
      https://github.com/llvm/llvm-project/commit/0f1d083eff4bb5d409093a0c2b5ce32f070f8af7
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [Clang][test] check-clang-format not created with LLVM_ENABLE_IDE (#199638)

add_lit_testsuites skips creating targets for each subdirectory when
LLVM_ENABLE_IDE. Only create the dependency (introduced in #199169) when
the check-clang-format target actually exists.

Fixes the LLVM build when using an IDE.


  Commit: c437052c0a473ebf4880947b1c70e0745acd1ee6
      https://github.com/llvm/llvm-project/commit/c437052c0a473ebf4880947b1c70e0745acd1ee6
  Author: lntue <lntue at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  Reland "[APFloat] Add exp functions for single and double using exp/expf implementations from LLVM libc." (#197440) (#199570)

This reverts commit 1565f096d868f479f075fce3792db7b908cab9aa.

**Fixes applied on LLVM libc side:**
- gcc 7, 8, 9 compatibility:
  - https://github.com/llvm/llvm-project/pull/197476
  - https://github.com/llvm/llvm-project/pull/197868
- Add gcc's versions to LLVM libc-shared-tests precommit CI:
https://github.com/llvm/llvm-project/pull/199300

**Original commits messages:**

Discourse RFC:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450

- The implementation in LLVM libc is free-standing header-only:
https://github.com/llvm/llvm-project/issues/147386
- expf / exp implementation in LLVM libc is correctly rounded for all
rounding modes.
- Only support default rounding modes for now. Other rounding modes will
wait for proper static rounding implementations in LLVM libc.
- No cmake build dependency between LLVM and LLVM libc, only requires
LLVM libc source presents in llvm-project/libc folder.


  Commit: 10c0de887256f33427353a1f8988842b98a340c9
      https://github.com/llvm/llvm-project/commit/10c0de887256f33427353a1f8988842b98a340c9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [LinkerWrapper] Fix temps being dumped to CWD instead of output path (#198679)

Summary:
Offloading save temps is a complex dance where we have clang,
linker-wrapper, and lld all making their own temp files. The ones in the
linker wrapper were not respecting the output directory because we
stripped everything with filename. Just get rid of this so it uses the
output file's directory properly in this mode.


  Commit: 79337832f7a35c1ae5326a80c37a6459dd752048
      https://github.com/llvm/llvm-project/commit/79337832f7a35c1ae5326a80c37a6459dd752048
  Author: Igor Gorban <igor.gorban at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/Sema/OpenCLBuiltins.td
    A clang/test/SemaOpenCL/intel-split-work-group-barrier-builtins.cl

  Log Message:
  -----------
  [OpenCL] Add cl_intel_split_work_group_barrier builtins (#199424)

Add cl_intel_split_work_group_barrier declarations to OpenCLBuiltins.td
and cover the extension with a dedicated header-free SPIR test.

Specification:

https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_split_work_group_barrier.html

Co-authored-by: Copilot


  Commit: 028153a165d6c161f0a7eb045840f5e2b70f6088
      https://github.com/llvm/llvm-project/commit/028153a165d6c161f0a7eb045840f5e2b70f6088
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll

  Log Message:
  -----------
  [VPlan] Make TransformState::get BCast-logic robust (#197589)

The logic for inserting Broadcasts in a more optimal location in
VPTransformState::get is quite fragile, especially around scalable VFs.
Fix it, resulting in minor improvements.


  Commit: a903b9512750cf1c5cd6c6f233f74257bae5d4bf
      https://github.com/llvm/llvm-project/commit/a903b9512750cf1c5cd6c6f233f74257bae5d4bf
  Author: MaoJiaping <maojiaping1 at huawei.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/CloneModule.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    A llvm/test/tools/llvm-split/alias-to-ifunc.ll
    A llvm/test/tools/llvm-split/ifunc.ll

  Log Message:
  -----------
   [CloneModule] Clone undefined ifuncs (#197353)

To satisfy the verifier rule "IFunc resolver must be a definition". We
fix iFunc handling when cloning modules.
When cloning a module, if an IFunc has no definition
(ShouldCloneDefinition returns false), directly create an external
GlobalValue (Function or GlobalVariable) instead of trying to clone the
ifunc.
Add a test case for llvm-split to verify the ifunc cloning/splitting
behavior works correctly.


  Commit: 05a237293730ce2e83718037d7addabd6c15b238
      https://github.com/llvm/llvm-project/commit/05a237293730ce2e83718037d7addabd6c15b238
  Author: Bogdan Vetrenko <b.vetrenko at yandex.ru>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    A llvm/test/CodeGen/RISCV/GlobalISel/bitreverse-zbkb.ll

  Log Message:
  -----------
  [RISCV][GlobalISel] Lower i8 bitreverse using brev8 with Zbkb (#199469)

This teaches RISC-V GlobalISel to custom-lower scalar i8 G_BITREVERSE
using brev8 when Zbkb is available.

The i8 source is zero-extended to XLEN before applying the riscv_brev8
intrinsic. Since brev8 reverses bits independently within each byte, the
high zero bytes remain zero, so the result can be truncated back to i8.


  Commit: ded7aa0dcf4965aec5a1d036524cbc0fb14ad5e1
      https://github.com/llvm/llvm-project/commit/ded7aa0dcf4965aec5a1d036524cbc0fb14ad5e1
  Author: sujianIBM <Jian.Su at ibm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml

  Log Message:
  -----------
  [z/OS] Add --ignore-case to FileCheck on output from od. (#196396)

This test fails on z/OS because `od` outputs upper case letters on z/OS.


  Commit: 70321b9c3b2674d7613193e54dec5abf6b831bf7
      https://github.com/llvm/llvm-project/commit/70321b9c3b2674d7613193e54dec5abf6b831bf7
  Author: Junji Watanabe <jwata at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Support/Path.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/Path.cpp

  Log Message:
  -----------
  [Support] Support runtime override for LLVM_WINDOWS_PREFER_FORWARD_SLASH (#199210)

Allow overriding the compile-time LLVM_WINDOWS_PREFER_FORWARD_SLASH
setting at runtime using an environment variable of the same name.

This enables testing both path separator behaviors (forward slash vs.
backslash on Windows) using a single build, which is useful for
CI/Buildbots.

The environment variable is checked once and cached in a static variable
for performance.

Also updated relevant tests in SupportTests (Path.cpp and
CommandLineTest.cpp) to dynamically detect the preferred separator style
at runtime instead of relying on the compile-time macro, making them
compatible with the override.


  Commit: f72be679b604cb7d2f8aa1db4fd5e6428150fd39
      https://github.com/llvm/llvm-project/commit/f72be679b604cb7d2f8aa1db4fd5e6428150fd39
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Add test from #197698 to xfail list (#199650)

All other coroutines tests are already on the list, but the new test has
not been added.


  Commit: 573138d541279fbe19ff3a85820fd99f422e00a1
      https://github.com/llvm/llvm-project/commit/573138d541279fbe19ff3a85820fd99f422e00a1
  Author: Tom Tromey <tromey at adacore.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/lib/IR/DebugInfo.cpp
    A llvm/test/DebugInfo/Generic/debuginfofinder-composite-type.ll

  Log Message:
  -----------
  Handle more cases in DebugInfoFinder (#194684)

In #181028 we discovered that DebugInfoFinder is missing some cases.
This corrects several of these. It is hard to know if I found them all.


  Commit: f2ce225f0f778838e755c306be26adc823282146
      https://github.com/llvm/llvm-project/commit/f2ce225f0f778838e755c306be26adc823282146
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/CodingStandards.rst

  Log Message:
  -----------
  Exclude documentation files from 80 columns rule in Coding Standard (#197666)

This implements the accepted
[RFC](https://discourse.llvm.org/t/rfc-remove-80-column-limit-in-documentation-files/89678)
"Remove 80 column limit in documentation files."


  Commit: 3eb9aacb7c47ac15085c4bfced48de9bcee912a3
      https://github.com/llvm/llvm-project/commit/3eb9aacb7c47ac15085c4bfced48de9bcee912a3
  Author: David Pagan <dave.pagan at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp

  Log Message:
  -----------
  [clang][CodeGen][NFC] Fixed typos in comments. (#197052)


  Commit: 095faea999a2adaff9c54a5d7b7b1ef431db92ff
      https://github.com/llvm/llvm-project/commit/095faea999a2adaff9c54a5d7b7b1ef431db92ff
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/slp-extval-struct-operand-no-scalar-reuse.ll

  Log Message:
  -----------
  [SLP] Fix assertion "Deleting out-of-tree value" for struct-typed vectorized operands

When an external-use scalar had a struct-typed vectorized operand, OperandIsScalar
incorrectly returned true (because the struct scalar was in ValueToExtUses), causing
the scalar to be cloned into ExternalUsesAsOriginalScalar. The clone used the struct
scalar directly, but struct-typed vectorized scalars are deleted after vectorization
- their external-use handling erases the extractvalue user rather than replacing the
struct value via replaceAllUsesWith.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/199679


  Commit: e5f4f31b3508dd06598051039268c27498472218
      https://github.com/llvm/llvm-project/commit/e5f4f31b3508dd06598051039268c27498472218
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/test/Transforms/JumpThreading/branch-debug-info2.ll
    M llvm/test/Transforms/JumpThreading/select.ll
    M llvm/test/Transforms/JumpThreading/stale-loop-info-after-unfold-select.ll

  Log Message:
  -----------
  [JumpThreading] Freeze undef/poison select condition in unfoldSelectInstr (#199408)

When unfoldSelectInstr rewrites a select as a conditional branch, it
used SI->getCondition() directly, without freezing it first. A select
with an undef or poison condition does not immediately cause UB,
but branching on undef or poison does, so we need to freeze it.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 471244d790755842e1262b9c6a889186e0a6e078
      https://github.com/llvm/llvm-project/commit/471244d790755842e1262b9c6a889186e0a6e078
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAlignment.cpp
    A llvm/test/Transforms/InferAlignment/propagate-across-blocks.ll

  Log Message:
  -----------
  [InferAlignment] Propagate alignment information across blocks (#198114)

This patch implements DT-based cross-block alignment propagation. The
algorithm processes the basic blocks in a depth-first traversal of DT.
The stack is emulated to avoid recursive visiting.

IR diff: https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/321.
Most of the improvement is useless, as it makes load/store instructions
overaligned. But several alignment checks are eliminated:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/321/commits/2ac31cb4f44261fa256d23061346af3aac73a41d.

Compile-time impact: +0.03%

https://llvm-compile-time-tracker.com/compare.php?from=f45f3ce5da9e35f819db9b8ed2775dac8c2b1171&to=93d511bc2a64792fcdb8d84b0b696a7c8d61ef40&stat=instructions%3Au


  Commit: 8b2751198db37809936c4675bc45a96b4c6d41cb
      https://github.com/llvm/llvm-project/commit/8b2751198db37809936c4675bc45a96b4c6d41cb
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] Add test coverage showing failure to recognise VPSHLD/VPSHRD nodes as potential faux shuffles (#199673)


  Commit: cb96a3edf7a81e75169fdcc057f3e19a1d09f73b
      https://github.com/llvm/llvm-project/commit/cb96a3edf7a81e75169fdcc057f3e19a1d09f73b
  Author: Yury Plyakhin <yury.plyakhin at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    R clang/test/Driver/clang-offload-bundler-asserts-on.c
    R clang/test/Driver/clang-offload-bundler-standardize.c
    R clang/test/Driver/clang-offload-bundler-zlib.c
    R clang/test/Driver/clang-offload-bundler-zstd.c
    R clang/test/Driver/clang-offload-bundler.c
    R clang/test/Driver/fat-archive-unbundle-ext.c
    R clang/test/Driver/linker-wrapper-canonical-prefixes.c
    R clang/test/Driver/linker-wrapper-hip-amdgcnspirv.c
    R clang/test/Driver/linker-wrapper-hip-no-rdc.c
    R clang/test/Driver/linker-wrapper-image.c
    R clang/test/Driver/linker-wrapper-llvm-help.c
    R clang/test/Driver/linker-wrapper.c
    R clang/test/Driver/nvlink-wrapper.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-canonical-prefixes.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-amdgcnspirv.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-llvm-help.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper.c
    A clang/test/OffloadTools/clang-linker-wrapper/lit.local.cfg
    A clang/test/OffloadTools/clang-linker-wrapper/openmp-spirv.cpp
    A clang/test/OffloadTools/clang-nvlink-wrapper/nvlink-wrapper.c
    A clang/test/OffloadTools/clang-offload-bundler/asserts-on.c
    A clang/test/OffloadTools/clang-offload-bundler/basic.c
    A clang/test/OffloadTools/clang-offload-bundler/fat-archive-unbundle-ext.c
    A clang/test/OffloadTools/clang-offload-bundler/standardize.c
    A clang/test/OffloadTools/clang-offload-bundler/zlib.c
    A clang/test/OffloadTools/clang-offload-bundler/zstd.c
    A clang/test/OffloadTools/clang-sycl-linker/basic.ll
    A clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    A clang/test/OffloadTools/clang-sycl-linker/triple.ll
    R clang/test/Tooling/clang-linker-wrapper-spirv.cpp
    R clang/test/Tooling/clang-sycl-linker-split-mode.ll
    R clang/test/Tooling/clang-sycl-linker-triple.ll
    R clang/test/Tooling/clang-sycl-linker.ll
    M clang/test/Tooling/lit.local.cfg

  Log Message:
  -----------
  [clang][test] Move offload tools tests to clang/test/OffloadTools (#198434)

Tests for clang-offload-bundler, clang-linker-wrapper,
clang-nvlink-wrapper, and clang-sycl-linker were scattered across
clang/test/Driver/ and clang/test/Tooling/. Neither location was
appropriate: Driver/ is for testing the compiler driver, and Tooling/ is
for testing the LibTooling infrastructure.

Move them to clang/test/OffloadTools/ with one subdirectory per tool,
following the convention used by llvm/test/tools/. The tool-name prefix
is dropped from filenames since the containing directory already
identifies the tool.

The spirv-tools feature/substitution setup is carried over from
Tooling's lit.local.cfg into a new lit.local.cfg in
clang-linker-wrapper/, since the parent clang/test/lit.cfg.py does not
set up that feature. The dead spirv-tools block is removed from
Tooling/lit.local.cfg now that no tests there depend on it.

`clang-linker-wrapper-spirv.cpp` was relying on libomp in the
environment. It is now rewritten to run the `clang-linker-wrapper`
directly rather than going through the driver and added stub symbols
allow avoiding linking against OpenMP runtime libraries.


  Commit: ca9884dd065961cb112f4940b3f80339765a0104
      https://github.com/llvm/llvm-project/commit/ca9884dd065961cb112f4940b3f80339765a0104
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclarationName.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/AST/ast-dump-expr-json.cpp
    M clang/test/AST/ast-dump-expr.cpp
    M clang/unittests/Tooling/Syntax/BuildTreeTest.cpp

  Log Message:
  -----------
  [clang] Add missing type source info of `decltype` specifier in destructor call to AST (#197680)

The type source info will be stored in `MemberExpr::MemberDNLoc`.

This patch fixes the underlying issue of #195788.


  Commit: fbbaa545ce1a8faebd453f9918513b7ec804671d
      https://github.com/llvm/llvm-project/commit/fbbaa545ce1a8faebd453f9918513b7ec804671d
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
    M mlir/test/Dialect/Async/async-to-async-runtime.mlir

  Log Message:
  -----------
  [mlir][async] Lazily create the coroutine destroy-cleanup block (#199583)

`setupCoroMachinery` previously emitted a `cleanupForDestroy` block
unconditionally, alongside the normal `cleanup` block. That block is
only ever used as the "destroy" successor of an `async.coro.suspend`, so
for coroutines that never suspend (e.g. an `async.func` whose body
contains no `async.await`) it ended up unreachable in the lowered CFG.

Make `cleanupForDestroy` mirror the existing `setError` (and
`setupSetErrorBlock`) pattern and materialize it lazily via a new
`setupCleanupForDestroyBlock` helper, called only from the two places
(`outlineExecuteOp` and the `async.await` lowering) that actually wire
it up. Store the coroutine id on `CoroMachinery` so the helper can
rebuild the block contents without keeping the original `async.coro.id`
op around.

This change is in preparation of adding a new builtin token type. Dead
`async.coro.free` ops are inefficient and cause problems in the lowering
to LLVM.

Assisted-by: Opus 4.7


  Commit: 3a25f7b645fa68343d548eb116d884fd1ebb3edb
      https://github.com/llvm/llvm-project/commit/3a25f7b645fa68343d548eb116d884fd1ebb3edb
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/test/AST/ast-dump-decl.cpp
    M clang/test/AST/ast-dump-linkage-internal.cpp
    M clang/test/AST/ast-dump-linkage.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp

  Log Message:
  -----------
  [clang] preserve exact redeclaration for getTemplateInstantiationPattern (#199473)

This makes these functions not always return the definition if any. The
few users which depend on this are updated to fetch the definition
themselves.

Also fixes the VarDecl variant returning the queried declaration itself.


  Commit: e8d5037b400dbe2afd4554ed1e1f38a697c62c36
      https://github.com/llvm/llvm-project/commit/e8d5037b400dbe2afd4554ed1e1f38a697c62c36
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A clang/test/ASTMerge/class-template-spec/Inputs/class-template-spec.cpp
    A clang/test/ASTMerge/class-template-spec/test.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp

  Log Message:
  -----------
  [clang] NFC: readd test cases reverted in 79f4d8f014 (#199676)

This adds back the test cases reverted in 79f4d8f014

We need some sort of process to stop losing regression tests due to
reverts...


  Commit: 721cddfd8f06dccae71196de7f0ae49ff54fe254
      https://github.com/llvm/llvm-project/commit/721cddfd8f06dccae71196de7f0ae49ff54fe254
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with inst count heuristic for AMDHSA, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/199693


  Commit: bd9ce0ab1edd3c1e5557af8df883bac9b4c99150
      https://github.com/llvm/llvm-project/commit/bd9ce0ab1edd3c1e5557af8df883bac9b4c99150
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td

  Log Message:
  -----------
  [clang][analyzer] Make CallAndMessage:ArgPointeeInitializedness released (NFC) (#199184)

The option was in `InAlpha` state but should be `Released` instead. It
was improved in changes #164600 and #173854.


  Commit: 52aac75c005446e988f8dfe27edd41bd70e3ce68
      https://github.com/llvm/llvm-project/commit/52aac75c005446e988f8dfe27edd41bd70e3ce68
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp

  Log Message:
  -----------
  [RISCV][GISel] Use sXLen member variable instead of creating it locally. NFC (#199594)


  Commit: 6b17cf8d11ce2d8b37b5770a0b9f6082a3fc63e2
      https://github.com/llvm/llvm-project/commit/6b17cf8d11ce2d8b37b5770a0b9f6082a3fc63e2
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Support packed SSHLSAT with non-constant splat shift amount. (#198937)

We can use the pssha instructions. These instructions look at the lower
8-bits of the shift amount and treat positive values as a left shift and
a negative value as a right shift.

Since out of bound shift amounts for SSHLSAT are poison, we can directly
pass the shift amount to the instruction.


  Commit: fe4c2bb1b3d5626d7de8112e815b8548b20a81fe
      https://github.com/llvm/llvm-project/commit/fe4c2bb1b3d5626d7de8112e815b8548b20a81fe
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    R mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
    A mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
    A mlir/test/Dialect/XeGPU/sg-to-lane-distribute.mlir
    R mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
    R mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
    R mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir
    R mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
    R mlir/test/Dialect/XeGPU/xegpu-subgroup-distribute-no-arch.mlir
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  [mlir][xegpu] Deprecate XeGPUSubgroupDistribute and rename XeGPUSgToWiDistributeExperimental to XeGPUSgToLaneDistribute (#198027)

The XeGPUSubgroupDistribute pass is now fully superseded by the newer
subgroup-to-lane distribution flow, so this PR removes its
implementation & all associated tests.
The replacement pass XeGPUSgToWiDistributeExperimental is renamed to
XeGPUSgToLaneDistribute.


  Commit: c927d44cb119a290b4946ebbd5547ca4f3f872a7
      https://github.com/llvm/llvm-project/commit/c927d44cb119a290b4946ebbd5547ca4f3f872a7
  Author: DeanSturtevant1 <dsturtevant at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  Revert "Revert "[libc] Port 2b2a63819f9f26d661bad5c269a03077d22ff6b4"" (#199681)

Reverts llvm/llvm-project#197857.
Original change relanded as #199570


  Commit: 3718ab29aa885036143a630ecd53dea52c41b57c
      https://github.com/llvm/llvm-project/commit/3718ab29aa885036143a630ecd53dea52c41b57c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c437052c (#199709)


  Commit: d1b31664ea1c8caeefc24c289bcc2617ae81a40b
      https://github.com/llvm/llvm-project/commit/d1b31664ea1c8caeefc24c289bcc2617ae81a40b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] getFauxShuffleMask - add handling for X86ISD::VSHLD/VSHRD funnel shifts (#199707)

Another step towards #145276


  Commit: 4acfc32f007528dbe5de20a163ccadfd4668a849
      https://github.com/llvm/llvm-project/commit/4acfc32f007528dbe5de20a163ccadfd4668a849
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/test/Transforms/JumpThreading/branch-debug-info2.ll
    M llvm/test/Transforms/JumpThreading/select.ll
    M llvm/test/Transforms/JumpThreading/stale-loop-info-after-unfold-select.ll

  Log Message:
  -----------
  Revert "[JumpThreading] Freeze undef/poison select condition in unfoldSelectInstr" (#199713)

Reverts llvm/llvm-project#199408

Causes many crashes, e.g.
https://github.com/llvm/llvm-project/pull/199408#issuecomment-4545738591

Fixes https://github.com/llvm/llvm-project/issues/199702


  Commit: 6fdfe1ead81f20ad5365de3f9313b9d658e40153
      https://github.com/llvm/llvm-project/commit/6fdfe1ead81f20ad5365de3f9313b9d658e40153
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h
    M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
    M llvm/include/llvm/Transforms/Coroutines/CoroCleanup.h
    M llvm/include/llvm/Transforms/Coroutines/CoroConditionalWrapper.h
    M llvm/include/llvm/Transforms/Coroutines/CoroEarly.h
    M llvm/include/llvm/Transforms/Coroutines/CoroElide.h
    M llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
    M llvm/include/llvm/Transforms/IPO/Annotation2Metadata.h
    M llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h
    M llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h
    M llvm/include/llvm/Transforms/IPO/ConstantMerge.h
    M llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h
    M llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
    M llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h
    M llvm/include/llvm/Transforms/IPO/ExpandVariadics.h
    M llvm/include/llvm/Transforms/IPO/FatLTOCleanup.h
    M llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h
    M llvm/include/llvm/Transforms/IPO/GlobalOpt.h
    M llvm/include/llvm/Transforms/IPO/GlobalSplit.h
    M llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    M llvm/include/llvm/Transforms/IPO/LoopExtractor.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/include/llvm/Transforms/IPO/OpenMPOpt.h
    M llvm/include/llvm/Transforms/IPO/PartialInlining.h
    M llvm/include/llvm/Transforms/IPO/SCCP.h
    M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
    M llvm/include/llvm/Transforms/Instrumentation/BlockCoverageInference.h
    M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
    M llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfLowering.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOForceFunctionAttrs.h
    M llvm/include/llvm/Transforms/Scalar/ADCE.h
    M llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
    M llvm/include/llvm/Transforms/Scalar/AnnotationRemarks.h
    M llvm/include/llvm/Transforms/Scalar/BDCE.h
    M llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h
    M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
    M llvm/include/llvm/Transforms/Scalar/ConstraintElimination.h
    M llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
    M llvm/include/llvm/Transforms/Scalar/DCE.h
    M llvm/include/llvm/Transforms/Scalar/DFAJumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h
    M llvm/include/llvm/Transforms/Scalar/DivRemPairs.h
    M llvm/include/llvm/Transforms/Scalar/DropUnnecessaryAssumes.h
    M llvm/include/llvm/Transforms/Scalar/ExpandMemCmp.h
    M llvm/include/llvm/Transforms/Scalar/FlattenCFG.h
    M llvm/include/llvm/Transforms/Scalar/Float2Int.h
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/include/llvm/Transforms/Scalar/GuardWidening.h
    M llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h
    M llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h
    M llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h
    M llvm/include/llvm/Transforms/Scalar/InferAddressSpaces.h
    M llvm/include/llvm/Transforms/Scalar/InferAlignment.h
    M llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h
    M llvm/include/llvm/Transforms/Scalar/JumpTableToSwitch.h
    M llvm/include/llvm/Transforms/Scalar/LICM.h
    M llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
    M llvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
    M llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h
    M llvm/include/llvm/Transforms/Scalar/LoopDeletion.h
    M llvm/include/llvm/Transforms/Scalar/LoopDistribute.h
    M llvm/include/llvm/Transforms/Scalar/LoopFlatten.h
    M llvm/include/llvm/Transforms/Scalar/LoopFuse.h
    M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
    M llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h
    M llvm/include/llvm/Transforms/Scalar/LoopInterchange.h
    M llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h
    M llvm/include/llvm/Transforms/Scalar/LoopPredication.h
    M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
    M llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
    M llvm/include/llvm/Transforms/Scalar/LoopSink.h
    M llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h
    M llvm/include/llvm/Transforms/Scalar/LoopTermFold.h
    M llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
    M llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
    M llvm/include/llvm/Transforms/Scalar/LoopVersioningLICM.h
    M llvm/include/llvm/Transforms/Scalar/LowerAtomicPass.h
    M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
    M llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
    M llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h
    M llvm/include/llvm/Transforms/Scalar/LowerWidenableCondition.h
    M llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
    M llvm/include/llvm/Transforms/Scalar/MergeICmps.h
    M llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
    M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
    M llvm/include/llvm/Transforms/Scalar/NewGVN.h
    M llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
    M llvm/include/llvm/Transforms/Scalar/PlaceSafepoints.h
    M llvm/include/llvm/Transforms/Scalar/Reg2Mem.h
    M llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h
    M llvm/include/llvm/Transforms/Scalar/SROA.h
    M llvm/include/llvm/Transforms/Scalar/ScalarizeMaskedMemIntrin.h
    M llvm/include/llvm/Transforms/Scalar/SeparateConstOffsetFromGEP.h
    M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
    M llvm/include/llvm/Transforms/Scalar/Sink.h
    M llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h
    M llvm/include/llvm/Transforms/Scalar/StraightLineStrengthReduce.h
    M llvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
    M llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h
    M llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
    M llvm/include/llvm/Transforms/Utils/AddDiscriminators.h
    M llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h
    M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
    M llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
    M llvm/include/llvm/Transforms/Utils/CanonicalizeFreezeInLoops.h
    M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
    M llvm/include/llvm/Transforms/Utils/CountVisits.h
    M llvm/include/llvm/Transforms/Utils/CtorUtils.h
    M llvm/include/llvm/Transforms/Utils/DXILUpgrade.h
    M llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
    M llvm/include/llvm/Transforms/Utils/DeclareRuntimeLibcalls.h
    M llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h
    M llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h
    M llvm/include/llvm/Transforms/Utils/Evaluator.h
    M llvm/include/llvm/Transforms/Utils/FixIrreducible.h
    M llvm/include/llvm/Transforms/Utils/GlobalStatus.h
    M llvm/include/llvm/Transforms/Utils/GuardUtils.h
    M llvm/include/llvm/Transforms/Utils/HelloWorld.h
    M llvm/include/llvm/Transforms/Utils/IRNormalizer.h
    M llvm/include/llvm/Transforms/Utils/InjectTLIMappings.h
    M llvm/include/llvm/Transforms/Utils/InstructionNamer.h
    M llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h
    M llvm/include/llvm/Transforms/Utils/LoopConstrainer.h
    M llvm/include/llvm/Transforms/Utils/LoopPeel.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/include/llvm/Transforms/Utils/LoopVersioning.h
    M llvm/include/llvm/Transforms/Utils/LowerAtomic.h
    M llvm/include/llvm/Transforms/Utils/LowerGlobalDtors.h
    M llvm/include/llvm/Transforms/Utils/LowerIFunc.h
    M llvm/include/llvm/Transforms/Utils/LowerInvoke.h
    M llvm/include/llvm/Transforms/Utils/LowerSwitch.h
    M llvm/include/llvm/Transforms/Utils/LowerVectorIntrinsics.h
    M llvm/include/llvm/Transforms/Utils/MatrixUtils.h
    M llvm/include/llvm/Transforms/Utils/MemoryOpRemark.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/include/llvm/Transforms/Utils/MetaRenamer.h
    M llvm/include/llvm/Transforms/Utils/MisExpect.h
    M llvm/include/llvm/Transforms/Utils/MoveAutoInit.h
    M llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h
    M llvm/include/llvm/Transforms/Utils/RelLookupTableConverter.h
    M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileInference.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseUtil.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/include/llvm/Transforms/Utils/StripConvergenceIntrinsics.h
    M llvm/include/llvm/Transforms/Utils/StripGCRelocates.h
    M llvm/include/llvm/Transforms/Utils/StripNonLineTableDebugInfo.h
    M llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
    M llvm/include/llvm/Transforms/Utils/UnifyLoopExits.h
    M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
    M llvm/include/llvm/Transforms/Utils/VNCoercion.h
    M llvm/include/llvm/Transforms/Vectorize/LoopIdiomVectorize.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
    M llvm/include/llvm/Transforms/Vectorize/VectorCombine.h

  Log Message:
  -----------
  llvm: Fix most LLVM_ABI annotations in Transforms (#199042)

This updates most LLVM_ABI annotations in the Transforms headers to
match expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.

These changes were done by a script fixing annotations on LLVM public
headers and manually checked.

This effort is tracked in #109483.


  Commit: 26f19eed998d513c1200f46733db14d73e2b3a71
      https://github.com/llvm/llvm-project/commit/26f19eed998d513c1200f46733db14d73e2b3a71
  Author: Matthias Wippich <mfwippich at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaCXX/cxx2c-decomposition.cpp

  Log Message:
  -----------
  [clang] propagate constexpr/constinit to binding VarDecl (#195860)

This patch implements one of the missing parts of P2686. This is
required to make the test case from
[cwg3135](https://cplusplus.github.io/CWG/issues/3135.html) (and
likewise the examples of [P1789](https://wg21.link/p1789) work).


  Commit: 551ff98cc3e6c9d6791c8606f7b3e2ad6d7a438c
      https://github.com/llvm/llvm-project/commit/551ff98cc3e6c9d6791c8606f7b3e2ad6d7a438c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll

  Log Message:
  -----------
  [SLP][TTI][AMDGPU] Add TTI hook preferSLPInstCountCheck for per-target opt-out (#199696)

Add `preferSLPInstCountCheck()` to TTI so targets can opt out of the
2-element inst-count heuristic in `getTreeCost()`. Default returns
`true`
(existing behavior unchanged). `getTreeCost()` ANDs the existing
`SLPInstCountCheck` flag with the hook result. `GCNTTIImpl` returns
`false` for gfx940/gfx941/gfx942 and gfx950.

Fixes #199662.


  Commit: d685a3b0e30f1375acc2796f9ce9f090cec85332
      https://github.com/llvm/llvm-project/commit/d685a3b0e30f1375acc2796f9ce9f090cec85332
  Author: Tom Tromey <tromey at adacore.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/utils/emacs/llvm-mode.el

  Log Message:
  -----------
  Use symbol matching for types in llvm-mode.el (#199250)

llvm-mode.el does this:

    (defconst llvm-mode-primitive-type-regexp
      (concat
       "\\(i[0-9]+\\|"
       (regexp-opt '(...strings...) t)

Here the "t" means to wrap the regexp in "\(..\)". However, this means
that in assembly like:

    !10 = distinct !DICompositeType(tag: DW_TAG_structure_type, ...

.. the "type" in "DW_TAG_structure_type" will be highlighted
differently.

The fix is to tell regexp-opt to only match complete symbols.


  Commit: 44da8601d71ea712b92589bc83f498d6e952c4f9
      https://github.com/llvm/llvm-project/commit/44da8601d71ea712b92589bc83f498d6e952c4f9
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Clone trivial operations with multiple consumers in layout propagation to avoid layout conflict (#197514)

In XeGPU layout propagation, when a trivially rematerializable producer
(e.g. a CSE-merged vector.step) has multiple uses demanding distinct
layouts, clone the producer once per required layout so each def retains
a single well-defined layout. This avoids inserting a bridging
xegpu.convert_layout whose WG-to-SG lowering would otherwise force a
costly SLM round-trip to redistribute data across subgroups.


  Commit: eca8638e130325d108e39aab5654bae8f0a06209
      https://github.com/llvm/llvm-project/commit/eca8638e130325d108e39aab5654bae8f0a06209
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp

  Log Message:
  -----------
  [ORC] Avoid iterator invalidation when erasing image info symbols (#199655)

processObjCImageInfo iterated the section's DenseSet of symbols while
calling removeDefinedSymbol, which erases from that same set. Re-fetch
begin() each iteration so the iterator is always fresh.

Started with https://github.com/llvm/llvm-project/pull/199369.


  Commit: 4b7ec0c715398d970a2669573f931e167b532e75
      https://github.com/llvm/llvm-project/commit/4b7ec0c715398d970a2669573f931e167b532e75
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Analysis/GlobalsModRef.cpp

  Log Message:
  -----------
  [GlobalsModRef] Don't erase while iterating (#199656)

The loop erases from AllocsForIndirectGlobals while walking it, which
now hits the iterator invalidation assert in DenseMap::erase. Use
remove_if instead.

Started with https://github.com/llvm/llvm-project/pull/199369.


  Commit: 68ebd09d5e19c30a79d416940d3400b5637b0f69
      https://github.com/llvm/llvm-project/commit/68ebd09d5e19c30a79d416940d3400b5637b0f69
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lld/MachO/ConcatOutputSection.cpp
    M lld/MachO/ConcatOutputSection.h
    M lld/MachO/InputSection.h
    M lld/docs/ReleaseNotes.rst
    M lld/test/MachO/arm64-thunks.s

  Log Message:
  -----------
  [lld][macho] Restructure thunk generation algorithm (#193367)

Refactor the algorithm that generates thunks for Mach-O. Prior to this
PR, sections were finalized as early as possible while still leaving
enough room (`slopScale * thunkSize`) for new thunks to be created.
There was also additional bookkeeping
(`estimateBranchTargetThresholdVA()`) so that once all sections were
finalized, we could estimate the end of the stubs sections. This avoided
new thunks to stubs sections in some cases.

In this PR, I've restructured the algorithm to avoid eagerly finalizing
sections. Instead, I maintain a `branchesToProcess` queue to hold
branches that could need to use a thunk. I avoid processing this branch
until its target has been finalized, or if finalizing another section
not leave enough room for new thunks (computed using `slopScale`). This
increases the likelihood that a branch will be direct, rather than use a
thunk, as reflected in the test change. Once all sections are finalized,
we can compute an upper bound on the number of thunks that need to be
created. We use this to estimate the end of the stubs section, allowing
us to keep some direct branches.

For testing, I linked a large binary before and after this PR. Results
show a 0.80% reduction in the number of thunks and 6.6% reduction in
number of thunk calls. The change in the duration of the link was
negligible.

| | Thunk Count | Thunk Calls |
|-| - | - |
| Base | 138499 | 1707623 |
| New | 137395 | 1595313 |


  Commit: 6e94fa069fa912cbfa6ec7f7d1fbafe6bed72f47
      https://github.com/llvm/llvm-project/commit/6e94fa069fa912cbfa6ec7f7d1fbafe6bed72f47
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/test/CIR/CodeGenCUDA/device-stub.cu

  Log Message:
  -----------
  [CIR][CUDA] Emit global var registration (#199270)


  Commit: 7146087fb49476055704f92e24295c549c89fa21
      https://github.com/llvm/llvm-project/commit/7146087fb49476055704f92e24295c549c89fa21
  Author: David Green <david.green at arm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-compares.ll

  Log Message:
  -----------
  [AArch64][DAG] Use getSetCCResultType in PromoteSETCC (#198320)

During the promotion of a v16bf16 vector setcc with 256 bit sve, a
v16i16 setcc(v16f32) is created, that gets legalized to a v8i16
setcc(v8f32), which trips up an assert in the aarch64 custom lowering to
vector registers. It could be solved elsewhere but this addresses it by
making sure that when the f32 setcc is created, the result type matches
getSetCCResultType.

The mvn+xtn vs xtn+mvn is mostly benign, and should both probably be a
subhn if it can be done without causing regressions.


  Commit: e526b2003977f45bb8809480320e74d3f8e19c69
      https://github.com/llvm/llvm-project/commit/e526b2003977f45bb8809480320e74d3f8e19c69
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll

  Log Message:
  -----------
  [SLP] Add new tests for instrinsics in getVectorElementSize() (#199612)

More tests for additions to #199129.


  Commit: a917c00ab13fb7d374428563a1b8fa0eef1e35b1
      https://github.com/llvm/llvm-project/commit/a917c00ab13fb7d374428563a1b8fa0eef1e35b1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M libcxx/include/__algorithm/copy_if.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_copy_if.h
    M libcxx/include/__algorithm/ranges_partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_unique_copy.h
    M libcxx/include/__algorithm/unique_copy.h
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__memory/uninitialized_algorithms.h

  Log Message:
  -----------
  [libc++] Use __in_out_result in the remaining appropriate algorithms (#198156)

We've already switched some algorithms to use `__in_out_result` instead
of `pair` as the return type. This updates the remaining appropriate
algorithms.


  Commit: 990e35ea9d80e9ef2dc9a4fc1cc2a386d538b576
      https://github.com/llvm/llvm-project/commit/990e35ea9d80e9ef2dc9a4fc1cc2a386d538b576
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 44da860 (#199723)

This fixes 44da8601d71ea712b92589bc83f498d6e952c4f9.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 80a5207d940bcffa4f4339111dca65a4fcca8926
      https://github.com/llvm/llvm-project/commit/80a5207d940bcffa4f4339111dca65a4fcca8926
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Thread scalar types through VPInstruction and VPPhi. (NFC) (#199378)

Update VPInstruction and VPPhi to populate VPSingleDefValue's scalar
type. For most opcodes, the scalar type is determine from the operands,
via computeScalarTypeForInstruction, which roughly matches to removed
inference code. For some opcodes, like FirstActiveLane, the type must be
provided explicitly.

PR: https://github.com/llvm/llvm-project/pull/199378


  Commit: b395ca789219aedfe856fc89329840cbee9fae8d
      https://github.com/llvm/llvm-project/commit/b395ca789219aedfe856fc89329840cbee9fae8d
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll

  Log Message:
  -----------
  [SPIR-V] Fix legalized load of single-element vector from array (#198330)


  Commit: bacd876134494c69d02b4509e125c47b5e86d3d2
      https://github.com/llvm/llvm-project/commit/bacd876134494c69d02b4509e125c47b5e86d3d2
  Author: Karim Alweheshy <9082720+karim-alweheshy at users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lld/MachO/BPSectionOrderer.cpp
    A lld/test/MachO/eh-frame-ordering.s

  Log Message:
  -----------
  [lld][MachO] Preserve __eh_frame ordering during BP section sorting (#191412)

The Balanced Partitioning section orderer collects all live
`ConcatInputSection`s as candidates for content-similarity reordering.
This includes `__eh_frame` CIE and FDE records, which have internal
ordering constraints: each FDE contains a backward-relative 32-bit
offset to its parent CIE, requiring CIEs to precede their FDEs.

When the BP orderer assigns priorities to `__eh_frame` subsections and
`Writer.cpp` sorts by those priorities, FDEs can end up before their
parent CIEs. The resulting CIE-pointer offsets resolve correctly with
32-bit wrapping arithmetic but underflow with 64-bit pointer arithmetic,
causing DWARF consumers (crash reporters, debuggers) to silently lose
unwind data.

## Fix

Have the BP orderer skip the Mach-O `__TEXT,__eh_frame` section
explicitly before collecting candidate subsections, preserving the
existing CIE/FDE order without adding state to `Section`.

This is the only MachO section with this constraint:
- `__unwind_info` is a `SyntheticSection` (not a `ConcatOutputSection`),
so it never enters the BP pipeline
- `__gcc_except_tab` LSDA entries are referenced by absolute offset, so
reordering is safe
- `-order_file` is unaffected because it assigns priorities through
symbol definitions (which live in `__text`, not `__eh_frame`). Only the
BP orderer enumerates sections directly.

## Production impact

Verified on a large iOS application (~218 MB binary, ~34,000 FDEs)
linked with `lld` + `--bp-compression-sort=both`.

### Static analysis of `__eh_frame`

Simulating 64-bit CIE pointer resolution on the output binary across
multiple builds:

| Build | `__eh_frame` layout | FDEs resolved (64-bit) | FDEs failed |
|---|---|---|---|
| lld + BP sort | FDEs first | 15 / 34,257 | **34,242 (99.96%)** |
| lld + fix | CIEs first | 30,558 / 30,558 | **0** |

### Runtime verification

Proxied crash report uploads from a device running both the affected and
fixed binaries:

|  | Affected build | Fixed build |
|---|---|---|
| Threads captured | 3 | 24 |
| Total frames | 28 | 135 |
| Background threads | 0-2 | 23 |

The affected build lost ~85% of thread data. The crash reporter could
only unwind the crashed thread (via compact unwind). All background
thread unwind data was silently dropped.

## Reproducer

Minimal test case (ARM64). Requires `--bp-compression-sort=both` to
trigger:

```bash
llvm-mc -filetype=obj -emit-compact-unwind-non-canonical=true \
  -triple=arm64-apple-macos11.0 test.s -o test.o
ld64.lld -arch arm64 -platform_version macos 11.0 11.0 \
  -syslibroot $(xcrun --show-sdk-path) -lSystem -lc++ \
  test.o -o test --bp-compression-sort=both
llvm-objdump --dwarf=frames test
# Without fix: "error: parsing FDE data at 0x0 failed due to missing CIE"
# With fix: CIE records correctly precede their FDEs
```

Standalone reproducer with 64-bit CIE simulation script:
https://gist.github.com/karim-alweheshy/ae28196c4fbb295f81cc793cfbe0c1b7

## Test

The lit test creates multiple functions with `cfi_escape` (forcing DWARF
unwind mode) and different personality functions (producing separate
CIEs), then links with `--bp-compression-sort=both`. Verified on both
x86_64 and arm64.

Made with [Cursor](https://cursor.com)

---------

Co-authored-by: Karim Alweheshy <karim.alweheshy at reddit.com>
Co-authored-by: Ellis Hoag <ellis.sparky.hoag at gmail.com>


  Commit: 1869d9925f5d278c607eb2859ab413ba15438c50
      https://github.com/llvm/llvm-project/commit/1869d9925f5d278c607eb2859ab413ba15438c50
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  Update `memset.inline` third argument documentation (#199725)

Similar to `memcpy.inline`, `memset.inline`'s size argument doesn't need
to be a constant. Checked by the test

Transforms/PreISelIntrinsicLowering/X86/memset-inline-non-constant-len.ll.


  Commit: 460556ae66e45b203f49c1c43878b4e0ef6d0f49
      https://github.com/llvm/llvm-project/commit/460556ae66e45b203f49c1c43878b4e0ef6d0f49
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp

  Log Message:
  -----------
  [ORC] Shutdown the socket FD before closing it in FDSimpleRemoteEPCTransport (#196835)

It is totally possible that when
`FDSimpleRemoteEPCTransport::disconnect` is called,
`FDSimpleRemoteEPCTransport::listenLoop` is still reading on the socket
FD the former is closing. On Linux, closing a socket FD when it is being
read by another thread is an undefined behavior I believe. And on modern
kernels, the reading thread will not be waken up, so `listenLoop` will
be blocked forever and preventing the process from exiting.

This patch fixes this issue by calling `shutdown(2)` on the socket FDs
before closing them.


  Commit: 4bc1cd92e41f682a5aa49fd5ca10a2002d8470ba
      https://github.com/llvm/llvm-project/commit/4bc1cd92e41f682a5aa49fd5ca10a2002d8470ba
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Fix yaml error (#199735)

This was introduced by: 25294a2fffcf40cbd8b6743d78524badeded7446


  Commit: e925643b1e7fc936955c0cc01c2c3ce1abd2f4ce
      https://github.com/llvm/llvm-project/commit/e925643b1e7fc936955c0cc01c2c3ce1abd2f4ce
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Semantics/OpenMP/declare-simd-interface-body.f90
    M flang/test/Semantics/OpenMP/linear-clause03.f90

  Log Message:
  -----------
  [flang][OpenMP] Warn that declare simd in an interface body has no effect (#199248)

Follow-up to the crash fix for #192581. A DECLARE SIMD directive may
legally appear in the specification part of an interface body, but it
applies to the external procedure being declared rather than to any
definition in this compilation. Flang does not propagate the directive
to callers, so it has no effect and is silently dropped during lowering.

Detect this in semantics by checking whether the program unit containing
the directive is an interface body (SubprogramDetails::isInterface())
and emit an -Wopenmp-usage warning so the user knows the directive is
ignored.

Updates #192581


  Commit: ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
      https://github.com/llvm/llvm-project/commit/ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP] Make `iv` const-reference to original parser::Name (#199727)

Merging since this is a trivial change.


  Commit: 041c5e0e06c9aa9581cd4714b93d89422741bab8
      https://github.com/llvm/llvm-project/commit/041c5e0e06c9aa9581cd4714b93d89422741bab8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [VPlan] Add missing maybe_unsused to OpTy (NFC). (#199734)

This fixes a warning when building w/o assertions.

https://lab.llvm.org/buildbot/#/builders/228/builds/76


  Commit: 196c7018fc11e40d69b476562a105023e56e72a5
      https://github.com/llvm/llvm-project/commit/196c7018fc11e40d69b476562a105023e56e72a5
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
    M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
    M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/test/Dialect/MemRef/flatten_memref.mlir
    M mlir/test/Dialect/Vector/flatten-memref-and-emulate-narrow-types.mlir

  Log Message:
  -----------
  [mlir][MemRef] Move FlattenMemRefs to interfaces (#198625)

Use IndexedAccessOpInterface for indexed memory operations and
VectorTransferOpInterface update methods for vector transfers ops. Add
an IndexedMemCopyOpInterface-based flattening pattern for DMA-like
operations.

This gets rid of the hardcoded operation list in the patterns, allowing
dialects like AMDGPU to transparently work with memref flattening.

As a consequence, the specialized vector- and memref-dialect only
constructors that only load a subset of the flattening patterns are
removed.

Also adds a max() method to SaturatedInteger because it was useful for
computing the size of a flat memref.

---------

Co-authored-by: Codex <codex at openai.com>


  Commit: da57dc996221b505a16d9827474b086347eb25e4
      https://github.com/llvm/llvm-project/commit/da57dc996221b505a16d9827474b086347eb25e4
  Author: Domenic Nutile <domenic.nutile at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll

  Log Message:
  -----------
  [AMDGPU][True16] Legalize extloads into 16-bit registers (#198670)

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>

Stack PRs:
https://github.com/llvm/llvm-project/pull/198669
https://github.com/llvm/llvm-project/pull/198671

See https://github.com/llvm/llvm-project/pull/195289 for previous
discussion

---------

Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>
Co-authored-by: Domenic Nutile <domenic.nutile at amd.com>


  Commit: 9ec4c66daffdf2fc740c2429a4d1ec3ff4d997b0
      https://github.com/llvm/llvm-project/commit/9ec4c66daffdf2fc740c2429a4d1ec3ff4d997b0
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/IR/Type.cpp
    M llvm/test/Assembler/target-type-param-errors.ll
    A llvm/test/Verifier/amdgpu-stridemark-structured-gep.ll
    A llvm/test/Verifier/amdgpu-stridemark-tokenlike.ll
    M llvm/test/Verifier/structured-gep-indices-bad.ll

  Log Message:
  -----------
  [AMDGPU] Lay groundwork for stridemark type / addrspace(9) via sgep (#198930)

This commit introduces and documents the `amdgpu.stridemark` target
type, which is used to express when a structured.gep intrinsic is being
used to increment/decrement the index part of a `ptr addrspace(9)` (as
opposed to GEP, which manipulates the offset part)

Future PRs will add inbounds/nusw/nuw support to structured GEP to
enable more efficient code generation and then will implement a lowering
of these structured GEPs to struct.buffer intrinsics.


  Commit: 31111955fc5c182f40080d3a9a0dc2ab4e175cf1
      https://github.com/llvm/llvm-project/commit/31111955fc5c182f40080d3a9a0dc2ab4e175cf1
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/unittests/Host/SocketTest.cpp

  Log Message:
  -----------
  [lldb] Set SO_NOSIGPIPE on platforms that support it (#198044)

On macOS, I've seen instances where debugserver goes down very quickly
after it starts up (less than 100ms). Normally, LLDB is able to detect
when debugserver goes down and report it without bringing down the
entire debug session. However that's not happening here. My best guess
is that debugserver is going down before LLDB is ready to react to it.

To mitigate this scenario, adopt SO_NOSIGPIPE. Note that this mostly
matters for tools that embed liblldb. The LLDB driver ignores all
SIGPIPEs.

rdar://173516461


  Commit: 09709d7f5357c843c596db34721aa5d85e06323c
      https://github.com/llvm/llvm-project/commit/09709d7f5357c843c596db34721aa5d85e06323c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/libc-shared-tests.yml

  Log Message:
  -----------
  [Github] Pin container image reference in libc-shared-tests (#199737)

Pinned to the image used in the last successful workflow run.

Introduced in c32de3e3759c3368978535e4ff4fb83323219fb0.


  Commit: 2a80a9d52ee17a2a3188f52a3befcb2e8ed57ae6
      https://github.com/llvm/llvm-project/commit/2a80a9d52ee17a2a3188f52a3befcb2e8ed57ae6
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Modules/safe_buffers_optout.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-complex.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files-2.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-issue-79379.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-pch.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-template-instantiation-notes.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Move warning-only analysis back to function-based (#198006)

Move the warning-only analysis back to the end of parsing each Decl.
The warning-only analysis no longer does any extra AST deserialization.
Pre-compiled code will only be analyzed once during its own compilation.
    
When `-fsafe-buffer-usage-suggestions` is used, the behavior is the
same as before, because it requires visibility of the whole
translation unit.
    
rdar://177185295

Also fix rdar://107480207 & rdar://176992568 for the warning-only case.


  Commit: 85717da6350cfc3de1d166fcef661abadb377fcf
      https://github.com/llvm/llvm-project/commit/85717da6350cfc3de1d166fcef661abadb377fcf
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/DebugInfo/Generic/sysroot-sdk.c
    M clang/test/Modules/debug-info-moduleimport.m
    M lldb/test/API/lang/objc/modules-auto-import/Makefile
    M lldb/test/API/lang/objc/modules-auto-import/TestModulesAutoImport.py

  Log Message:
  -----------
  [clang] Add -fno-debug-record-sysroot (#192541)

This enables excluding the absolute path to the sysroot from debug info
for reproducible builds. These fields are used by lldb, which also has
fallbacks since it's possible these paths don't exist on the machine
doing the debugging when built remotely anyways.

This was also possible using
`-fdebug-prefix-map=/path/to/Xcode.app=/some/path`
but depending on the environment you might not be able to easily pass
that with the user specific developer directory path.

Assisted by: claude


  Commit: 769ffe95aac091593563cb2a8cc282b0b6dd2099
      https://github.com/llvm/llvm-project/commit/769ffe95aac091593563cb2a8cc282b0b6dd2099
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  [lldb-dap][NFC] Use GetStringValue helper (#199672)

I noticed some inconsistency in working with
`SBStructuredData.GetStringValue` (e.g. use `length + 1` or `length`),
so it would be better to remove that code duplication and use common
helper (`GetStringValue`) to do this routine.


  Commit: 461f816d44203c3644b30bd3e42eb7c86c23a0f2
      https://github.com/llvm/llvm-project/commit/461f816d44203c3644b30bd3e42eb7c86c23a0f2
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/test/CodeGenDirectX/Builtins/dot2add.c
    M clang/test/CodeGenHLSL/ArrayAssignable.logicalptr.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayReturn.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
    M clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
    M clang/test/CodeGenHLSL/builtins/BoolSwizzles.hlsl
    M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/f16tof32-builtin.hlsl
    M clang/test/CodeGenHLSL/builtins/f16tof32.hlsl
    M clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
    M clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    M clang/test/CodeGenHLSL/builtins/mad.hlsl
    M clang/test/CodeGenHLSL/convergence/cf.for.plain.hlsl
    M clang/test/CodeGenHLSL/convergence/do.while.hlsl
    M clang/test/CodeGenHLSL/convergence/entry.point.hlsl
    M clang/test/CodeGenHLSL/convergence/for.hlsl
    M clang/test/CodeGenHLSL/convergence/global_array.hlsl
    M clang/test/CodeGenHLSL/convergence/while.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-store.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-methods.hlsl
    M clang/test/CodeGenHLSL/resources/CBufferMatrixSingleSubscriptSwizzle.hlsl
    M clang/test/CodeGenHLSL/resources/MatrixElement_cbuffer.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
    M clang/test/CodeGenHLSL/resources/Texture2D-Mips.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs-array.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs-inheritance.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs.hlsl
    M clang/test/CodeGenHLSL/static-local-ctor.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl
    M clang/test/SemaHLSL/Resources/static_resources.hlsl
    A llvm/test/Transforms/IndVarSimplify/convergent-controlled-loop.ll
    A llvm/test/Transforms/LoopRotate/convergent-controlled.ll
    A llvm/test/Transforms/SimpleLoopUnswitch/convergent-controlled.ll

  Log Message:
  -----------
  Reland "[HLSL][DirectX] Emit convergence control tokens when targeting DirectX" (#194452)

The initial landing surfaced 3 somewhat orthogonal issues related to
loop unrolling. These are addressed:
[here](https://github.com/llvm/llvm-project/pull/193592),
[here](https://github.com/llvm/llvm-project/pull/193593) and
[here](https://github.com/llvm/llvm-project/pull/193590).

These caused these
[tests](https://github.com/llvm/llvm-project/actions/runs/24577221310/job/71865579618#step:8:87913)
to fail in the offload test suite.

We can verify that these are now passing as expected (fixing any of the
3 issues would resolve this and allow us to reland)

Some additional tests were added since the revert that are now accounted
for and updated in the reland fixes commit.

This relands https://github.com/llvm/llvm-project/pull/188792


  Commit: 631d16eaaa88ab76feaa6c672ce4a4ca4bfcf14b
      https://github.com/llvm/llvm-project/commit/631d16eaaa88ab76feaa6c672ce4a4ca4bfcf14b
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp

  Log Message:
  -----------
  [SSAF][WPA] Bounds propagation graph is a supergraph of the pointer-flow graph (#198889)

Background: The whole-program UnsafeBufferReachableAnalysis propagates
bounds between pointers. It uses the pointer-flow graph extracted and
linked from translation units.

This commit patches the gap between the semantics of bounds propagation
and pointer-flow: the bounds propagation graph is a super graph of the
pointer-flow graph in that a pointer-flow graph edge `(src, i) -> (dst,
j)` is the projection of a finite set of bounds propagation graph edges
`{(src, i+d) -> (dst, j+d) | 0 <= d < UB}` for a small constant upper
bound UB. See the following example for the idea:

```
void f(int ***p, int **q) {
   *p = q;
   (**p)[5] = 0;
}
```

There is one edge for the static pointer assignment: '(p, 2) -> (q, 1)'.
In terms of bounds propagation, this assignment implies that if 'p' at
pointer level 2 requires bounds, 'q' at pointer level 1 must also have
them. Furthermore, this relationship propagates to deeper indirection
levels: if 'p' at level 3 requires bounds (due to '(**p)[5]'), so does
'q' at level 2.


  Commit: 6d99fcb5c8a2a4a71a4c77a7074776f535ed6a82
      https://github.com/llvm/llvm-project/commit/6d99fcb5c8a2a4a71a4c77a7074776f535ed6a82
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Mark string.capacity/over_max_size.pass.cpp as UNSUPPORTED on old dylibs (#199682)

This test is currently failing in the CI for unknown reasons, likely
related to the setup and not a recent patch. Disable it for now to get
the CI green again.


  Commit: 95cb4d4b536af5c6f462e7a2c6ad2dd14c2701b7
      https://github.com/llvm/llvm-project/commit/95cb4d4b536af5c6f462e7a2c6ad2dd14c2701b7
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: RegBankLegalize rules for wave_shuffle (#196412)

Add uniform and divergent RegBankLegalize rules for wave shuffle. When
wave_shuffle is uniform, it is folded by AMDGPUUniformIntrinsicCombine
before reaching RegBankLegalize, to its value operand when value is
uniform, or to amdgcn_readlane when only idx is uniform. Add a test to
disable UniformIntrinsicCombine so we can verify and test for uniform
rule.


  Commit: ff243860d7934d763dea4f3fa345b4bfef6d393c
      https://github.com/llvm/llvm-project/commit/ff243860d7934d763dea4f3fa345b4bfef6d393c
  Author: Liza Burakova <liza at chromium.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lld/MachO/LTO.cpp
    A lld/test/MachO/Inputs/large-lto-object.ll
    M lld/test/MachO/lto-object-path.ll

  Log Message:
  -----------
  [lld][MachO] Fix SIGBUS crash in saveOrHardlinkBuffer (#198381)

This change removes a hardlink in saveOrHardlinkBuffer if the
hardlink already exists.

On Mac, -object_path_lto files are hardlinked to the cache when
possible. If the hardlink fails, the saveOrHardlinkBuffer method
falls back to saveBuffer instead.

saveBuffer() opens the file that is being written to as a
raw_fd_ostream object, which truncates a file when opening if the
file already exists.

Most of the time this is not an issue, however, if the hardlink
fails because it actually already exists, AND the hardlink exists
specifically between the -object_path_lto file and the cache file,
then when the file is opened and truncated, we also accidentally
truncate the file we are trying to read from.

This fixes a recurring issue Chromium saw in buildbots that
occassionally hit the above circumstances to cause the crash.
Chromium bug for reference is crbug.com/40060675.

This test adds a new file with a large-ish array (32KB) to ensure
the file is large enough to be mmap'd during the linking process.
This was necessary to reproduce the crash, as smaller files were
not mmap'd. The SIGBUS crash only occurs when the file is mmap'd
then truncated.


  Commit: 8d2f190609b680cca5829e77f68b45798cd79444
      https://github.com/llvm/llvm-project/commit/8d2f190609b680cca5829e77f68b45798cd79444
  Author: Fan Mo <w007878 at hotmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaOpenACCClause.cpp
    A clang/test/SemaOpenACC/compute-construct-reduction-vla.c
    A clang/test/SemaOpenACC/compute-construct-reduction-vla.cpp

  Log Message:
  -----------
  [clang][SemaOpenACC] Reject VLA reduction (#199178)

`GenerateReductionInitRecipeExpr` only handled `ConstantArrayType` when
walking the operand type to build an InitListExpr. A VariableArrayType
`(int arr[i+1])` fell through to the final else branch and tripped
`assert(Ty->isScalarType())`.

Rather than silently accepting VLAs (which have no reasonable lowering.
unlike pointers, there is an expectation of initialized values,but we
cannot statically enumerate elements), reject them outright in
`CheckVarType` with a new diagnostic err_acc_reduction_vla. This is
consistent with the fact that neither codegen nor lowering currently
supports VLA reductions, and other compilers (GCC crashes, NVC++
silently ignores) do not meaningfully handle them either. The fix
upgrades the existing warning path for non-constant arrays in
`CheckVarType` to an error when the clause kind is Reduction, so VLAs
never reach `GenerateReductionInitRecipeExpr`.
Reproducer:

```c
void foo(void) {
  int i;
  int arr[i + 1];
#pragma acc parallel reduction(& : arr)
  while (1) ;
}
```

Fixes #199162

cc @erichkeane 

---
note: calude code was used for generating the regression test case

---------

Co-authored-by: Lemmon <yuzutech.llc at gmail.com>


  Commit: 92cfd0a3f0ac20fbba4fc74a4bdae409fceebd49
      https://github.com/llvm/llvm-project/commit/92cfd0a3f0ac20fbba4fc74a4bdae409fceebd49
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    A clang-tools-extra/test/clang-doc/compact.cpp
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/test/clang-doc/index.cpp
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
    M clang-tools-extra/test/clang-doc/json/inheritance.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp

  Log Message:
  -----------
  [clang-doc] Add option for compact JSON (#190822)

By default all JSON is serialized "pretty" with whitespace. This patch
adds an option to serialize JSON without whitespace. This trims the size
of the JSON folder for clang from around 1.3 GB to 785 MB, which is a
39.6% decrease.


  Commit: 282e90796bb9c7962520002806290279a41f6db6
      https://github.com/llvm/llvm-project/commit/282e90796bb9c7962520002806290279a41f6db6
  Author: lntue <lntue at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml

  Log Message:
  -----------
  [libc][ci] Improve full build precommit CIs caching keys. (#199742)

Currently full build precommit CIs only uses c_compiler as the cache's
key which will be the same for many of them listed in the matrix list.
We change to use the combination of (target + build_type + c_compiler)
as keys to uniquely distinguish them and the future gcc builds.


  Commit: 3aa913fe647480791432d99bbdc016688d1ae841
      https://github.com/llvm/llvm-project/commit/3aa913fe647480791432d99bbdc016688d1ae841
  Author: lntue <lntue at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h

  Log Message:
  -----------
  [libc][math] Temporarily disable exception tests for NextAfter and NextToward tests on Windows. (#199740)

They are a bit flaky on Windows.
See https://github.com/llvm/llvm-project/issues/199738


  Commit: fafc2b32ffffdcf12717a8d3d166f91b34ae6362
      https://github.com/llvm/llvm-project/commit/fafc2b32ffffdcf12717a8d3d166f91b34ae6362
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp

  Log Message:
  -----------
  [TableGen] Fix wrong op name in a grammar comment(NFC) (#199661)


  Commit: 010faf1e36c75a0f96dd45e6dd0a1ed30736b159
      https://github.com/llvm/llvm-project/commit/010faf1e36c75a0f96dd45e6dd0a1ed30736b159
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp

  Log Message:
  -----------
  [TableGen] Add missing grammar comment for !cond(NFC) (#199663)


  Commit: 9d751a2985c1f2ef061f7f9f53d44676d1287883
      https://github.com/llvm/llvm-project/commit/9d751a2985c1f2ef061f7f9f53d44676d1287883
  Author: David Salinas <dsalinas at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Object/OffloadBundle.cpp
    A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff-compress.test
    A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff.test
    A llvm/test/tools/llvm-readobj/COFF/AMDGPU/offloading.test

  Log Message:
  -----------
  [llvm][Object] Add COFF support to extractOffloadBundleFatBinary (#199574)

Use PointerToRawData from the COFF section header to compute the section
offset, replacing the previous stub that returned an error for all COFF
object files.

This enables llvm-objdump --offloading and llvm-readobj --offloading to
work on COFF fatbins produced by HIP on Windows.

---------

Co-authored-by: James Henderson <James.Henderson at sony.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 5df91f6c83ca8035a67c79b224ca949e34966d82
      https://github.com/llvm/llvm-project/commit/5df91f6c83ca8035a67c79b224ca949e34966d82
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/sycl-tests.yml

  Log Message:
  -----------
  workflows/sycl-tests: Pin container image reference (#199466)

I pinned the image to the version that was used in the last successful
workflow run.

https://github.com/llvm/llvm-project/security/code-scanning/1808
https://docs.zizmor.sh/audits/#unpinned-images


  Commit: 88fbc0614e826d09c986fd1b6e80eb2435e97d6c
      https://github.com/llvm/llvm-project/commit/88fbc0614e826d09c986fd1b6e80eb2435e97d6c
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Transforms/DeadStoreElimination/merge-stores.ll

  Log Message:
  -----------
  [DSE] Restrict partial-overlap store merging to matching orderings. (#199728)

Partial-overlap store merging folds the later killing store into the
earlier dead store and erases the killing store. That is invalid if the
killing store is volatile or has stronger-than-unordered atomic
ordering, because erasing it drops an observable write. It is also invalid
if the killing and dead stores have different atomic orderings, because
the bytes originally written by the killing store would inherit the dead
store's atomicity after the merge -- silently dropping (or adding)
atomicity for those bytes.

Require both stores to be unordered (i.e. non-volatile with ordering at
most unordered) and to share the same ordering. This preserves the
existing fold for two simple stores or two unordered-atomic stores
(e.g. simple.ll's test43a) while leaving volatile, ordered-atomic, and
atomicity-mismatched cases in place.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply at anthropic.com>


  Commit: 584b596d812044070193e7be9c1d3f39c7e147df
      https://github.com/llvm/llvm-project/commit/584b596d812044070193e7be9c1d3f39c7e147df
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/release-doxygen.yml

  Log Message:
  -----------
  workflows/release-doxygen: Remove template expansions (#199456)

https://github.com/llvm/llvm-project/security/code-scanning/1725
https://github.com/llvm/llvm-project/security/code-scanning/1726
https://github.com/llvm/llvm-project/security/code-scanning/1838


  Commit: ef59dbea76d82f008e5314c47e574193dbc4d403
      https://github.com/llvm/llvm-project/commit/ef59dbea76d82f008e5314c47e574193dbc4d403
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M flang/include/flang/Lower/CallInterface.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertConstant.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    A flang/test/HLFIR/c_devptr_byvalue.cuf

  Log Message:
  -----------
  [flang][cuda] Lower c_devptr value arguments in bind(c) like c_ptr (#199316)

Treat `type(c_devptr), value` arguments in BIND(C) interfaces like
`type(c_ptr), value` by passing the nested raw address value instead of
the outer derived type ABI. This keeps call signatures consistent for
CUDA Fortran generic specifics that share a C binding label and avoids
argument misclassification at the x86_64 register/stack boundary.


  Commit: 08e83a533e47607ce3229b32548f24e08d466fe6
      https://github.com/llvm/llvm-project/commit/08e83a533e47607ce3229b32548f24e08d466fe6
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/release-tasks.yml

  Log Message:
  -----------
  workflows/release-tasks: Remove template expansion (#199444)

https://github.com/llvm/llvm-project/security/code-scanning/1737
https://github.com/llvm/llvm-project/security/code-scanning/1738
https://github.com/llvm/llvm-project/security/code-scanning/1739
https://github.com/llvm/llvm-project/security/code-scanning/1740
https://github.com/llvm/llvm-project/security/code-scanning/1741
https://github.com/llvm/llvm-project/security/code-scanning/1742


  Commit: 6519c04eb459deab1c71756ddfc04fd7ee852904
      https://github.com/llvm/llvm-project/commit/6519c04eb459deab1c71756ddfc04fd7ee852904
  Author: Dhruva Chakrabarti <Dhruva.Chakrabarti at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineSpiller.cpp

  Log Message:
  -----------
  [1/3][RegAlloc][LiveRegMatrix] Fix inconsistency in HoistSpillHelper delegates (#197773)

HoistSpillHelper's LiveRangeEdit delegate callbacks did not keep the
LiveRegMatrix consistent when eliminateDeadDefs triggered interval
shrinking and splitting during spill hoisting.

Three issues:

1. No LRE_WillShrinkVirtReg override: when eliminateDeadDefs shrinks a
vreg's interval via shrinkToUses, the matrix was not updated. Add an
override that unassigns the vreg from the matrix and records it in
PendingReassignments for later re-assignment.

2. LRE_DidCloneVirtReg called VRM.assignVirt2Phys without
Matrix->assign: when splitSeparateComponents creates new vregs, the
clones got VRM entries but were never inserted into the matrix. Fix by
consuming PendingReassignments and properly assigning both Old (shrunk)
and New (split) intervals to the matrix.

3. No flush for shrink-without-split: if a vreg was shrunk but not
split, LRE_DidCloneVirtReg was never called to re-assign it. Add a flush
loop at the end of hoistAllSpills to re-assign any remaining pending
vregs.

Also update LRE_CanEraseVirtReg to clear pending entries for erased
vregs.

LIT tests exercised by this patch (i.e. if I introduce consistency
verification as in https://github.com/llvm/llvm-project/pull/197778 but
not this patch, the following tests fail):
CodeGen/X86/AMX/amx-gemm.ll
CodeGen/X86/apx/push2-pop2.ll
CodeGen/X86/udivmodei5.ll

Assisted-by: Cursor/Claude Opus


  Commit: 7a66e99b12eed64c5509280c800b0ce21dcd0bff
      https://github.com/llvm/llvm-project/commit/7a66e99b12eed64c5509280c800b0ce21dcd0bff
  Author: Domenic Nutile <domenic.nutile at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll

  Log Message:
  -----------
  [AMDGPU][True16] Add regbank combiner cases to fix regression around G_SEXTLOAD (#198671)

<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>

Stack PRs:
https://github.com/llvm/llvm-project/pull/198669
https://github.com/llvm/llvm-project/pull/198670

See https://github.com/llvm/llvm-project/pull/195289 for previous
discussion


  Commit: 13f9f468dcf8e89d232f28304fa595bf0efbf84b
      https://github.com/llvm/llvm-project/commit/13f9f468dcf8e89d232f28304fa595bf0efbf84b
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
    M llvm/test/CodeGen/AMDGPU/av-spill-expansion-with-machine-cp.mir
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/dbg-info-inline-at.ll
    A llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/ds-read2-write2-debug-info.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    A llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir
    M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
    M llvm/test/CodeGen/AMDGPU/inflate-av-remat-imm.mir
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
    M llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
    M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
    M llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-single-wave-workgroup-memops.ll
    M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir

  Log Message:
  -----------
  [AMDGPU] Emit entry function Dwarf CFI (#183152)

Entry functions represent the end of unwinding, as they are the
outer-most frame. This implies they can only have a meaningful
definition for the CFA, which AMDGPU defines using a memory location
description with a literal private address space address. The return
address is set to undefined as a sentinel value to signal the end of
unwinding.

Change-Id: I21580f6a24f4869ba32939c9c6332506032cc654
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: 593a23887939b55219acae47fcb1cda48ff37319
      https://github.com/llvm/llvm-project/commit/593a23887939b55219acae47fcb1cda48ff37319
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll

  Log Message:
  -----------
  [AMDGPU] Diagnose unsupported fma_legacy/sudot4/sudot8 intrinsics on some subtargets (#198464)

Add proper diagnostics for `llvm.amdgcn.fma.legacy`,
`llvm.amdgcn.sudot4` and `llvm.amdgcn.sudot8` on subtargets where they
are unsupported


  Commit: 3ce7b405579d64f8e26e14c6cc02df92117af330
      https://github.com/llvm/llvm-project/commit/3ce7b405579d64f8e26e14c6cc02df92117af330
  Author: Ben Langmuir <blangmuir at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/unittests/Basic/FileManagerTest.cpp

  Log Message:
  -----------
  Revert "[clang] Use FileError in FileManager::getFileRef, getDirectoryRef" (#199721)

Reverts llvm/llvm-project#199126

This caused a small compile time regression.


  Commit: 3212caa942dea9247fffcd96ec2949f0f960731d
      https://github.com/llvm/llvm-project/commit/3212caa942dea9247fffcd96ec2949f0f960731d
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bazel] Use `additional_compiler_inputs` to handle include scanning for TargetPassRegistry.inc (#199201)

This use of using `#include` with a macro breaks include scanning, for
example:

* `GET_PASS_REGISTRY` defined here:
https://github.com/llvm/llvm-project/blob/5c853423f4f9e7296b7596b7f3ccade481686bfd/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp#L603
* `GET_PASS_REGISTRY` included here:
https://github.com/llvm/llvm-project/blob/5c853423f4f9e7296b7596b7f3ccade481686bfd/llvm/include/llvm/Passes/TargetPassRegistry.inc#L60

When include scanning is enabled, the `PassRegistry.def` gets omitted
because it the include scanner does not handle this case. Providing it
via `additional_compiler_inputs` ensures it is included even in that
case.


  Commit: 3dd3b6fe758c4ca230e9de624b2586990bd07d74
      https://github.com/llvm/llvm-project/commit/3dd3b6fe758c4ca230e9de624b2586990bd07d74
  Author: Jun Wang <jwang_2024 at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst

  Log Message:
  -----------
  [AMDGPU][docs][NFC] Fix some instruction names in gfx950 doc (#199094)

In the GFX950 documentation, some instructions that should have the
_sdwa suffix were incorrectly given the _dpp suffix.


  Commit: 5157be7bd5c12ac2836bdefb4e9cded6871b065c
      https://github.com/llvm/llvm-project/commit/5157be7bd5c12ac2836bdefb4e9cded6871b065c
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/SandboxIR.md
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR][Tracker] Implement accept(/*AcceptAll*/) and revert(/*RevertAll*/) (#197289)

In the context of nested checkpoints the tracker's API was somewhat
inconsistent. Tracker::revert() would revert to the last checkpoint but
accept() would accept all changes.

This patch fixes this, and introduces `accept(bool AcceptAll)` and
`revert(bool RevertAll)`.


  Commit: fdd3b84773f107f51b25b5591278f2724c911283
      https://github.com/llvm/llvm-project/commit/fdd3b84773f107f51b25b5591278f2724c911283
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
    M llvm/test/Transforms/SLPVectorizer/X86/slp-fma-loss.ll

  Log Message:
  -----------
  [SLP] Fix FMA regression in FMA-candidate retry

When tryToVectorize is called with AllowFMACandidates=true, falling
through to tryToVectorizeList vectorizes the fmul operands of an
FMA-candidate fadd without accounting for the lost FMA opportunity.
canConvertToFMA requires those fmuls to have one use, so vectorizing
them always breaks FMA formation. The cost model for tryToVectorizeList
omits the fadd from the tree and compares "2 fmuls vs 1 vfmul", missing
the scalar FMA savings entirely.
Block tryToVectorizeList when AllowFMACandidates=true. TryToReduce is
safe because computeReductionCost accounts for FMA in the scalar
baseline via canConvertToFMA on the fadd user.
Fixes a 4.5% regression in SPEC17 imagemagick on AArch64 introduced by

Reviewers: sushgokh, bababuck

Pull Request: https://github.com/llvm/llvm-project/pull/199706


  Commit: 4ef6ca40f53fe5ef09b940a3d7d9a92a091dd878
      https://github.com/llvm/llvm-project/commit/4ef6ca40f53fe5ef09b940a3d7d9a92a091dd878
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/AST/ast-dump-aarch64-mte.c
    M clang/test/CodeGen/arm64-mte.c
    M clang/test/Sema/builtins-arm64-mte.c

  Log Message:
  -----------
  [Clang][AArch64] Fix crash with large arguments to MTE built-ins (#197620)

The second argument to `__builtin_arm_irg()` and `__builtin_arm_gmi()`
is expected to be 64-bit. When a wider type is passed, the compiler
still generates a `zext` instruction, leading to a backend error:

```
> cat test.c
unsigned test(void* a, unsigned __int128 m) {
  return __builtin_arm_gmi(a, m);
}
> clang -target aarch64 -march=armv9+memtag -S test.c
fatal error: error in backend: Cannot select: ... i64,ch = load<... zext from i128>
```

This is fixed by applying the required implicit conversions to the
argument in Sema.


  Commit: f78a233ac89dc0f9f0f26dfe051874013ae6e242
      https://github.com/llvm/llvm-project/commit/f78a233ac89dc0f9f0f26dfe051874013ae6e242
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
    M llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
    M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill-offset-overflow-gfx950.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll
    M llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir
    M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
    M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
    M llvm/test/CodeGen/AMDGPU/spill-restore-partial-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir
    M llvm/test/CodeGen/AMDGPU/spill_kill_v16.mir
    M llvm/test/CodeGen/AMDGPU/spillv16.mir
    M llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
    M llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir
    M llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/DebugInfo/AMDGPU/cfi.ll
    M llvm/test/DebugInfo/AMDGPU/debug-loc-copy.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.nogenerated.expected

  Log Message:
  -----------
  [AMDGPU] Implement CFI for non-kernel functions (#183153)

This does not implement CSR spills other than those AMDGPU handles
during PEI. The remaining spills are handled in a subsequent patch.

Change-Id: I5e3a9a62cf9189245011a82a129790d813d49373
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: c052a26f2d8cedf921226f088fca8525cb8c7e5b
      https://github.com/llvm/llvm-project/commit/c052a26f2d8cedf921226f088fca8525cb8c7e5b
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp

  Log Message:
  -----------
  Revert "[clang][driver][darwin] Hold onto full triples in Darwin SDKP… (#199756)

…latformInfo (#197791)"

This reverts commit 9c06c5de6a20df13cfe6d9a7022308e96f378955. It broke
downstream builds for compiler-rt builtins.

 Resolves: rdar://177813095


  Commit: a4c8cfdac226b89f82963bb65d64c246723e1ea9
      https://github.com/llvm/llvm-project/commit/a4c8cfdac226b89f82963bb65d64c246723e1ea9
  Author: Jonathan L'Work <113400649+Jonathan03ant at users.noreply.github.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    A llvm/test/CodeGen/AMDGPU/elf-note-null-terminator.ll

  Log Message:
  -----------
  [AMDGPU] Fix ELF note emission to include null terminator (#199720)

The `AMDGPUTargetELFStreamer::EmitNote()` function claims the note name
includes a null terminator (NameSZ = Name.size() + 1) but only emits the
string bytes via `emitBytes(Name)`, relying on alignment padding to
provide the null byte. Works for most situations but breaks with 8-byte
names where padding lands exactly at the boundary.

Explicitly emit null terminator with `S.emitInt8(0)` after
`emitBytes(Name)`.


  Commit: 2c336879888a59e3438529712320ad7ab1d47210
      https://github.com/llvm/llvm-project/commit/2c336879888a59e3438529712320ad7ab1d47210
  Author: carlobertolli <carlo.bertolli at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/extract-vector-elt-binop-build-vector.ll

  Log Message:
  -----------
  [AMDGPU] Add regression test for extract of vector binop scalarization (#198825)

Test that extracting both lanes from a binop of two build_vectors
sharing a variable operand at different lane positions correctly folds
per-lane constants.

Assisted-by: Cursor (Claude)


  Commit: 0eb28e6de2654073efb4920e21b535fe181de041
      https://github.com/llvm/llvm-project/commit/0eb28e6de2654073efb4920e21b535fe181de041
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/fmuladd_width_prop.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll

  Log Message:
  -----------
  [SLP] Propagate through instrinsics in BoUpSLP::getVectorElementSize() (#199129)

We propagate through simple binary operations already, some operations
are excluded since it happens to be an intrinsic.

Motivated by case exposed when removing vectorization from pre-LTO, see
https://github.com/llvm/llvm-project/pull/195886#issuecomment-4486422243.


  Commit: 8a64511b59a293e213ebedcf9ea1b1c34373e551
      https://github.com/llvm/llvm-project/commit/8a64511b59a293e213ebedcf9ea1b1c34373e551
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/clamped-load.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/discarded-interleave-group.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/clamped-load.ll
    A llvm/test/Transforms/LoopVectorize/clamped-load-vf-ranges.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll

  Log Message:
  -----------
  [LV] Add tests with pointers based on URem expressions (NFC). (#199763)

Add tests with loads and stores with pointers based on URem expressions.


  Commit: 0e0127e5b21dce0cf500e24467f1471d479876be
      https://github.com/llvm/llvm-project/commit/0e0127e5b21dce0cf500e24467f1471d479876be
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lldb/source/ValueObject/ValueObjectVTable.cpp
    M lldb/test/API/functionalities/vtable/TestVTableValue.py

  Log Message:
  -----------
  [lldb] Fix vtable support on arm64e (#199116)

There were 2 small issues.
1. ValueObjectVTableChild was not fixing the addresses it was pulling
from signed pointers. This broke things like `SBValue::GetLoadAddress`
and identifying the function pointer type from debug info.
2. TestVTableValue.py made a lot of assumptions that did not hold on
arm64e. a. GetValueAsUnsigned will return a raw pointer value. Most of
the time, we needed GetValueAsAddress. b. The test was reading pointers
out of memory without fixing them up. c. The summary for a function
pointer on arm64e includes the load address. This isn't true on other
platforms.


  Commit: f5a3f1d4bf101c0c5dc00c08b52f13fd00e891f9
      https://github.com/llvm/llvm-project/commit/f5a3f1d4bf101c0c5dc00c08b52f13fd00e891f9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test iwhtthre vectorization regression, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/199774


  Commit: a14d084bbb1a7261d8a71c56120159abb6af330b
      https://github.com/llvm/llvm-project/commit/a14d084bbb1a7261d8a71c56120159abb6af330b
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M libc/config/baremetal/config.json

  Log Message:
  -----------
  Reland "[libc] Enable baremetal float printf using modular format" (#199758)

Reverts llvm/llvm-project#199114

#199118 fixed the issue uncovered in the Fuchsia CI build.


  Commit: a7aceff0b1e552cbc2306e575e9ac649853fda8e
      https://github.com/llvm/llvm-project/commit/a7aceff0b1e552cbc2306e575e9ac649853fda8e
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/docs/SandboxIR.md
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  Revert "[SandboxIR][Tracker] Implement accept(/*AcceptAll*/) and revert(/*RevertAll*/)" (#199776)

Reverts llvm/llvm-project#197289


  Commit: 27abffa3efe272d725a6c4eceeebfe8c17e0f8e8
      https://github.com/llvm/llvm-project/commit/27abffa3efe272d725a6c4eceeebfe8c17e0f8e8
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
    A lldb/test/API/functionalities/gdb_remote_client/TestUnavailableRegisters.py
    M lldb/tools/debugserver/source/RNBRemote.cpp

  Log Message:
  -----------
  [lldb] New expedited register specfication for unavailable regs (#193894)

When lldb-server/debugserver send a stop packet, they expedite the
vaLues of many of the general purpose registers in the stop packet, so
lldb doesn't need to fetch them separately.

On Darwin systems using an AArch64 M4 or newer SOC with SME, we need to
fetch the streaming vector length (svl) register when in Streaming SVE
Mode to correctly size the registers in lldb. On Darwin systems, when we
are not in SSVE mode, svl is undefined -- it is not included in the
expedited registers. However, lldb will still try to fetch the value, so
we get a register-read packet at every stop on M4 and newer systems,
trying to fetch the value.

This patch adds a new format for the expedited registers. They are
normally a `;` separated series of `{regnum}:{native endian bytes}`.
This allows for `{regnum}:` alone, indicating that the register value
for regnum cannot be fetched at this stop.

It updates debugserver to always add svcr, tpidr2, and svl to the
expedited registers, whether we can fetch them or not.

Most of the changes happen in GDBRemoteRegisterContext. This class
maintains a buffer sized for the register context bytes, and an array of
bool to indicate whether we have fetched the value for a given register
yet or not. If we have fetched the value, we can supply the bytes from
the register context byte array. If it is not yet fetched, we read it.

This PR changes this fetched-or-not bool array to a LazyBool with

eLazyBoolYes meaning we have the bytes for the register value in the
lldb buffer.
eLazyBoolCalculate means we have not yet tried to read the register
value.
eLazyBoolNo means that the register is currently readable.

The meaning of these 3 LazyBool states could be a little confusing as
you read GDBRemoteRegisterContext, so all getting/setting of these is
done through the methods

SetAllRegistersValid()
SetAllRegistersUnfetched()

{Set,Get}RegisterIsValid()
{Set,Get}RegisterIsUnavailable()
{Set,Get}RegisterIsUnfetched()

Whcih I think makes it a little easer to understand. The changes to
GDBRemoteRegisterContext were the trickiest part of this PR, all the
other changes are simple.

Linux et al mostly work on AArch64 systems with SVE + SME, in which case
we have either a vector length or a streaming vector length, at all
times. But the M4 & newer SOCs from Apple don't have any SVE registers
when not in streaming SVE mode, so we have this issue of an extra
register read at all stops, unless in SSVE mode.

rdar://161581129

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: e42046a747f597da40f76e1656be919dea946f15
      https://github.com/llvm/llvm-project/commit/e42046a747f597da40f76e1656be919dea946f15
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M mlir/test/Integration/Dialect/XeGPU/WG/load_store_matrix.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Fix pass name in RUN command (#199766)


  Commit: 7e98d1960e989945cfb2ec016b950fbd2bb5d937
      https://github.com/llvm/llvm-project/commit/7e98d1960e989945cfb2ec016b950fbd2bb5d937
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    A llvm/test/Transforms/LoopFusion/different_guards.ll

  Log Message:
  -----------
  [LoopFusion] Do not fuse loops with different guards (#199724)

The testcase that was originally contributed to #193641 exposed a
functional issue in which loop fusion can fuse functions with different
loop guards. There seem to two distinct bugs and each of them alone is
enough to let this happen.

- The condition that checks loop guards are identical, intends to
exclude loops that require peeling. But the condition is not correct and
it allows some loops that do not require peeling to pass.

- The condition that checks two guards are identical implicitly assume
conditions of guard branches are instructions, but this is not
necessarily always correct.

This patch fixes the problem for the loops that do not require peeling.
The issue still exists for loops that require peeling and will be fixed
separately.


  Commit: e9e5d4ee914ac98ecb6fafa9e1f8f4231a9282d3
      https://github.com/llvm/llvm-project/commit/e9e5d4ee914ac98ecb6fafa9e1f8f4231a9282d3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp

  Log Message:
  -----------
  clang/AMDGPU: Remove unnecessary fallback to check -march (#199780)

-march is now rewritten to -mcpu.


  Commit: f263446abbdd9f1ef12d60107329ea976e94247e
      https://github.com/llvm/llvm-project/commit/f263446abbdd9f1ef12d60107329ea976e94247e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-validate-sanitize.cl

  Log Message:
  -----------
  clang/AMDGPU: Report all runtimeless sanitizers as available (#199642)


  Commit: f3c0f26a3961b20b6e698fe3579499528d006b48
      https://github.com/llvm/llvm-project/commit/f3c0f26a3961b20b6e698fe3579499528d006b48
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/test/Transforms/FIRToMemRef/array-coor-rebox-slice-shape.mlir
    M flang/test/Transforms/FIRToMemRef/array-coor-slice-shift.mlir

  Log Message:
  -----------
  [flang][FIRToMemRef] Get strides from descriptor for some array_coor cases. (#199158)

This is a follow-up on Jean's comment
https://github.com/llvm/llvm-project/pull/198933#discussion_r3279535746

This patch makes use of the descriptor strides when `fir.array_coor`'s
memref is a `fir.box` that is not a fir.embox result.


  Commit: 187dfef80ee9d5cb89efc918a2af407389553779
      https://github.com/llvm/llvm-project/commit/187dfef80ee9d5cb89efc918a2af407389553779
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    A flang/include/flang/Optimizer/Dialect/FIRBoxUtils.h
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    A flang/lib/Optimizer/Dialect/FIRBoxUtils.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/array-coor-canonicalization.fir

  Log Message:
  -----------
  [flang] Enabled pulling of rebox into array_coor. (#199161)

This patch enables pulling slicing `fir.rebox` operations
into `fir.array_coor`. This helps preserve information about
the original rank of the array being accessed.
`FIRToMemRef` and later passes may benefit from this.

Assisted by: Claude


  Commit: bf420f0d18562cd4a3ec7ae65354c62970adb262
      https://github.com/llvm/llvm-project/commit/bf420f0d18562cd4a3ec7ae65354c62970adb262
  Author: Kunal Pathak <kunalspathak.github at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/interleaved-store-noninbounds-gep.ll

  Log Message:
  -----------
  [AArch64] Fix hasNearbyPairedStore to handle non-inbounds GEPs (#199137)

Problem: `hasNearbyPairedStore` uses
`stripAndAccumulateInBoundsConstantOffsets` to decompose store pointers
into (base, offset) pairs and check whether two stores are 16 bytes
apart. This fails when LSR has rewritten pointer arithmetic into
non-inbounds GEPs because the function refuses to look through them. The
two stores then appear to have different base pointers and the check
returns false. When this happens, `lowerInterleavedStore` proceeds to
emit `ST2` for a pattern that would be more profitable as `zip+stp`,
since the load-store optimizer can pair adjacent stores into `STP` but
cannot merge `ST2` with anything. On a bf16-to-fp32 NEON conversion loop
this causes a regression from 11 to 17 instructions per iteration.
Note: Interleaved stores support was added for RISCV in
https://github.com/llvm/llvm-project/pull/115354. Turning this off
produces the desired STP instructions.

https://godbolt.org/z/1afsjPd3e

Fix: Switch to `stripAndAccumulateConstantOffsets` with
`AllowNonInbounds=true`. The function is a bail-out heuristic doing pure
address arithmetic, so the inbounds semantic guarantee is not needed for
correctness.

---------

Co-authored-by: Kunal Pathak <kupathak at fb.com>


  Commit: fc60e08b4574a85f6966a751f32290f5732d1329
      https://github.com/llvm/llvm-project/commit/fc60e08b4574a85f6966a751f32290f5732d1329
  Author: lntue <lntue at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M .github/workflows/libc-overlay-tests.yml

  Log Message:
  -----------
  [libc] Use containers for overlay precommit CIs. (#199294)


  Commit: 577e9a7cc82faf3dae98dba4aea917a6ffaab293
      https://github.com/llvm/llvm-project/commit/577e9a7cc82faf3dae98dba4aea917a6ffaab293
  Author: Sy Brand <sy.brand at fastly.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/test/Preprocessor/wasm-target-features.c
    A lld/test/wasm/stack-pointer-abi.s
    A lld/test/wasm/thread-context-abi-mismatch.s
    A lld/test/wasm/tls-libcall.s
    M lld/wasm/Config.h
    M lld/wasm/Driver.cpp
    M lld/wasm/Options.td
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/Writer.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
    A llvm/test/CodeGen/WebAssembly/stack-abi.ll
    M llvm/test/CodeGen/WebAssembly/thread_pointer.ll
    M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll
    A llvm/test/DebugInfo/WebAssembly/thread-context-abi.ll

  Log Message:
  -----------
  [WebAssembly] WASIP3 Library Call Thread Context Support (#175800)

The [WebAssembly Component
Model](https://component-model.bytecodealliance.org/) has added support
for [cooperative
multithreading](https://github.com/WebAssembly/component-model/pull/557).
This has been implemented in the [Wasmtime
engine](https://github.com/bytecodealliance/wasmtime/pull/11751) and is
part of the wider project of [WASI preview
3](https://wasi.dev/roadmap#upcoming-wasi-03-releases), which is
currently tracked
[here](https://github.com/orgs/bytecodealliance/projects/16).

These changes require updating the way that `__stack_pointer` and
`__tls_base` work purely for a new `wasm32-wasip3` target; other targets
will not be touched. Specifically, rather than using a Wasm global for
tracking the stack pointer and TLS base, the new
[`context.get/set`](https://github.com/WebAssembly/component-model/blob/main/design/mvp/CanonicalABI.md#-canon-contextget)
component model builtin functions will be used (the intention being that
runtimes will need to aggressively optimize these calls into single
load/stores). For justification on this choice rather than switching out
the global at context-switch boundaries, see [this
comment](https://github.com/WebAssembly/wasi-libc/issues/691#issuecomment-3716405618)
and [this
comment](https://github.com/WebAssembly/wasi-libc/issues/691#issuecomment-3716916730).

This PR adds support for using library calls instead of globals for
holding the stack pointer and TLS base. When used, this thread context
ABI emits calls to `__wasm_{get,set}_{stack_pointer,tls_base}` when
needed. These functions can then be implemented in `libc`. This is
enabled only for the WASIp3 target.

There is a temporary macro define for `__wasm_libcall_thread_context__`
which can be removed once `wasi-libc` has fully migrated to the new ABI
for the WASIp3 target.


  Commit: e918a5ada8a9e693a7f68614bfce698d38f903d3
      https://github.com/llvm/llvm-project/commit/e918a5ada8a9e693a7f68614bfce698d38f903d3
  Author: Matthias Wippich <mfwippich at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/ShellEnvironment.py
    M llvm/utils/lit/lit/Test.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/display.py
    M llvm/utils/lit/lit/formats/base.py
    M llvm/utils/lit/lit/llvm/config.py
    M llvm/utils/lit/lit/llvm/subst.py
    M llvm/utils/lit/lit/reports.py
    M llvm/utils/lit/lit/run.py

  Log Message:
  -----------
  [lit][NFC] remove new-style class opt-ins (#199784)

In Python 3.0 and later it is no longer necessary to explicitly derive
from `object` to opt into "new-style" classes, they are the default.

Since the current minimum Python version is 3.8, this is no longer
required. This patch removes `object` from the base class lists of all
affected classes in lit.


  Commit: 9eb0d424db2df869428c800e5a5535342d70de31
      https://github.com/llvm/llvm-project/commit/9eb0d424db2df869428c800e5a5535342d70de31
  Author: Matthias Wippich <mfwippich at gmail.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/ShUtil.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/formats/base.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/formats/shtest.py
    M llvm/utils/lit/lit/util.py
    M llvm/utils/lit/tests/Inputs/check_path.py
    M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-control-chars.py
    M llvm/utils/lit/tests/Inputs/shtest-not/print_environment.py
    M llvm/utils/lit/tests/Inputs/shtest-timeout/short.py

  Log Message:
  -----------
  [lit][NFC] remove future statements for mandatory features in Python 3 (#199786)

This patch removes future statements from lit for features that are
mandatory in Python 3.0 and later.

Specifically, it removes future statements for
[`absolute_import`](https://docs.python.org/3/library/__future__.html#future__.absolute_import)
and
[`print_function`](https://docs.python.org/3/library/__future__.html#future__.print_function),
since both became mandatory in Python 3.0.


  Commit: 2bd872b03fe16726870a34ee6cb50e9d81947e68
      https://github.com/llvm/llvm-project/commit/2bd872b03fe16726870a34ee6cb50e9d81947e68
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask-uniforms.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/expensive-alias-masking.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing-alias-mask.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-data-tail-folding-style.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-needs-freeze.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-small-index.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/cast-induction.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    A llvm/test/Transforms/LoopVectorize/remove-redundant-trip-count-scev.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll

  Log Message:
  -----------
  [LV] Add support for partial alias masking with tail folding (#182457)

This patch adds basic support for partial alias masking, which allows
entering the vector loop even when there is aliasing within a single
vector iteration. It does this by clamping the VF to the safe distance
between pointers. This allows the runtime VF to be anywhere from 2 to
the "static" VF.

Conceptually, this transform looks like:

```
  // `c` and `b` may alias.
  for (int i = 0; i < n; i++) {
    c[i] = a[i] + b[i];
  }
```

->

```
  svbool_t alias_mask = loop.dependence.war.mask(b, c);
  int num_active = num_active_lanes(mask);
  if (num_active >= 2) {
    for (int i = 0; i < n; i += num_active) {
      // ... vector loop masked with `alias_mask`
    }
  }
  // ... scalar tail
```

This initial patch has a number of limitations:

- The loop must be tail-folded
  * We intend to follow-up with full alias-masking support for loops
    without tail-folding
- The mask and transform is only valid for IC = 1
  * Some recipes may not handle the "ClampedVF" correctly at IC > 1
  * Note: On AArch64, we also only have native alias mask instructions 
    for IC = 1
- Reverse iteration is not supported
  * The mask reversal logic is not correct for the alias mask (or 
    clamped ALM)
- First order recurrences are not supported
  * The `splice.right` is not lowered correctly for clamped VFs
- Reductions are not supported 
  * The final horizontal reduction needs to set lanes past the 
    "ClampedVF" to the identity value
- This style of vectorization is not enabled by default/costed
  * It can be enabled with `-force-partial-aliasing-vectorization`
  * When enabled, alias masking is used instead of the standard diff
    checks (when legal to do so)

This PR supersedes #100579 (closes #100579).


  Commit: e6d8a8f9384b353cc95baccac8c233309e1c3568
      https://github.com/llvm/llvm-project/commit/e6d8a8f9384b353cc95baccac8c233309e1c3568
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/unique-internal-linkage-names.cpp

  Log Message:
  -----------
  [Clang] Emit prefix map normalization before generating hashes for the unique linkage names. (#198667)

Use normalized path from the macro prefix map to generate the unique ids
for the internal linkage names. That allows a reproducible hash on any
build system. Regularly the macro prefix map gets normalized in favor of
the target system before the path substitution.


  Commit: e0ef143823ce8f733c50fae675f05d0df0f702e5
      https://github.com/llvm/llvm-project/commit/e0ef143823ce8f733c50fae675f05d0df0f702e5
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M lld/test/wasm/alias.s
    M lld/test/wasm/build-id.test
    M lld/test/wasm/ctor-return-value.s
    M lld/test/wasm/duplicate-global-imports.s
    M lld/test/wasm/export-optional.s
    M lld/test/wasm/externref.s
    M lld/test/wasm/function-imports-first.ll
    M lld/test/wasm/function-imports.s
    M lld/test/wasm/gc-imports.s
    M lld/test/wasm/gc-sections.ll
    M lld/test/wasm/global-base.test
    M lld/test/wasm/globals.s
    M lld/test/wasm/lto/tls.ll
    M lld/test/wasm/map-file.s
    M lld/test/wasm/merge-string-debug.s
    M lld/test/wasm/mutable-global-exports.s
    M lld/test/wasm/name-section-mangling.s
    M lld/test/wasm/signature-mismatch-export.ll
    M lld/test/wasm/signature-mismatch.s
    M lld/test/wasm/stack-first.test
    M lld/test/wasm/stack-pointer-abi.s
    M lld/test/wasm/startstop.ll
    M lld/test/wasm/table-base.s
    M lld/test/wasm/tag-section.ll
    M lld/test/wasm/tls-base-non-shared-memory.s
    M lld/test/wasm/undefined-weak-call.s
    M lld/test/wasm/unresolved-symbols-dynamic.s
    M lld/test/wasm/weak-undefined-pic.s
    M lld/test/wasm/weak-undefined.s
    M lld/wasm/Driver.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Only include __stack_pointer when needed (#199739)


  Commit: 7938535a54b51a4ca84821b7766d68049c9aa895
      https://github.com/llvm/llvm-project/commit/7938535a54b51a4ca84821b7766d68049c9aa895
  Author: Owen Rodley <orodley at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
    M clang/test/CodeGen/lto-newpm-pipeline.c
    M clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
    M lld/test/ELF/lto/devirt_vcall_vis_export_dynamic.ll
    M lld/test/ELF/lto/devirt_vcall_vis_public.ll
    M lld/test/ELF/lto/devirt_vcall_vis_shared_def.ll
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Bitcode/BitcodeReader.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/LTO/LTO.h
    A llvm/include/llvm/Transforms/Utils/AssignGUID.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    A llvm/lib/Transforms/Utils/AssignGUID.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CloneModule.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/Assembler/index-value-order.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-function-summary.ll
    M llvm/test/CodeGen/X86/fat-lto-section.ll
    M llvm/test/LTO/Resolution/X86/not-prevailing-alias.ll
    M llvm/test/LTO/Resolution/X86/not-prevailing-weak-aliasee.ll
    M llvm/test/Linker/funcimport2.ll
    M llvm/test/Other/new-pm-O0-defaults.ll
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
    M llvm/test/ThinLTO/AArch64/aarch64_inline.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions1.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions2.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions3.ll
    M llvm/test/ThinLTO/X86/ctor-dtor-alias.ll
    M llvm/test/ThinLTO/X86/ctor-dtor-alias2.ll
    M llvm/test/ThinLTO/X86/deadstrip.ll
    M llvm/test/ThinLTO/X86/devirt_function_alias.ll
    M llvm/test/ThinLTO/X86/devirt_function_alias2.ll
    M llvm/test/ThinLTO/X86/devirt_pure_virtual_base.ll
    M llvm/test/ThinLTO/X86/devirt_vcall_vis_public.ll
    M llvm/test/ThinLTO/X86/distributed_import.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-exported-internal.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-unknown.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-weak.ll
    M llvm/test/ThinLTO/X86/globals-import.ll
    M llvm/test/ThinLTO/X86/hidden-escaped-symbols-alt.ll
    M llvm/test/ThinLTO/X86/hidden-escaped-symbols.ll
    M llvm/test/ThinLTO/X86/import-ro-constant.ll
    M llvm/test/ThinLTO/X86/index-const-prop-alias.ll
    M llvm/test/ThinLTO/X86/index-const-prop.ll
    M llvm/test/ThinLTO/X86/linkonce_resolution_comdat.ll
    M llvm/test/ThinLTO/X86/memprof-dups.ll
    M llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
    M llvm/test/ThinLTO/X86/memprof_imported_internal.ll
    M llvm/test/ThinLTO/X86/memprof_imported_internal2.ll
    M llvm/test/ThinLTO/X86/prevailing_weak_globals_import.ll
    M llvm/test/ThinLTO/X86/visibility-elf.ll
    M llvm/test/ThinLTO/X86/visibility-macho.ll
    M llvm/test/ThinLTO/X86/weak_resolution.ll
    M llvm/test/ThinLTO/X86/windows-vftable.ll
    M llvm/test/ThinLTO/X86/writeonly.ll
    A llvm/test/Transforms/AssignGUID/assign_guid.ll
    M llvm/test/Transforms/EmbedBitcode/embed-wpd.ll
    M llvm/test/Transforms/EmbedBitcode/embed.ll
    M llvm/test/Transforms/FunctionImport/funcimport-debug-retained-nodes.ll
    M llvm/test/Transforms/FunctionImport/funcimport.ll
    M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
    M llvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
    M llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
    M llvm/test/Transforms/SampleProfile/ctxsplit.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal-typeid.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal1.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll
    M llvm/test/Transforms/WholeProgramDevirt/branch-funnel-profile.ll
    M llvm/test/Transforms/WholeProgramDevirt/export-single-impl.ll
    M llvm/test/Transforms/WholeProgramDevirt/export-vcp.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_export_dynamic.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_public.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_shared_def.ll
    M llvm/test/tools/gold/X86/thinlto_weak_library.ll
    M llvm/test/tools/gold/X86/thinlto_weak_resolution.ll
    M llvm/test/tools/gold/X86/v1.16/devirt_vcall_vis_export_dynamic.ll
    M llvm/tools/llvm-link/llvm-link.cpp
    M llvm/tools/opt/NewPMDriver.cpp
    M llvm/tools/opt/optdriver.cpp

  Log Message:
  -----------
  Compute GUIDs once and store in metadata (#184065)

This allows us to keep GUIDs consistent across compilation phases which
may change the name or linkage type.

See https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801

This is a large change since the addition of metadata breaks many tests.
The test changes are mostly just trivial changes to checks to get them
passing.


  Commit: d139f653019ee8058eaadf5e5deda79ee8faf093
      https://github.com/llvm/llvm-project/commit/d139f653019ee8058eaadf5e5deda79ee8faf093
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll

  Log Message:
  -----------
  [SLP][NFC]Add another test for external phi user, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/199804


  Commit: 7e6f337e1dcf0bfb93e8d084ee3bd57a1cf9ff2d
      https://github.com/llvm/llvm-project/commit/7e6f337e1dcf0bfb93e8d084ee3bd57a1cf9ff2d
  Author: Xiaodong Liu <57342990+XiaodongLoong at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-mca.rst
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-carry-over.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-add-sequence.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-all-views.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-retire.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-readadv.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-alias.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-noalias.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-out-of-order-retire.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-store-readadv.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A57-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/forwarding-idioms.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/writeback-loads-stores.s
    M llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
    M llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-add-sequence.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-double.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-trans.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx11-double.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx12-permlane16-cycles.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx12-pseudo-scalar-trans.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx9-retireooo.s
    M llvm/test/tools/llvm-mca/ARM/cortex-a57-carryover.s
    M llvm/test/tools/llvm-mca/ARM/m55-storefwd.s
    M llvm/test/tools/llvm-mca/ARM/m7-negative-readadvance.s
    M llvm/test/tools/llvm-mca/ARM/memcpy-ldm-stm.s
    M llvm/test/tools/llvm-mca/ARM/vld1-index-update.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/fpr.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/gpr.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/zero-reg.s
    M llvm/test/tools/llvm-mca/RISCV/MIPS/p8700.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/div-fdiv.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass-c.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/jump.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/sp-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-lmul-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/disable-im.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-at-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-middle.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-straddles-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-lmul-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/no-vsetvli-to-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s
    M llvm/test/tools/llvm-mca/RISCV/XiangShan/gpr-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/XiangShan/load-to-alu.s
    M llvm/test/tools/llvm-mca/SystemZ/stm-lm.s
    M llvm/test/tools/llvm-mca/X86/AlderlakeP/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/AlderlakeP/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Atom/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/load-store-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/load-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-6.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/store-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/add-sequence.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependent-pmuld-paddd.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dot-product.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-alias.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/memcpy-like-test.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/pipes-fpu.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/pr37790.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/rank.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-5.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/store-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vbroadcast-operand-latency.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Broadwell/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/add-sequence.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/cmpxchg-read-advance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependent-pmuld-paddd.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dot-product.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/load-store-alias.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/memcpy-like-test.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/negative-read-advance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/pipes-fpu.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/pr37790.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rank.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-6.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-5.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-adc-sequence-readadvance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-add-sequence-readadvance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/stmxcsr-ldmxcsr.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vbroadcast-operand-latency.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/xadd.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/xchg.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms-avx-256.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-3.s
    M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/Haswell/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/Haswell/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Haswell/stmxcsr-ldmxcsr.s
    M llvm/test/tools/llvm-mca/X86/Haswell/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/LunarlakeP/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/LunarlakeP/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SLM/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SandyBridge/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver2/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver3/dependency-breaking-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-mmx.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-mmx.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-x87.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver4/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s
    M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/bextr-read-after-ld.s
    M llvm/test/tools/llvm-mca/X86/bzhi-read-after-ld.s
    M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-3.s
    M llvm/test/tools/llvm-mca/X86/sqrt-rsqrt-rcp-memop.s
    M llvm/test/tools/llvm-mca/X86/stack-engine-pop.s
    M llvm/test/tools/llvm-mca/X86/stack-engine-push.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-2.s
    M llvm/tools/llvm-mca/Views/TimelineView.cpp
    M llvm/tools/llvm-mca/Views/TimelineView.h

  Log Message:
  -----------
  [llvm-mca] Fix total execution count in Average Wait times (#199500)

Fix the column `0` for the `<total>` row in llvm-mca's `Average Wait times` report. The `total`
row now represents the total dynamic execution count used to normalize the averages, 
instead of the per-instruction iteration count. Update the timeline view docs and autogenerated
test expectations accordingly.

Co-authored-by: liuxiaodong <liuxiaodong at sunmmio.com>


  Commit: 40602b6346cc3e2fda464f31d9e9473c55be94b3
      https://github.com/llvm/llvm-project/commit/40602b6346cc3e2fda464f31d9e9473c55be94b3
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lld/COFF/Writer.cpp
    M lld/test/COFF/ctors_dtors_priority.s

  Log Message:
  -----------
  [LLD][COFF] Gate second-dot section-name stripping on MinGW (#199625)

The comment in getOutputSectionName has always called the second-dot
stripping "for MinGW" (e.g. .ctors.NNNN), but the code applied it on
every target. This hiddes a split-dwarf bug #199616.

Take an isMinGW gate and skip the stripping when it is false.


  Commit: 1b19eccf1751f99a8a77371428bc2708169c516e
      https://github.com/llvm/llvm-project/commit/1b19eccf1751f99a8a77371428bc2708169c516e
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp

  Log Message:
  -----------
  [BOLT][NFC] Split out function marking from profile parsing

Move out `setHasProfileAvailable` into `markFunctionsWithProfile`.
This also allows extracting per-pre-aggregated type handling in
`parseAggregatedLBREntry` into a switch statement.

Test Plan:
NFC

Processing time change (wall time):
* 10MB pre-aggregated profile:
  - Parsing aggregated branch events: 0.16s -> 0.05s
  - Pre-process profile data (parsing+marking): 0.18s -> 0.16s

* 6GB perf.data file:
  - Parsing branch events: 29.06s -> 28.55s
  - Pre-process profile data (excluding perf script): 29.47s -> 29.13s

Reviewers:
rafaelauler, yota9, maksfb, ayermolo, yozhu, yavtuk, paschalis-mpeis

Pull Request: https://github.com/llvm/llvm-project/pull/199320


  Commit: 73de4c73dc9b143212848cc0f97abc123cc7893c
      https://github.com/llvm/llvm-project/commit/73de4c73dc9b143212848cc0f97abc123cc7893c
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td

  Log Message:
  -----------
  [NFC][AMDGPU] Improve the predicate uses for WMMAs (#199807)


  Commit: 7259dd668674a2eb26be6cd21452292fe39fcc09
      https://github.com/llvm/llvm-project/commit/7259dd668674a2eb26be6cd21452292fe39fcc09
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td

  Log Message:
  -----------
  [RISCV][P-ext] Add DefVXSAT argument to tablegen classes. NFC (#199797)

Sink the lets Defs = [VXSAT] into the classs.

This makes the encoding based structure of this file more consistent.


  Commit: 05e1af73ba2d3f8fcf8fca2eca7aaf62d44eb3b6
      https://github.com/llvm/llvm-project/commit/05e1af73ba2d3f8fcf8fca2eca7aaf62d44eb3b6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td

  Log Message:
  -----------
  [RISCV][P-ext] Remove duplicate hasSideEffects=0, mayLoad=0, mayStore=0. NFC (#199798)

We had a let outside the class and inside.


  Commit: 0d5b7522dc729f04c27d8c9d536321d57b3b3196
      https://github.com/llvm/llvm-project/commit/0d5b7522dc729f04c27d8c9d536321d57b3b3196
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp

  Log Message:
  -----------
  [RISCV][NFC] Remove SegInstSEW for unused function (#199598)

Since SegInstSEW is only used by segment load/store, no need to keep it
for other builtins.


  Commit: 853d532794be83adc97d51c9ff8c9095ce32631b
      https://github.com/llvm/llvm-project/commit/853d532794be83adc97d51c9ff8c9095ce32631b
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M llvm/test/tools/llvm-symbolizer/wasm-basic.s

  Log Message:
  -----------
  Fix llvm-symbolizer test broken by #199739 (#199801)

I broke this test in #199739. As a result to that change, the start of
the CODE section in the linked WASM file shifted from 0x41 to 0x37 (a
shift of -10 bytes).

I was not aware that `wasm-ld` had testing outside of `lld/test/wasm`.


  Commit: 5a616ce490abe551ffc7a7714c28e90c483f5b39
      https://github.com/llvm/llvm-project/commit/5a616ce490abe551ffc7a7714c28e90c483f5b39
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/utils/ci/docker/docker-compose.yml

  Log Message:
  -----------
  [libc++] Update the GCC head version to 17 (#199823)

GCC released a new version, so we should bump the versions installed in
the CI so we can upgrade.


  Commit: 22ba468002d561185371c06f899c8c753edc6750
      https://github.com/llvm/llvm-project/commit/22ba468002d561185371c06f899c8c753edc6750
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/unions.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix non-defaulted union copy/move ctors (#199394)

They are like regular record ctors.


  Commit: 80490b8cfa343692500706f31893ba429fec96b7
      https://github.com/llvm/llvm-project/commit/80490b8cfa343692500706f31893ba429fec96b7
  Author: Iris Shi <0.0 at owo.li>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    A clang/test/Sema/inline-asm-constraint-embedded-null.c

  Log Message:
  -----------
  [clang][diagnostics] Reject embedded NUL characters in inline asm (#196462)

As suggested by @jmorse and @efriedma-quic in #196223.

---------

Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>


  Commit: 3913c828ab911757e8c971817757c2ab51452e45
      https://github.com/llvm/llvm-project/commit/3913c828ab911757e8c971817757c2ab51452e45
  Author: somi <1wosomm1 at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/MC/MCStreamer.cpp
    R llvm/test/MC/AsmParser/cfi-unfinished-frame.s
    M llvm/test/MC/ELF/cfi-scope-errors.s

  Log Message:
  -----------
  [MC] Diagnose unfinished CFI frame from an earlier section (#196775)

Fixes #177852.

The reproducer has two `.cfi_startproc` directives separated by a
`.popsection`. The first is never closed; the second is properly paired
with `.cfi_endproc`. `MCStreamer::finish()` only inspects the last entry
of `DwarfFrameInfos`, so the unfinished earlier frame slips through and
crashes `finishImpl()` when it emits frame data with a null End label.

Use `hasUnfinishedDwarfFrameInfo()` instead, which walks the full
`FrameInfoStack` and catches every unfinished frame.

---------

Co-authored-by: Fangrui Song <i at maskray.me>


  Commit: c85c8af5426eb1affa14388deb78a4731737bf04
      https://github.com/llvm/llvm-project/commit/c85c8af5426eb1affa14388deb78a4731737bf04
  Author: Garvit Gupta <garvgupt at qti.qualcomm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt][ARM] Add missing SUPERSEDES for optimized FP comparison sources (#199604)

PR #179924 and #179925 added optimized assembly implementations for ARM
double-precision and single-precision FP comparisons (arm/cmpdf2.S,
arm/gedf2.S, arm/unorddf2.S, arm/cmpsf2.S, arm/gesf2.S, arm/unordsf2.S)
but only added SUPERSEDES annotations for the thumb1 variants. The arm
variants were missing these annotations, causing both the generic and
optimized implementations to be included in libclang_rt.builtins.a.

For double-precision, the archive contains:
  - comparedf2.c.obj (pos 28): defines __unorddf2, __aeabi_dcmpun, ...
  - divdc3.c.obj (pos 32): defines __divdc3; refs __aeabi_dcmpun
  - unorddf2.S.obj (pos 126): defines __unorddf2, __aeabi_dcmpun
  - aeabi_dcmp.S.obj (pos 158): defines __aeabi_dcmpeq; refs __eqdf2

When linking divdc3_test.c, the linker loads divdc3.c.obj which
introduces __aeabi_dcmpun as undefined. BFD-like linkers (GNU ld, ELD)
continue scanning forward and resolve __aeabi_dcmpun from unorddf2.S.obj
(pos 126). Later, aeabi_dcmp.S.obj introduces __eqdf2 as undefined,
which is resolved by comparedf2.c.obj (pos 28) on the next pass. Since
both comparedf2.c.obj and unorddf2.S.obj define __unorddf2, the linker
reports a duplicate symbol error.

lld does not encounter this because of the difference in the way it
resolves symbol references. This causes comparedf2.c.obj (pos 28) to be
selected first for __aeabi_dcmpun, making unorddf2.S.obj unnecessary.

The same pattern exists for single-precision where arm/comparesf2.S and
arm/unordsf2.S both define __unordsf2 and __aeabi_fcmpun.

The fix adds SUPERSEDES annotations so that the generic implementations
(comparedf2.c for double-precision and arm/comparesf2.S for single-
precision) are removed from the source list when the optimized assembly
replacements are present. The assembly files together provide all
symbols that the generic implementations define.

The surrounding code was reviewed, and this PR was developed with the
assistance of AI.


  Commit: 18ddec75ba8241bb49e290cbc60c05dca7ab6250
      https://github.com/llvm/llvm-project/commit/18ddec75ba8241bb49e290cbc60c05dca7ab6250
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  [lldb] Use private stop for breakpoint-delaying decision (#199639)


  Commit: 532940bdee66bf5f36a70578698aab66f16919af
      https://github.com/llvm/llvm-project/commit/532940bdee66bf5f36a70578698aab66f16919af
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    A llvm/include/llvm/Object/BBAddrMap.def
    M llvm/include/llvm/Object/BBAddrMap.h

  Log Message:
  -----------
  [BBAddrMap] Drive Features and Metadata bits from BBAddrMap.def (#196906)

Move the bit name list of BBAddrMap::Features and BBAddrMap::BBEntry::Metadata
into a new BBAddrMap.def and derive the enum, bitfield, encode(), decode(),
and operator== from it. Adding a new bit now only requires one line in the
.def file.

Also expose BBAddrMap::Features::KnownMask for future use.


  Commit: 4ee7e900f321c78271c87da47f1d7bd4263f3e7c
      https://github.com/llvm/llvm-project/commit/4ee7e900f321c78271c87da47f1d7bd4263f3e7c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M bolt/test/lit.cfg.py
    M libsycl/test/lit.cfg.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/Shell/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg

  Log Message:
  -----------
  [lit] Move maxIndividualTestTime from global to test suite config (#198192)

Simplify LitConfig initialization and setter to allow None values.
TestingConfig.maxIndividualTestTime is initialized to 0 (or resolved to
0 if None) strictly during initialization.

This fixes an issue where the aggressive BOLT timeout of 60s (previously
set globally on lit_config) was leaking and affecting libc++ tests. By
moving the timeout configuration from the global lit_config to the
individual test suite config, we ensure that timeouts are isolated and
respect suite-local settings without leaking.

PR Stack:
* ➤ https://github.com/llvm/llvm-project/pull/198192
* https://github.com/llvm/llvm-project/pull/198193

Assisted-by: Gemini


  Commit: 4f54064a6e192eb182ba5e718f1b6d70065a6609
      https://github.com/llvm/llvm-project/commit/4f54064a6e192eb182ba5e718f1b6d70065a6609
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M llvm/include/llvm/IR/MemoryModelRelaxationAnnotations.h
    M llvm/lib/IR/MemoryModelRelaxationAnnotations.cpp

  Log Message:
  -----------
  [IR] Introduce an appendTags() idiom to set MMRA metadata [NFC] (#199621)

This is a simple set-union of new tags and existing tags. This is safer
than directly setting metadata, which can over-write existing MMRAs.

Assisted-By: Claude Opus 4.6

---------

Co-authored-by: Pierre van Houtryve <pierre.vanhoutryve at amd.com>


  Commit: 505a611530cc4508ad815f142f7b727a278f3590
      https://github.com/llvm/llvm-project/commit/505a611530cc4508ad815f142f7b727a278f3590
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/new-issues-labeler.yml

  Log Message:
  -----------
  Auto-label LifetimeSafety issues with `clang:temporal-safety` (#199522)

cc: @usx95


  Commit: a3adb545b6a33044ab634b7a330bab5d4ee76d24
      https://github.com/llvm/llvm-project/commit/a3adb545b6a33044ab634b7a330bab5d4ee76d24
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add details for `-Wlifetime-safety-return-stack-addr` diagnostic (#199432)

Most of the diagnostic's wording was taken from `-Wreturn-stack-address`
with exceptions such as:
- We do not special-case `[[clang::musttail]]`
- We do not special-case `CompoundLiteralExpr` as it is mostly a C
thing.

This patch does not add any new tests, it only updates already existing
test warnings to follow the new wording.

Comes as part of completing #186002


  Commit: 6bbbf743ae49736ba438e9dbd14a5bd0f4166382
      https://github.com/llvm/llvm-project/commit/6bbbf743ae49736ba438e9dbd14a5bd0f4166382
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
    M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    A llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
    M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
    M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
    A llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
    M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
    M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
    A llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
    M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll

  Log Message:
  -----------
  [llvm-debuginfo-analyzer] Add support for LLVM IR format. (#135440)

llvm-debuginfo-analyzer is a command line tool that processes debug
info contained in a binary file and produces a debug information
format agnostic “Logical View”, which is a high-level semantic
representation of the debug info, independent of the low-level format.

Add support for the LLVM IR format and be able to generate logical
views. Both textual representation (.ll) and bitcode (.bc) formats
are supported.


  Commit: 2b286794010f5549d109b37941a4c3171489c5d8
      https://github.com/llvm/llvm-project/commit/2b286794010f5549d109b37941a4c3171489c5d8
  Author: Kigyosi Alexandru <alexandru.kigyosi at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/lib/IR/MLIRContext.cpp

  Log Message:
  -----------
  [MLIR] Add a non-const ActionHandler getter to MLIRContext (#199652)

#197230 added a getter for the ActionHandler, but only returns a const
ref with a non-const accessor.
Instead provide both variants: a const accessor returning a const ref
and non-const one returning a mutable ref.


  Commit: 77d3da64d2bbbcd520aede072225d4790e95a84e
      https://github.com/llvm/llvm-project/commit/77d3da64d2bbbcd520aede072225d4790e95a84e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtin-masked.c

  Log Message:
  -----------
  [Clang] Accept gnu vectors in __builtin_masked* (#198248)

There doesn't seem to be a good reason to reject gnu vectors in these
builtins. The error messages for that case are also rather bizzare,
which doesn't help with figuring out what's going wrong.


  Commit: 263494977277ad6514e353021c31e3096c6cb3aa
      https://github.com/llvm/llvm-project/commit/263494977277ad6514e353021c31e3096c6cb3aa
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 532940b (#199874)

This fixes 532940bdee66bf5f36a70578698aab66f16919af.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 6de9a33debfdcd4dc77f826d515b744d382a8598
      https://github.com/llvm/llvm-project/commit/6de9a33debfdcd4dc77f826d515b744d382a8598
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
    M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    R llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
    M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
    M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
    R llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
    M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
    M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
    R llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
    M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
    R llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
    R llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll

  Log Message:
  -----------
  Revert "[llvm-debuginfo-analyzer] Add support for LLVM IR format. (#135440)" (#199890)

This reverts commit 6bbbf743ae49736ba438e9dbd14a5bd0f4166382.

There are link issues with some buildbots.


  Commit: a4b1361f33139e7a0a02edee1a1b012740951e01
      https://github.com/llvm/llvm-project/commit/a4b1361f33139e7a0a02edee1a1b012740951e01
  Author: Boyao Wang <wangboyao at bytedance.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll

  Log Message:
  -----------
  [RISCV][CodeGen] Use vzip.vv for e64 interleave shuffles with Zvzip (#199512)

Allow e64 interleave shuffles to use the standard Zvzip `vzip.vv`
lowering when the operand type is legal for Zvzip, just the same as what
XrivosVizip already does.


  Commit: f5bda2b94460d8439ed876d6486774d863ae989a
      https://github.com/llvm/llvm-project/commit/f5bda2b94460d8439ed876d6486774d863ae989a
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Change new tests' warnings to new ones  (#199887)

cc: @usx95


  Commit: 66bafd43ff2beb1d727339361df7ad34ea30e97a
      https://github.com/llvm/llvm-project/commit/66bafd43ff2beb1d727339361df7ad34ea30e97a
  Author: Mieszko Dziadowiec <mieszko.dziadowiec at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/lib/Support/TypeID.cpp

  Log Message:
  -----------
  [MLIR] Improve TypeID anonymous namespace check to handle GCC's __PRETTY_FUNCTION__ format (#199634)

The anonymous namespace detection in
`FallbackTypeIDResolver::registerImplicitTypeID` only checked for
Clang's `(anonymous namespace)` and MSVC's `anonymous-namespace`
formats. GCC produces `{anonymous}` in `__PRETTY_FUNCTION__`, silently
bypassing the check.


  Commit: 99238714741163c9187ca8db6ebe73c4cb3a4400
      https://github.com/llvm/llvm-project/commit/99238714741163c9187ca8db6ebe73c4cb3a4400
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp

  Log Message:
  -----------
  [BOLT][NFC] Split out DataAggregator::parseInput



Test Plan: NFC

Reviewers:
paschalis-mpeis, maksfb, ayermolo, yavtuk, yozhu, rafaelauler, yota9

Reviewed By: yozhu, rafaelauler

Pull Request: https://github.com/llvm/llvm-project/pull/199321


  Commit: b926cf7da0918686f4bcb4e16f3066aca22ae1e6
      https://github.com/llvm/llvm-project/commit/b926cf7da0918686f4bcb4e16f3066aca22ae1e6
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosa.h
    M mlir/lib/Conversion/TosaToSPIRVTosa/CMakeLists.txt
    A mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    A mlir/test/Conversion/TosaToSPIRVTosa/tosa-to-spirv.mlir

  Log Message:
  -----------
  [mlir][tosa][spirv] Lower TOSA elementwise ops to SPIR-V TOSA (#199505)

Add conversion patterns for simple TOSA elementwise operations to the
SPIR-V TOSA dialect.

The lowering covers unary and binary elementwise ops with shared pattern
templates, plus min/max handling for NaN propagation mode.

Add focused conversion tests that check the generated SPIR-V TOSA ops.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: 4c9296d94c95c4b4064a77cd7a61352bfb5130fd
      https://github.com/llvm/llvm-project/commit/4c9296d94c95c4b4064a77cd7a61352bfb5130fd
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M bolt/tools/driver/llvm-bolt.cpp

  Log Message:
  -----------
  [BOLT][NFC] Unify perf data setting

Combine opts::PerfData handling into one place per driver (llvm-bolt and
heatmap).
* Allow using perf data directly after DataAggregator/DataReader
  unification in #195986.
* Drop redundant perf data checks in perf2boltMode done by setProfile.

Test Plan: NFC

Reviewers:
ritter-x2a, david-salinas, grypp, Pierre-vh, dcaballe, aartbik, adam-smnk, fabianmcg, yota9, JDevlieghere, banach-space, xlauko, nikic, #reviewers-libcxx, rafaelauler, Moxinilian, nicolasvasilache, yozhu, ayermolo, paschalis-mpeis, lamb-j, andykaylor, #reviewers-libc, vangthao95, bcardosolopes, yavtuk, aaronmondal, rupprecht, matthias-springer, keith, maksfb, lanza, Jianhui-Li, charithaintc

Reviewed By: yozhu, rafaelauler

Pull Request: https://github.com/llvm/llvm-project/pull/199322


  Commit: 3e0c818e6f80213b737a5e18318de794a3914f71
      https://github.com/llvm/llvm-project/commit/3e0c818e6f80213b737a5e18318de794a3914f71
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    A clang/test/CIR/CodeGenHIP/builtins-amdgcn-image.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Adds lowering for amdgcn image load/store builtins (#198184)

Support for lowering of amdgcn_image_load/store for AMDGPU builtins to
clangIR.
Followed similar lowering from clang->llvmir:
`clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp`.

Upstreaming clangIR PR: https://github.com/llvm/clangir/pull/2058


  Commit: d63f99627b9b08d71595b1879be74a8225873e34
      https://github.com/llvm/llvm-project/commit/d63f99627b9b08d71595b1879be74a8225873e34
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    A bolt/test/merge-fdata-no-lbr-event-multi.test
    A bolt/test/merge-fdata-no-lbr-event.test
    M bolt/tools/merge-fdata/merge-fdata.cpp

  Log Message:
  -----------
  [BOLT][merge-fdata] Preserve event names



Test Plan: added merge-fdata-no-lbr-event*.test

Reviewers:
maksfb, paschalis-mpeis, yozhu, yota9, yavtuk, rafaelauler, ayermolo

Reviewed By: rafaelauler

Pull Request: https://github.com/llvm/llvm-project/pull/199323


  Commit: 698d44bf9ff61cd8c924bcf406c29c9988d5ea5e
      https://github.com/llvm/llvm-project/commit/698d44bf9ff61cd8c924bcf406c29c9988d5ea5e
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGen/builtin-clear-padding-codegen.c
    A clang/test/CodeGenCXX/builtin-clear-padding-codegen.cpp
    A clang/test/Sema/builtin-clear-padding.c
    A clang/test/SemaCXX/builtin-clear-padding.cpp
    A libcxx/test/libcxx/atomics/builtin_clear_padding.pass.cpp

  Log Message:
  -----------
  [clang] Add builtin to clear padding bytes (prework for P0528R3) (#75371)

Add builtin to clear padding bytes. This is the pre-work to implement
`std::atomic::compare_exchange_[weak/strong]` that ignores padding bits.
PR draft here: https://github.com/llvm/llvm-project/pull/76180

This PR picked up this patch from 3 years ago
https://reviews.llvm.org/D87974

The above patch no longer works as things changed quite a lot. I've made
some changes on top of the above patch:


it handles:
- struct
- builtin types with paddings (like `long double` and types with
`__attribute__((ext_vector_type(N)))`
- _Complex long double
- constant array
- union
- bit field
- types with virtual functions
- types with virtual bases

---------

Co-authored-by: zoecarver <z.zoelec2 at gmail.com>


  Commit: c94e5f327f47821e29f21b39ef1dc511c91341d9
      https://github.com/llvm/llvm-project/commit/c94e5f327f47821e29f21b39ef1dc511c91341d9
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp

  Log Message:
  -----------
  AMDGPU/GlobalISel: Move executeInWaterfallLoop call from lower (#199701)

WFI is an argument to applyMappingSrc and lower,
move executeInWaterfallLoop after these two return.
Also set insert point in executeInWaterfallLoop to
avoid need to set insert point before calling it.


  Commit: 99e6632cf619e4654443d2f58e9ffe6015a34314
      https://github.com/llvm/llvm-project/commit/99e6632cf619e4654443d2f58e9ffe6015a34314
  Author: Vicky Nguyen <vicky.trucviennguyen at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    M clang/test/CodeGen/AArch64/poly64.c

  Log Message:
  -----------
  [CIR][AArch64] Upstream vector-shift-right-and-insert NEON builtins (#196776)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for vector-shift-right-and-insert intrinsics
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#vector-shift-right-and-insert)

Port tests from clang/test/CodeGen/AArch64/neon_intrinsics.c and
clang/test/CodeGen/AArch64/poly64.c to
clang/test/CodeGen/AArch64/neon/intrinsics.c


  Commit: 4def779282d9c2a179fcfeb0079928f1bb2ce409
      https://github.com/llvm/llvm-project/commit/4def779282d9c2a179fcfeb0079928f1bb2ce409
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/test/libcxx-03/vendor/apple/disable-availability.sh.cpp
    M libcxx/test/libcxx/utilities/meta/is_within_lifetime.verify.cpp
    M libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/selftest/modules/std-module.sh.cpp
    M libcxx/test/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/modules/std.pass.cpp
    M libcxx/test/std/numerics/c.math/signbit.pass.cpp
    M libcxx/test/std/utilities/meta/meta.const.eval/is_within_lifetime.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.rel/is_virtual_base_of.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp

  Log Message:
  -----------
  [libc++][NFC] Remove lit annotations for older AppleClang versions (#199817)

We don't support anything older than apple-clang-21, so we can remove
those annotations.


  Commit: 3060f65b84f2b16f2f53367a03d2542a30827ac0
      https://github.com/llvm/llvm-project/commit/3060f65b84f2b16f2f53367a03d2542a30827ac0
  Author: Shanzhi Chen <chenshanzhi at huawei.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll

  Log Message:
  -----------
  Revert "[RISCV][CodeGen] Use vzip.vv for e64 interleave shuffles with Zvzip" (#199899)

Reverts llvm/llvm-project#199512

LLVM Buildbot has detected a build error for this PR.


  Commit: 0d6aac78ad967cfb0dc69de26cd7e159605fe0de
      https://github.com/llvm/llvm-project/commit/0d6aac78ad967cfb0dc69de26cd7e159605fe0de
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__concepts/referenceable.h
    M libcxx/include/__config
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/concepts.h
    M libcxx/include/__iterator/iter_move.h
    M libcxx/include/__iterator/iterator_traits.h
    M libcxx/include/__ranges/adjacent_transform_view.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/__ranges/zip_transform_view.h
    M libcxx/include/__type_traits/add_pointer.h
    R libcxx/include/__type_traits/is_referenceable.h
    M libcxx/include/__type_traits/remove_pointer.h
    M libcxx/include/module.modulemap.in
    R libcxx/test/libcxx/utilities/meta/is_referenceable.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/objc_support.compile.pass.mm

  Log Message:
  -----------
  [libc++] Remove workarounds for __{add,remove}_pointer on AppleClang (#199821)

We've updated the supported AppleClang version, so we can drop those
workarounds now.

This also removes `__is_referenceable_v`, since it's no longer used.


  Commit: 090df8f0c30699e65ebd29e347b5fbb26559e2f5
      https://github.com/llvm/llvm-project/commit/090df8f0c30699e65ebd29e347b5fbb26559e2f5
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M bolt/test/lit.cfg.py
    M libsycl/test/lit.cfg.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/Shell/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg

  Log Message:
  -----------
  Revert "[lit] Move maxIndividualTestTime from global to test suite config" (#199886)

Reverts llvm/llvm-project#198192

To fix  https://lab.llvm.org/buildbot/#/builders/195/builds/25357


  Commit: 3c16e92da529447a07625cfd0a702172dabed32c
      https://github.com/llvm/llvm-project/commit/3c16e92da529447a07625cfd0a702172dabed32c
  Author: Shanzhi Chen <chenshanzhi at huawei.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    A llvm/test/Transforms/EarlyCSE/AArch64/intrinsics-1xN.ll

  Log Message:
  -----------
  [AArch64][TTI][EarlyCSE] Add support for ld1xN and st1xN intrinsics (#198765)

Handle ld1x2, ld1x3, ld1x4, st1x2, st1x3, st1x4 in:
- AArch64TTIImpl::getTgtMemIntrinsic
- AArch64TTIImpl::getOrCreateResultFromMemIntrinsic

This enables EarlyCSE to optimize these NEON load/store intrinsics.

To test the changes, a new testcase (intrinsics-1xN.ll) derived from
llvm/test/Transforms/EarlyCSE/AArch64/intrinsics.ll is added.


  Commit: 2a574828c62f344859188796fc615ef44dd16327
      https://github.com/llvm/llvm-project/commit/2a574828c62f344859188796fc615ef44dd16327
  Author: David Green <david.green at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp

  Log Message:
  -----------
  [SelectionDAGBuilder] Replace asserts inside LLVM_DEBUG (#199748)

These assert were inside an LLVM_DEBUG macro, meaning they were very
rarely if ever tested. The second "LowerFormalArguments emitted a value
with the wrong type!" assert would fire in a number of tests so has been
removed. The other was replaced with an all_of assert.

Noticed when looking at #198107 / #199412.


  Commit: b63787a1c5d74b437e5cbc6dfc75d6b0cd9998cc
      https://github.com/llvm/llvm-project/commit/b63787a1c5d74b437e5cbc6dfc75d6b0cd9998cc
  Author: stefankoncarevic <skoncare at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    A mlir/test/Conversion/AMDGPUToROCDL/permlane-var.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [MLIR][AMDGPU] Add permlane16.var and permlanex16.var intrinsic ops (#199501)

## Summary

Add ROCDL and AMDGPU dialect support for the GFX12+ variable-selector
permlane intrinsics (`v_permlane16_var_b32` / `v_permlanex16_var_b32`).

Unlike the existing fixed-selector `permlane16`/`permlanex16` ops where
source-lane indices come from SGPR immediates, the "var" variants take
per-lane source-lane indices from a VGPR, enabling arbitrary per-lane
intra-row and cross-row permutations within a wave32 subgroup.

### ROCDL dialect
- `ROCDL_Permlane16VarOp` → `llvm.amdgcn.permlane16.var`
- `ROCDL_PermlaneX16VarOp` → `llvm.amdgcn.permlanex16.var`
- Both take `(old, src0, src1, fi, boundControl)` with `fi` and
`boundControl` as immediate i1 attrs

### AMDGPU dialect
- `AMDGPU_PermlaneVarOp` — high-level wrapper supporting arbitrary
int/float/vector types
- `cross` attribute selects between intra-row (`permlane16.var`) and
cross-row (`permlanex16.var`)
- Lowering uses `LLVM::decomposeValue`/`composeValue` to automatically
repack types (f16, i8, vectors, etc.) into i32 register slots

### Tests
- ROCDL roundtrip (parser/printer) tests
- ROCDL → LLVM IR translation tests
- AMDGPU → ROCDL lowering tests covering i32, f32, f16, vector<4xf16>,
cross variants, and fi/bound_ctrl attributes


  Commit: c71f9f0aec3ad789b8a6510a98d3882b3e776a40
      https://github.com/llvm/llvm-project/commit/c71f9f0aec3ad789b8a6510a98d3882b3e776a40
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll

  Log Message:
  -----------
  [LV] Handle loop.dependence.mask in verifyLastActiveLaneRecipe() (#199897)

This verification can be called after the alias-mask has been expanded
so needs to recognize loop.dependence.mask intrinsics.


  Commit: e6fe3f4f55ef7219eac36464724f8ff5c0bc4159
      https://github.com/llvm/llvm-project/commit/e6fe3f4f55ef7219eac36464724f8ff5c0bc4159
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/test/Shell/Commands/command-dil-diagnostics.test
    M lldb/test/Shell/Commands/command-module-hook-fire.test
    M lldb/test/Shell/Commands/process-attach-dummy.test
    M lldb/test/Shell/ObjectFile/MachO/section-overflow-binary.test
    M lldb/unittests/DAP/Handler/DisconnectTest.cpp

  Log Message:
  -----------
  [lldb][test] Require Python for a few more tests (#199913)


  Commit: 2245dd779f8c9815113ae038df61441466b9774e
      https://github.com/llvm/llvm-project/commit/2245dd779f8c9815113ae038df61441466b9774e
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
    M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp

  Log Message:
  -----------
  [clangd] Prefer .hpp files over .h with header source switch (#198152)

Previously, The "Switch Between Source/Header" action picked `.h` over
`.hpp` when both files existed next to a `.cpp` file, because `.h` is
listed first in the header-extension list.

This patch reorders `HeaderExtensions` and `SourceExtensions` so the
`C++`-flavored extensions come before `.h` and `.c`. `C++`-flavor of
file is preffered since (at least in my opinion) more people using
`clangd` for `C++` than `C` with `.hpp` ext so switching from `.cpp`
should go into `.hpp`, not `.h`.

This brings an edje case that when swithing from `.c` it will go into
`.hpp` instead of `.h`, but I think this situation is more rare than
having `.cpp` with `.hpp` and `.h` combination since `.h` headers can be
used as `extern "C"` wrapper of cpp library.


  Commit: 61341994bb456eaf286154f8f241d0d6723df8ea
      https://github.com/llvm/llvm-project/commit/61341994bb456eaf286154f8f241d0d6723df8ea
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-inner-loop-scale.ll

  Log Message:
  -----------
  [SLP][NFC]Add some more tests with phi external uses, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/199919


  Commit: 5bfcf13e48c9a168ff431fa655a41d88c725ca85
      https://github.com/llvm/llvm-project/commit/5bfcf13e48c9a168ff431fa655a41d88c725ca85
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll

  Log Message:
  -----------
  [VPlan] Construct VPlan1 once, share across buildVPlans calls. (#197276)

Extract the VF-independent VPlan1 setup pipeline (header phis,
simplification, early-exit handling, middle check, loop regions, tail
folding, mask introduction) into a new helper tryToBuildVPlan1().

Construct the initial Vlan1 once, and pass to repeated buildVPlans
calls.

Note that this means we need to move collectInLoopReductions up. We not
may construct VPlan1 on code paths where we did not before, because we
failed UserVF validation/selection, but I think that should be fine as
this makes the overall code simpler and the UserVF code paths are for
testing.

PR: https://github.com/llvm/llvm-project/pull/197276


  Commit: bdaf3cfda6d670109058d75aa1de82beffb4c954
      https://github.com/llvm/llvm-project/commit/bdaf3cfda6d670109058d75aa1de82beffb4c954
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fp-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revec-non-power-2-to-power-2-large-vect.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scalarize-ctlz.ll
    M llvm/test/Transforms/SLPVectorizer/X86/select-copyable-cmp-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
    M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll

  Log Message:
  -----------
  [SLP] Improve InsertElement scalarization cost modeling

When costing InsertElement tree entries, pass getScalarizationOverhead the
per-lane insert operands via AdjustedVL, set ForPoisonSrc from whether the
base vector is entirely undef, and supply a VectorInstrContext hint derived
from the demanded insert instructions. Move the scalarization cost adjustment
to after InMask is computed so ForPoisonSrc reflects the actual base vector
state.

Reviewers: bababuck, RKSimon, hiraditya

Pull Request: https://github.com/llvm/llvm-project/pull/199514


  Commit: ed11d7a52a505ff53523c2c635f114d865273f24
      https://github.com/llvm/llvm-project/commit/ed11d7a52a505ff53523c2c635f114d865273f24
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/arm/extendsfdf2.S
    A compiler-rt/lib/builtins/arm/truncdfsf2.S
    A compiler-rt/test/builtins/Unit/extendsfdf2new_test.c
    A compiler-rt/test/builtins/Unit/truncdfsf2new_test.c

  Log Message:
  -----------
  [compiler-rt][ARM] Optimized FP double <-> single conversion (#179926)

This commit provides assembly versions of the conversions both ways
between double and float.


  Commit: 89f024609b13bcbda6ce7b58966fc4fbbca3da70
      https://github.com/llvm/llvm-project/commit/89f024609b13bcbda6ce7b58966fc4fbbca3da70
  Author: Boyao Wang <wangboyao at bytedance.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll

  Log Message:
  -----------
  [RISCV][CodeGen] Use vzip.vv for e64 interleave shuffles with Zvzip (#199923)

Allow e64 interleave shuffles to use the standard Zvzip `vzip.vv`
lowering when the operand type is legal for Zvzip, just the same as what
XrivosVizip already does.


  Commit: cef3e0f1280d9cf368caa94b895b61d73c588619
      https://github.com/llvm/llvm-project/commit/cef3e0f1280d9cf368caa94b895b61d73c588619
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp

  Log Message:
  -----------
  [libc++][C++03] Fix array/size_and_alignment.compile.pass.cpp (#198822)


  Commit: c09041a33a8ac60025538e7ca36b055cadb0d6e1
      https://github.com/llvm/llvm-project/commit/c09041a33a8ac60025538e7ca36b055cadb0d6e1
  Author: Matt Davis <mattd at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/BinaryFormat/Dwarf.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/BinaryFormat/Dwarf.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/dicompileunit.ll
    A llvm/test/Assembler/invalid-dicompileunit-dialect.ll
    A llvm/test/Bitcode/dicompileunit-dialect.ll
    M llvm/test/Bitcode/upgrade-DICompileUnit-no-versioned-language.test
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp

  Log Message:
  -----------
  [DebugInfo] Introduce DW_AT_LLVM_language_dialect (#194898)

This PR introduces an LLVM vendor DWARF attribute on compile units that
carries an optional target-specific language dialect enumerator,
distinct from DW_LANG_*. The intent of this addition is to allow a DWARF
consumer to differentiate the source programming language from the
programming model (e.g., CUDA/SIMT, Tile, etc.). This concept could also
be used to differentiate OpenMP, or other parallel models, from host
language.

As older languages adopt newer programming models, there's no need to
introduce a new language enumerator to encode that representation;
rather, the model can be encoded as a dialect and treated as a
refinement to the source language being compiled. For ease of
extensibility, we've decided to represent the value of this new dialect
attribute as a string.

Code/comments/description were developed with LLM assistance.

---------

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: ef1b6d232216d3c1c8a5742ed1ef926cdd22be39
      https://github.com/llvm/llvm-project/commit/ef1b6d232216d3c1c8a5742ed1ef926cdd22be39
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/IR/FunctionProperties.def
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    A llvm/test/Analysis/FunctionPropertiesAnalysis/func-properties-analysis.ll
    A llvm/test/Analysis/FunctionPropertiesAnalysis/pipeline.ll
    R llvm/test/Analysis/FunctionPropertiesAnalysis/properties-stats.ll

  Log Message:
  -----------
  Add Pre-Optimization FunctionPropertiesStatistics Pass - All Properties (#199293)

Adding a PreOptimization pass for function properties that provides the
statistics preoptimization without leading to timeouts (also thanks to
https://github.com/llvm/llvm-project/pull/198940 and internal changes on the faulty target)

First iteration led to timeouts so it got reverted
https://github.com/llvm/llvm-project/pull/188837
(UPDATE) Through a flame graph proved that changes in
https://github.com/llvm/llvm-project/pull/198940 , mainly the change
inside the loop, was the one responsible for the timeout. Flame graph spent a majority of the time on updateForBB, and it's the only part there could be a blocker. Furthermore, target was fixed internally.

Previous iteration tried to get only some of the statistics, but managed
to prove locally that it's not necessary to distinguish between them
https://github.com/llvm/llvm-project/pull/199073 since the changes mentioned previously were good enough


  Commit: 7de3f46cf771180a4b83eacf3d2218f175f23166
      https://github.com/llvm/llvm-project/commit/7de3f46cf771180a4b83eacf3d2218f175f23166
  Author: Iris Shi <0.0 at owo.li>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstSimplify/call.ll

  Log Message:
  -----------
  [InstSimplify] Fold fshl/fshr of complementary shifts to identity (#196887)


  Commit: f0ae26c925ef85dd1e6f5217afcdb620641e8db5
      https://github.com/llvm/llvm-project/commit/f0ae26c925ef85dd1e6f5217afcdb620641e8db5
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/issue-release-workflow.yml

  Log Message:
  -----------
  workflows/issue-release-workflow: Fix bug when specifying multiple commits (#199973)

All commits after the first one were being dropped in comments like
/cherry-pick <commit> <commit> ...

This was introduced by: 21df17aaaec2dd9dafd641c5dbfd96446c27921b


  Commit: 78f5f7717a2e058c4d685feb3edb7d991efacbc2
      https://github.com/llvm/llvm-project/commit/78f5f7717a2e058c4d685feb3edb7d991efacbc2
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    A llvm/test/CodeGen/PowerPC/ppc-i64-to-fp.ll

  Log Message:
  -----------
  [PowerPC] Drop invalid range metadata when lowering i64 load to fp in INT_TO_FP (#198705)

When lowering an i64 load in LowerINT_TO_FP, we were forwarding the
original !range metadata to a new f64 load. This is invalid because the
metadata no longer matches the value type/semantics, and can trigger
assertions when lowering i64 to fp (double or float) conversions.

This patch fixes this by passing a nullptr for the Ranges operand when
calling getLoad() and adds extra test cases to cover signed/unsigned i64
to f32/f64 conversions and to ensure they do not assert when the !range
metadata is present.

The assertion this patch attempts to fix is:
```
Assertion failed: (!MMO->getRanges() || (mdconst::extract<ConstantInt>(MMO->getRanges()->getOperand(0)) ->getBitWidth() == MemVT.getScalarSizeInBits() && MemVT.isInteger())) && "Range metadata and load type must match!"
```
This assert was originally seen when building Rust on AIX.


  Commit: 1e1a1ff8a6c6d9bc7f0044c79c6cfe0819246e00
      https://github.com/llvm/llvm-project/commit/1e1a1ff8a6c6d9bc7f0044c79c6cfe0819246e00
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/release-binaries-all.yml

  Log Message:
  -----------
  workflows/release-binaries-all: Validate input and remove template expansion (#199427)

https://github.com/llvm/llvm-project/security/code-scanning/1695


  Commit: 81c523c71c92bea4c5548b5f84288acd0f05db42
      https://github.com/llvm/llvm-project/commit/81c523c71c92bea4c5548b5f84288acd0f05db42
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
    M clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
    A clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
    R clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
    M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp

  Log Message:
  -----------
  Reapply "[clang][ssaf][NFC] Rework how the Force linker anchors are defined and used" (#194693)

This reverts commit 582958c4337f539e650096c0257a322315298e1a.

Drop "const" from these anchor variables - like they are in clang-tidy

Turns out, MSVC likely doesn't conform with the C++ standard and makes
`const volatile` global variables have *internal* linkage - while they
should have *external* linkage.

https://eel.is/c++draft/basic.link#3.2
```
(3) The name of an entity that belongs to a namespace scope has internal linkage if it is the name of
(3.1) a variable, variable template, function, or function template that is explicitly declared static; or
(3.2) a non-template variable of non-volatile const-qualified type, unless
(3.2.1) it is declared in the purview of a module interface unit (outside the private-module-fragment, if any) or module partition, or
(3.2.2) it is explicitly declared extern, or
(3.2.3) it is inline, or
(3.2.4) it was previously declared and the prior declaration did not have internal linkage; or
```

Consequently, `const volatile` globals should NOT have *internal*
linkage, because `volatile` variables are exempt by (3.2).


  Commit: 58156c21585ab05d7810666070020919342757bf
      https://github.com/llvm/llvm-project/commit/58156c21585ab05d7810666070020919342757bf
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Fix typo in StepInTarget serialization (#199907)

I fixed small typo and added test for that.


  Commit: f56774213bf4da41882a468ef8b9f4b44a52ec1d
      https://github.com/llvm/llvm-project/commit/f56774213bf4da41882a468ef8b9f4b44a52ec1d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclCXX.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/Modules/cxx-templates.cpp

  Log Message:
  -----------
  [clang] fix finding class template instantiation pattern for member specializations (#199979)

Stop treating the member which a member specialization specializes as
the pattern of the former.

Split off from https://github.com/llvm/llvm-project/pull/199528


  Commit: 7664fc742fa6402e7b79645e87c83c6681ab0ac9
      https://github.com/llvm/llvm-project/commit/7664fc742fa6402e7b79645e87c83c6681ab0ac9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M offload/liboffload/CMakeLists.txt
    M offload/libomptarget/CMakeLists.txt

  Log Message:
  -----------
  [Offload] Fix missing SONAME version on offload libraries (#199975)


  Commit: f55acff22c4185418e2057a90c22826d3e947f73
      https://github.com/llvm/llvm-project/commit/f55acff22c4185418e2057a90c22826d3e947f73
  Author: amachronic <amachronic at protonmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lld/ELF/Writer.cpp
    A lld/test/ELF/linkerscript/overlap-nobits.s

  Log Message:
  -----------
  [lld][ELF] Exclude SHT_NOBITS sections from LMA overlap checks (#196423)

In embedded applications it's sometimes useful to load a section at the
same virtual address as the .bss section. For example, one possible use
case is for temporary code/data that is only needed for a short time
when the program is starting up:

    REGIONS {
        RAM  : ORIGIN = 0x100000, LENGTH = 1M
        INIT : ORIGIN = 0x200000, LENGTH = 1M
    }

    .text { *(.text); } > RAM
    .bss (NOLOAD) : { *(.bss); } > RAM
    .init : AT(LOADADDR(.bss)) { *(.init); } > INIT

The .init section gets placed in the file immediately after the .text
section. At startup the .init section contents are copied to the INIT
region before zeroing .bss. Once the .init section is no longer needed
its memory can be reused, eg. as heap memory.

Currently, lld does not support this and prints an error because the
LMAs of .bss and .init overlap. There are two workarounds:

1. Use --no-check-sections to disable all overlap checks, but this also
disables VMA and file offset checks, which might not be desired.
2. Assign a fake LMA to the .bss section, which doesn't overlap with the
LMA of any other section. However, this is not very intuitive and
affects the generated program headers (because a second Phdr is needed
now that .bss has a unique p_paddr), which might not be acceptable.

These ugly workarounds can be avoided by ignoring LMA overlaps involving
SHT_NOBITS sections. This is also what binutils does, which is why the
example above works under GNU ld.


  Commit: 9e279e4757b5dd190b708bfffff2fe16553cc837
      https://github.com/llvm/llvm-project/commit/9e279e4757b5dd190b708bfffff2fe16553cc837
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] vector-shuffle-combining-avx512vbmi2.ll - add VLX/NOVLX test coverage (#199984)


  Commit: d25ec4b8448767d33330b66805f876355b948efe
      https://github.com/llvm/llvm-project/commit/d25ec4b8448767d33330b66805f876355b948efe
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvbdota.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/rvv/zvfbdota32f-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfbdota32f.s
    A llvm/test/MC/RISCV/rvv/zvfqwbdota8f-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfqwbdota8f.s
    A llvm/test/MC/RISCV/rvv/zvfwbdota16bf-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfwbdota16bf.s
    A llvm/test/MC/RISCV/rvv/zvqwbdota-invalid.s
    A llvm/test/MC/RISCV/rvv/zvqwbdota.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [llvm][RISCV] Support batched dot product extensions MC layer (#196467)

spec:

https://github.com/aswaterman/riscv-misc/blob/main/isa/ldot-bdot/ldot-bdot.adoc#zvdota-and-zvbdota-families-of-dot-product-extensions-version-02


  Commit: 9757718b591fed23f5b38afeb5d2849199d1e241
      https://github.com/llvm/llvm-project/commit/9757718b591fed23f5b38afeb5d2849199d1e241
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 81c523c (#199988)

This fixes 81c523c71c92bea4c5548b5f84288acd0f05db42.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 6170eeb1fa8198f00ec6517f031f1e12b5752b8d
      https://github.com/llvm/llvm-project/commit/6170eeb1fa8198f00ec6517f031f1e12b5752b8d
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    A flang/test/Lower/OpenMP/copyprivate6.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix copyprivate crash with unlimited polymorphic pointer (#199768)

Lowering a copyprivate clause whose list item is an unlimited
polymorphic pointer (class(*), pointer) crashed in TypeInfo::typeScan.
The scan descends through the fir.class box and the fir.ptr, reaching a
`none` element type, which the terminal assertion did not allow.

Fixes #198770


  Commit: c0a302d416aaa94b560793477ebecc8e273c8a76
      https://github.com/llvm/llvm-project/commit/c0a302d416aaa94b560793477ebecc8e273c8a76
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp

  Log Message:
  -----------
  [AMDGPU] Refactor insertRelease into insertWriteback + insertWait (NFC) (#199486)

A release consists of two actions: write-back the current cache, and
wait for "relevant" outstanding operations to complete. With the new
memory model, it is possible to disable the cache write-back using
"non-av". This patch cleanly separates the existing implementation so
that the write-backs can be selectively applied after checking for
non-av semantics.

Part of a stack:

- #199486
- #199621
- #199489 
- #199622

Assisted-By: Claude Opus 4.6

---------

Co-authored-by: Pierre van Houtryve <pierre.vanhoutryve at amd.com>


  Commit: 6cb00b6c344cb6d61688cc993b15ee531dbfd0e4
      https://github.com/llvm/llvm-project/commit/6cb00b6c344cb6d61688cc993b15ee531dbfd0e4
  Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/test/CodeGen/Hexagon/inst_masked_store_bug1.ll
    M llvm/test/CodeGen/Hexagon/isel-hvx-pred-bitcast-order.ll

  Log Message:
  -----------
  [Hexagon] Fix up vector predicate before compressing it for bitcast (#199283)

In v64i1 vector Predicate, each i1 is represented by 2 bits of predicate
register. A predicate register needs to be fixed before we compress it.

Signed-off-by: Alexey Karyakin <akaryaki at qti.qualcomm.com>
Co-authored-by: Ikhlas Ajbar <iajbar at quicinc.com>


  Commit: dcf50fe35fd0760325c24ac78e43a90e61a95337
      https://github.com/llvm/llvm-project/commit/dcf50fe35fd0760325c24ac78e43a90e61a95337
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    A llvm/test/CodeGen/SystemZ/foldmem-regalloc.mir
    M llvm/test/CodeGen/SystemZ/foldmemop-global.mir

  Log Message:
  -----------
  [SystemZ] Don't fold memops after SSA if tied regs don't match. (#197475)

When foldMemoryOperandImpl() is called during register allocation,
folding into a reg/mem opcode mustn't be done if the tied def and use
operands do not end up referencing the same register.

Fixes #197414


  Commit: 3e8c217c6829b7acebb0f80bfcd2f807d370000e
      https://github.com/llvm/llvm-project/commit/3e8c217c6829b7acebb0f80bfcd2f807d370000e
  Author: Wooseok Lee <wolee at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    A llvm/test/CodeGen/AMDGPU/fshl-scalar-shift-zero.ll

  Log Message:
  -----------
  [AMDGPU] Fix ShiftAmt32Imm to use unsigned comparison (#199052)

ShiftAmt32Imm used a signed 'Imm < 32' predicate, which incorrectly
matched negative immediates such as -1. The scalar fshr fast path:
    
      def : GCNPat<(UniformTernaryFrag<fshr> i32:$src0, i32:$src1,
                                             (i32 ShiftAmt32Imm:$src2)),
        (i32 (EXTRACT_SUBREG (S_LSHR_B64 ..., $src2), sub0))>;
    
When fshl(scalar, X, Z) is lowered via expandFunnelShift for any
constant Z in [0, 31], the generic code converts it to fshr(..., ~Z) or
fshr(..., -Z), producing a negative shift amount. Because all such
values satisfy Imm < 32 in a signed comparison, ShiftAmt32Imm matched
and the pattern passed the negative immediate directly to S_LSHR_B64
without the S_AND_B32 masking. S_LSHR_B64 then shifted by the wrong
amount, producing an incorrect result.
    
Fix by changing the predicate to an unsigned comparison so that only
values in [0, 31] match, and negative values fall through to the general
pattern which correctly applies S_AND_B32 before S_LSHR_B64.
    
Fixes miscompilations of scalar fshl with any constant shift amount at
-O0 on AMDGPU targets, covering both fshl(scalar, const, Z) and
fshl(scalar, scalar, Z) for all Z in [0, 31].

---------

Co-authored-by: Claude Sonnet 4 <noreply at anthropic.com>


  Commit: bf8dae18aa318aac5558a38ce34c696c569feacf
      https://github.com/llvm/llvm-project/commit/bf8dae18aa318aac5558a38ce34c696c569feacf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    A llvm/test/Transforms/InstCombine/trunc-abs-intrinsics.ll

  Log Message:
  -----------
  [InstCombine] Narrow llvm.abs through trunc. (#199643)

Update EvaluateInDifferentType / canEvaluateTruncated to narrow abs
intrinsics when the operand has at least OrigBitWidth - BitWidth + 1
sign bits. The transform always emits the narrow abs with
IsIntMinPoison=false, as the narrowed value may be INT_MIN in the narrow
type, while not in the original width.

Alive2 Proof with weaker precondition (top and truncated sign bits must
match): https://alive2.llvm.org/ce/z/AMQRmi

End-to-end C pixel math example: https://clang.godbolt.org/z/Ma8bsTGTY

PR: https://github.com/llvm/llvm-project/pull/199643


  Commit: e5ad7f7e700ea839896b5ece924ef13acf573833
      https://github.com/llvm/llvm-project/commit/e5ad7f7e700ea839896b5ece924ef13acf573833
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Semantics/OpenMP/declare-simd-uniform.f90

  Log Message:
  -----------
  [flang][OpenMP] Remove ompFlagsRequireMark from symbol resolution (#198591)

The `ompFlagsRequireMark` set was there to make sure that we put the
flags from it on symbols even when no new symbols needed to be created.

Instead of doing that, we can just put the flag on the symbol every
time. There is no harm in having these flags, it's just extra
information.


  Commit: 06a6cbb188468563f5e89932a4ec8386bb977bd9
      https://github.com/llvm/llvm-project/commit/06a6cbb188468563f5e89932a4ec8386bb977bd9
  Author: Stefan Schuermans <schuermans at roofline.ai>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp

  Log Message:
  -----------
  [AMDGPU] Fix SuperReg to MCRegister conversion (#199993)

This is a fix for "[AMDGPU] Implement CFI for non-kernel functions
(#183153)" f78a233ac89dc0f9f0f26dfe051874013ae6e242 to use
"SuperReg.asMCReg()" instead of "MCRegister(SuperReg)", which leads to
"ambiguous call" when using the MSVC compiler.


  Commit: b65a71d4942abcdf17510e1cf5c4e9273d60aa72
      https://github.com/llvm/llvm-project/commit/b65a71d4942abcdf17510e1cf5c4e9273d60aa72
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    A utils/bazel/llvm-project-overlay/libc/test/src/__support/threads/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Add rules for __support/threads tests. (#199871)

* Add Bazel BUILD rules for three `__support/threads` unit tests.
* Fix/expand BUILD rules for the support libraries they depend on
(clock_gettime and vdso) that were previously incorrectly missing `.cpp`
files with implementations.
* Minor fix to use `internal::exit` in `raw_mutex_test` to avoid adding
a dependency on `exit` entrypoint, which doesn't yet exist in Bazel.

Assisted by: Gemini


  Commit: dd2ce3d8b558daefbbc6eb2f2026e6055a291f06
      https://github.com/llvm/llvm-project/commit/dd2ce3d8b558daefbbc6eb2f2026e6055a291f06
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [LLVM] Add per-target runtime directory to rpath (#199755)

Summary:
    This simply adds the LLVM_DEFAULT_TARGET_TRIPLE to the LLVM build's
rpath if present. This keeps things hermetic for the library (offload)
    that depends on it.
    
  The reason this is required is because `llvm-gpu-loader` calls
`DynamicLibrary` on the Offload runtime. However, in a shared library
build the actual call is in libLLVMSupport.so, which does not have this
RPath, so `dlopen` delegates to that which does not know how to find it.
The only options to fix this are to use `dlopen` directly in the loader,
    or add the rpath to the LLVM binaries.
    
I think this makes sense for LLVM, because the target-specific directory
    can contain LLVM related libraries.


  Commit: 97b9c24cb9f2e46ce917bf2e5aea5d4511ae8298
      https://github.com/llvm/llvm-project/commit/97b9c24cb9f2e46ce917bf2e5aea5d4511ae8298
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/include/__functional/function.h
    A libcxx/test/libcxx/utilities/function.objects/block.func.compile.pass.cpp

  Log Message:
  -----------
  Add missing annotations for Apple platforms (#198864)

These seemed to be missed in #193045.


  Commit: c3fc506e29badb9ed4729432b25c62eb04ced1ca
      https://github.com/llvm/llvm-project/commit/c3fc506e29badb9ed4729432b25c62eb04ced1ca
  Author: Adel Ejjeh <adel.ejjeh at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Remove explicit PartialThreshold setting in loop unrolling (#198901)

Remove UP.PartialThreshold = UP.Threshold / 4 from AMDGPU TTI, restoring
the default PartialThreshold of 150.

This was introduced in #194924 to limit code-size growth from runtime
unrolling, but PartialThreshold also gates compile-time partial
unrolling of constant-trip-count loops. This change will make the
PartialThreshold back to the default value for both compile-time partial
unrolling and runtime partial unrolling.

Benchmarked across CK, llama.cpp, and xpu-perf — no performance impact
from restoring the default.

Fixes #196372, replaces #196818.

Assisted-by: Claude Code


  Commit: a3acd8083c3b5a98e8c5bb0d7f7ac4a959c58307
      https://github.com/llvm/llvm-project/commit/a3acd8083c3b5a98e8c5bb0d7f7ac4a959c58307
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Propagate layout onto loop-carried iter_arg entry edges (#198862)

as per title


  Commit: 358f5e770361c0512b7f6e4027a3a674bb1fa654
      https://github.com/llvm/llvm-project/commit/358f5e770361c0512b7f6e4027a3a674bb1fa654
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td

  Log Message:
  -----------
  [RISCV][P-ext] Add missing let Inst{31} = 0b0 to RVPPairShift_rr. (#199885)

This bit was accidentally left unset. I think this means we might have
treated this bit as a don't care for the disassembler could disassemble
some invalid encodings to these instructions. I didn't check the opcode
map closely enough to confirm this.


  Commit: 38555dbd81ad2dcfc452d29151299d829095258b
      https://github.com/llvm/llvm-project/commit/38555dbd81ad2dcfc452d29151299d829095258b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td

  Log Message:
  -----------
  [RISCV][P-ext] Replace some custom isel code with tablegen patterns. NFC (#199881)


  Commit: 95f08b1b743d2d5b694c71b00becd3acd0c7926a
      https://github.com/llvm/llvm-project/commit/95f08b1b743d2d5b694c71b00becd3acd0c7926a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td

  Log Message:
  -----------
  [RISCV][P-ext] Make the direction argument for RVPPairShift* classes required. NFC (#199799)

It's part of the encoding. I don't think we should have a preference for
one of the bit values being the default.


  Commit: 3768e13298071781807b5d1371ebd8052d948b89
      https://github.com/llvm/llvm-project/commit/3768e13298071781807b5d1371ebd8052d948b89
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] Add test coverage for #145276 (#200004)


  Commit: ea3cb0fef9703c41a321a06a666636d871a670f6
      https://github.com/llvm/llvm-project/commit/ea3cb0fef9703c41a321a06a666636d871a670f6
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp

  Log Message:
  -----------
  Fix for noassert buildbot break in #183153 (#199781)

Change-Id: I285adf09ac2df239d0ab05459f7388b6970247ad


  Commit: db9b595ae3b30d67bd4068f80c651f97eb4dea2d
      https://github.com/llvm/llvm-project/commit/db9b595ae3b30d67bd4068f80c651f97eb4dea2d
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    A llvm/test/DebugInfo/COFF/apx-egpr.ll

  Log Message:
  -----------
  [X86][APX] Add CodeView register IDs and mapping for APX EGPR (#199586)

Resolves #187924

Refer to
https://devblogs.microsoft.com/cppblog/msvc-version-1451-available/


  Commit: 2713d9441cfd5fc9e4ad9cf5520add6ae6cce6c4
      https://github.com/llvm/llvm-project/commit/2713d9441cfd5fc9e4ad9cf5520add6ae6cce6c4
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/docs/SandboxIR.md
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  Reapply "[SandboxIR][Tracker] Implement accept(/*AcceptAll*/) and revert(/*RevertAll*/)" (#199776) (#199805)

This reverts commit a7aceff0b1e552cbc2306e575e9ac649853fda8e.


  Commit: e1e52c9ccef39f4ccc55e1e89c5d2957ec186a47
      https://github.com/llvm/llvm-project/commit/e1e52c9ccef39f4ccc55e1e89c5d2957ec186a47
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/Support/Win64EH.h
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/Win64EH.cpp
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-all-wods.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-apx.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-inherit.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-opcode.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-push-consecutive-2.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-basic.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-chain.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-distinct-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog-flags.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog-large.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-handler-odd-payload.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-handler.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-large.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-multi-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-neg-offset.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-pool-overflow.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-reloc.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-all-wods.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-apx.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-bad-inherit.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-bad-opcode.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-basic.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-chain.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-distinct-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-epilog-flags.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-handler.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-multi-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-neg-offset.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-pool-overflow.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-reloc.yaml
    M llvm/tools/llvm-objdump/COFFDump.cpp
    M llvm/tools/llvm-objdump/ObjdumpOpts.td
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-objdump/llvm-objdump.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/Win64EHDumper.cpp
    M llvm/tools/llvm-readobj/Win64EHDumper.h
    M llvm/tools/llvm-readobj/llvm-readobj.cpp
    M llvm/tools/llvm-readobj/llvm-readobj.h

  Log Message:
  -----------
  [win][x64] Updated `llvm-objdump` and `llvm-readobj` to be able to dump Windows x64 Unwind v3 information. (#199120)

Public docs:
<https://learn.microsoft.com/en-us/cpp/build/x64-unwind-information-v3?view=msvc-170>

The change adds Windows x64 unwind v3 info decoding and printing support
in LLVM, including new data structures, enums, and decoding functions to
handle the different WOD opcodes and epilog descriptors. It also updates
the dumping utilities (llvm-readobj and llvm-objdump) to correctly
interpret v3 unwind info.


  Commit: 860e4b803e91595063a7b438f91e45792cf010cf
      https://github.com/llvm/llvm-project/commit/860e4b803e91595063a7b438f91e45792cf010cf
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
    M llvm/test/CodeGen/X86/avoid-sfb.ll

  Log Message:
  -----------
  [X86][AvoidStoreForwardingBlocks] Skip volatile/atomic accesses. (#199698)

The pass splits an XMM/YMM load+store pair into smaller copies when a
preceding narrower store would block store-to-load forwarding into the
load, but it didn't check the MachineMemOperand's isVolatile/isAtomic
bits.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 7b993d207fee1e2160cbd20469f3cce73f27fce9
      https://github.com/llvm/llvm-project/commit/7b993d207fee1e2160cbd20469f3cce73f27fce9
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/ldexp.ll

  Log Message:
  -----------
  [InstCombine] Use sadd.sat for chained ldexp fold (#199274)

ldexp(ldexp(x, a), b) -> ldexp(x, a + b) didn't consider the fact that
`a + b` may overflow!  Use a saturating add instead.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: d98fd416e0ee358d0748b743f29d68f114dcfebc
      https://github.com/llvm/llvm-project/commit/d98fd416e0ee358d0748b743f29d68f114dcfebc
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    A llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fpto-sat-vector.ll

  Log Message:
  -----------
  [ExpandIRInsts] Support llvm.fpto{u,s}i.sat (#199174)

Previously, running ExpandIRInsts on a program which needs to expand a
vector fptoui.sat would hit llvm_unreachable, because the `scalarize`
function didn't handle this intrinsic.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 00b13536e3dad6c0d5e3bd54f49791c2a06707cc
      https://github.com/llvm/llvm-project/commit/00b13536e3dad6c0d5e3bd54f49791c2a06707cc
  Author: Sunil Shrestha <sunil.shrestha at hpe.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/include/flang/Lower/ConvertVariable.h
    M flang/include/flang/Lower/Support/PrivateReductionUtils.h
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/Support/PrivateReductionUtils.cpp
    M flang/test/Lower/OpenMP/Todo/omp-declare-reduction-advanced-types.f90
    M flang/test/Lower/OpenMP/Todo/reduction-character-dynamic-length.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-derived.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-intrinsic.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-target-derived.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-unsupported.f90
    A flang/test/Lower/OpenMP/declare-reduction-target-intrinsic.f90

  Log Message:
  -----------
  [Flang][OpenMP] Support declare reduction without initializer (#196211)

For declare reduction without an explicit initializer clause, the init
callback now handles initialization inline rather than relying on the
_FortranAInitialize runtime call, which is available on the device
runtime but has known issues on GPU targets.

The initialization logic first checks whether an initializer clause is
present. If one is provided, it is used directly. Otherwise, for derived
types, the code checks whether the type has default component
initialization. If it does, each component is initialized inline:
components with explicit default values use those values, components
that are themselves derived types with defaults are recursively
initialized, and components without any default are zero-initialized.

Derived types with allocatable components that require runtime
initialization are guarded by a TODO.

Assisted by: Claude Opus 4.6


  Commit: a1cba5a2f8e973fbdf20e20079fab0ce924b7ece
      https://github.com/llvm/llvm-project/commit/a1cba5a2f8e973fbdf20e20079fab0ce924b7ece
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP] Optionally get final symbol in Get(Argument|Object)Sy… (#196816)

…mbol

Originally these functions returned the ultimate symbol for the one
obtained from the argument or object. However, this may be somewhat
unintuitive/unexpected, so instead return the original symbol, and add a
flag to optionally return the ultimate one.


  Commit: 077210a3b1a50ef7145d405b08d676e8879d0d51
      https://github.com/llvm/llvm-project/commit/077210a3b1a50ef7145d405b08d676e8879d0d51
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#200011)

0d6aac78ad96
7938535a54b5
ed11d7a52a50


  Commit: 7a1a5421b1a1c32944906c3e7157b809528859e3
      https://github.com/llvm/llvm-project/commit/7a1a5421b1a1c32944906c3e7157b809528859e3
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/release-documentation.yml

  Log Message:
  -----------
  workflows/release-documentation: Validate input and remove template expansion (#199760)

https://github.com/llvm/llvm-project/security/code-scanning/1715
https://github.com/llvm/llvm-project/security/code-scanning/1716
https://github.com/llvm/llvm-project/security/code-scanning/1717
https://github.com/llvm/llvm-project/security/code-scanning/1718
https://github.com/llvm/llvm-project/security/code-scanning/1719
https://github.com/llvm/llvm-project/security/code-scanning/1720
https://github.com/llvm/llvm-project/security/code-scanning/1721
https://github.com/llvm/llvm-project/security/code-scanning/1722


  Commit: f6af6cedfd2fa731bf323608116d373379838b9a
      https://github.com/llvm/llvm-project/commit/f6af6cedfd2fa731bf323608116d373379838b9a
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/libclang-abi-tests.yml

  Log Message:
  -----------
  workflows/libclang-abi-tests: Remove template expansion (#199792)

https://github.com/llvm/llvm-project/security/code-scanning/1627
https://github.com/llvm/llvm-project/security/code-scanning/1628
https://github.com/llvm/llvm-project/security/code-scanning/1629
https://github.com/llvm/llvm-project/security/code-scanning/1630
https://github.com/llvm/llvm-project/security/code-scanning/1631
https://github.com/llvm/llvm-project/security/code-scanning/1632
https://github.com/llvm/llvm-project/security/code-scanning/1633
https://github.com/llvm/llvm-project/security/code-scanning/1634
https://github.com/llvm/llvm-project/security/code-scanning/1635
https://github.com/llvm/llvm-project/security/code-scanning/1636
https://github.com/llvm/llvm-project/security/code-scanning/1637
https://github.com/llvm/llvm-project/security/code-scanning/1638


  Commit: 82755077b73980eb56efb44246190135d2feb935
      https://github.com/llvm/llvm-project/commit/82755077b73980eb56efb44246190135d2feb935
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Fix #199174 (#200013)

The patch added another large fp conversion test, which we currently are
missing some profile annotations for, so add it to the xfail list for
now.


  Commit: ed918c1496d56f5124c20a2f4f450ba439aeb68e
      https://github.com/llvm/llvm-project/commit/ed918c1496d56f5124c20a2f4f450ba439aeb68e
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    A llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-widen-volatile.ll

  Log Message:
  -----------
  [AtomicExpand] Preserve volatile in widenPartwordAtomicRMW. (#199722)

widenPartwordAtomicRMW widens a sub-word atomicrmw to the target's
minimum cmpxchg size by calling CreateAtomicRMW, which has no
IsVolatile parameter, and didn't copy isVolatile() from the original.
Every other expansion path in this file already does.  Affects targets
whose MinCmpXchgSizeInBits exceeds the value width (RISC-V without
Zabha, LoongArch base, SPARC, AMDGPU, etc.).

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 5b38edd3723a790b02d0d43b6f499c99b313a946
      https://github.com/llvm/llvm-project/commit/5b38edd3723a790b02d0d43b6f499c99b313a946
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/pr-code-lint.yml

  Log Message:
  -----------
  workflows/pr-code-lint: Pin container image (#199767)

https://github.com/llvm/llvm-project/security/code-scanning/1678


  Commit: a8e1f5c475abb48ade1059bc42591a84da56d25b
      https://github.com/llvm/llvm-project/commit/a8e1f5c475abb48ade1059bc42591a84da56d25b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake
    M flang-rt/include/flang-rt/runtime/io-stmt.h
    M flang-rt/lib/runtime/CMakeLists.txt
    M flang-rt/lib/runtime/io-api-common.h
    A flang-rt/lib/runtime/io-stmt-minimal.cpp

  Log Message:
  -----------
  [flang-rt][cuda] Use a thinner I/O in CUDA build (#199769)

Reduce the footprint of IO in the CUDA build. This helps including IO
when using non relocatable device code mode.


  Commit: f16c0ecf2a0bc2fa9253bb73d54a8d791037d741
      https://github.com/llvm/llvm-project/commit/f16c0ecf2a0bc2fa9253bb73d54a8d791037d741
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M .github/workflows/issue-release-workflow.yml

  Log Message:
  -----------
  workflows/issue-release-workflow: Remove template expansion of login names (#199772)

https://github.com/llvm/llvm-project/security/code-scanning/1609
https://github.com/llvm/llvm-project/security/code-scanning/1610


  Commit: 5dc633bc765a6c5a4049b827f8fc0d43d1eff51a
      https://github.com/llvm/llvm-project/commit/5dc633bc765a6c5a4049b827f8fc0d43d1eff51a
  Author: David Green <david.green at arm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/bf16-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fneg.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add BF16 fabs and fneg (#198655)

These should be very simple as they are just legal or expanded based on
whether fullfp16 is available, as the FP16 FNEG and FABS instructions can
be used equally for BF16.


  Commit: f8bf8af12c810434ca1d947aeb9bcae99bbbf135
      https://github.com/llvm/llvm-project/commit/f8bf8af12c810434ca1d947aeb9bcae99bbbf135
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/Headers/wasm_simd128.h
    M cross-project-tests/intrinsic-header-tests/wasm_simd128.c

  Log Message:
  -----------
  [WebAssembly] Add f16x8.demote_f32x4_zero to wasm_simd128.h. (#199795)

Missing header intrinsic.


  Commit: d6279249920562e28cdd1fe4058451fb1d909241
      https://github.com/llvm/llvm-project/commit/d6279249920562e28cdd1fe4058451fb1d909241
  Author: fzi-haxel <61409998+fzi-haxel at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M mlir/lib/Analysis/SliceAnalysis.cpp
    M mlir/test/Dialect/Affine/slicing-utils.mlir

  Log Message:
  -----------
  [mlir][SliceAnalysis] Fix visited set to avoid infinite recursion  (#200008)

Fixes #139694, which introduced use-def cycle detection during slice
analysis, but some cycles were still not detected, potentially leading
to infinite recursion.

This PR fixes the handling of the visited set, which tracks the current
DFS path during recursion. Previously, the set could fail to detect
double cycles because entries were erased even when no recursive call
was made. The insert/erase operations are now only performed when
recursion actually occurs, ensuring that cycle detection correctly
reflects the active DFS path.


  Commit: 3a8b5e3bb1ae8f1d7f579b6ace900f1af596d48f
      https://github.com/llvm/llvm-project/commit/3a8b5e3bb1ae8f1d7f579b6ace900f1af596d48f
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/OutputRedirector.cpp
    M lldb/tools/lldb-dap/OutputRedirector.h

  Log Message:
  -----------
  [lldb-dap] Use MainLoop instead of a background thread in OutputRedirector. (#199970)

Replace the background thread in OutputRedirector with LLDB's MainLoop
event loop. This reduces the number of threads created and ensures file
descriptors are properly closed when no longer needed.

Since debugger's output is not I/O intensive, there is no risk of
hitting the pipe buffer limit with this approach.


  Commit: 0d8ba697df747b2aa0df3abbf11ec54e6c61e1b5
      https://github.com/llvm/llvm-project/commit/0d8ba697df747b2aa0df3abbf11ec54e6c61e1b5
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M utils/bazel/.bazelrc
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock

  Log Message:
  -----------
  [bazel] Add config for hermetic clang toolchain (#192528)

This config uses the https://github.com/hermeticbuild/hermetic-llvm
toolchain to avoid any dependency on the host compiler. This makes it
trivial to test with remote execution and also supports cross
compilation.


  Commit: a3d935402420d0ec1f91a37a8fc85bf4ea166f74
      https://github.com/llvm/llvm-project/commit/a3d935402420d0ec1f91a37a8fc85bf4ea166f74
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineMemOperand.h
    A llvm/test/CodeGen/X86/branchfolding-atomic-mmo.ll

  Log Message:
  -----------
  [CodeGen] Compare MMO atomic ordering and syncscope. (#199892)

MachineMemOperand::operator== compared the address, flags, AA metadata,
range, alignment, and address space, but not atomic success ordering,
failure ordering, or syncscope. Users such as
MachineInstr::cloneMergedMemRefs could therefore treat atomic and
non-atomic MMOs, or atomics with different syncscopes, as identical.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: f828c0e39fca240c3599089afdafa1cab47eadbb
      https://github.com/llvm/llvm-project/commit/f828c0e39fca240c3599089afdafa1cab47eadbb
  Author: adams381 <adams at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp

  Log Message:
  -----------
  [CIR] Report NYI for STDC FENV_ACCESS under -fclangir

Functions that enable IEEE floating-point intrinsics via `#pragma STDC
FENV_ACCESS ON` or `__attribute__((strict_fp))` set `UsesFPIntrin()` /
`StrictFPAttr` on the `FunctionDecl`. CIR doesn't support the
FP-constrained dialect ops needed to lower such functions correctly, so
`generateCode` now reports `errorNYI` and returns early when either flag
is set, preventing silent miscompilation.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: c8efcf55ee47bb04e4539a802e656be89f08099f
      https://github.com/llvm/llvm-project/commit/c8efcf55ee47bb04e4539a802e656be89f08099f
  Author: Vir Patel <142122453+virsworld at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/include/flang/Common/Fortran-consts.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/type.cpp
    M flang/lib/Support/Fortran.cpp
    A flang/test/Semantics/PowerPC/ppc-vector-diagnostics.f90

  Log Message:
  -----------
  [flang][PPC] Improve vector type names in expression diagnostics (NFC) (#199383)

Continuation of #197821 
The change only affects vector types; all other types preserve their
existing formatting behavior.

Co-authored-by: virsworld <virpatel at mac.home>


  Commit: 8f03570e7d047bb83c77421360b831f366e7dcea
      https://github.com/llvm/llvm-project/commit/8f03570e7d047bb83c77421360b831f366e7dcea
  Author: carlobertolli <carlo.bertolli at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll

  Log Message:
  -----------
  [AMDGPU] Add regression test for wave.reduce constant folding. (#198673)

Ensure wave.reduce.xor, wave.reduce.add, and wave.reduce.sub with
constant operands are not folded to the input value, since their results
depend on the number of active lanes at runtime.

Assisted-by: Cursor (Claude)


  Commit: 34d5523eaa8f72c3eb56137ac13789d70640a49c
      https://github.com/llvm/llvm-project/commit/34d5523eaa8f72c3eb56137ac13789d70640a49c
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/test/Driver/msvc-link.c

  Log Message:
  -----------
  [Driver][MSVC] Loosen regex for binary name in test (#200015)

`lld-link` will often be installed as `lld-link.exe` on windows. We need
to make sure this test passes either way.


  Commit: 6c9225f1d1e2b0b49ac3a53913be7ccda9c6243b
      https://github.com/llvm/llvm-project/commit/6c9225f1d1e2b0b49ac3a53913be7ccda9c6243b
  Author: Ben Langmuir <blangmuir at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Basic/FileManager.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/unittests/Basic/FileManagerTest.cpp

  Log Message:
  -----------
  Reapply "[clang] Use FileError in FileManager::getFileRef, getDirectoryRef" (#199759)

Most callers are unchanged, since they either ignore the specific error
or have their own formatting of the error that includes both the path
and the errorToErrorCode-unwrapped value. However, for clients that just
forward the error it's helpful to ensure we do not lose track of the
filename that the error is associated with, so use FileError.

To reduce the overhead of using FileError, keep it only in the public
getFileRef and getDirectoryRef themselves, and use ErrorOr in the
implementation. For callers of getOptional* this should avoid
allocations for errors entirely, and for callers of getFileRef and
getDirectoryRef it makes the error allocation inlinable, which may (in
theory, not tested) let us optimize it away if the Error is immediately
unwrapped back to an error code, for example.

Incidentally clean up some callers to use getOptionalFileRef where they
throw away the error immediately.


  Commit: 2b3bc03b5ef00e7eaa245420ca981c700e1c05c4
      https://github.com/llvm/llvm-project/commit/2b3bc03b5ef00e7eaa245420ca981c700e1c05c4
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/test/CodeGen/AMDGPU/arbitrary-fp-to-float.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/true16-imm-folded-to-0-regression.ll
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt

  Log Message:
  -----------
  [AMDGPU] Use shorter form for i16 operands (#198005)

For 16-bit operands an inline constant is zero extended
which in particular allows to use FP constants. These
will have 16 bits of zeroes in the high half and FP16
value in the low 16 bits.

The patch changes semantics of the FP literal argument
used in i16 context in the asm parser to fp16.


  Commit: 0e84bfa79f1121b65609013175c6515159e3cdec
      https://github.com/llvm/llvm-project/commit/0e84bfa79f1121b65609013175c6515159e3cdec
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/test/CIR/CodeGen/switch-pre-case-stmts.cpp

  Log Message:
  -----------
  [CIR] Handle the 'before case' block of a switch statement. (#199752)

Before this patch, we would fail any time there was a block with
entry/exit (in this case, one with successors thanks to a label) with a
verification error. This patch adds special handling for that first
block.

This patch DOES choose to not trim them however. Unless there is a label
inside of the block, there isn't any way to get there, and it is dead
code. I've opted to NOT do that optimization, as I suspect that might be
valuable to future passes/something we may wish to warn about in some
sort of CFG analysis.

Additionally, there is some minor changes to FlattenCFG, first to make
sure we skip the switch ONLY if it is truly empty, and second to make
sure we transform any 'break' in the pre-case region.


  Commit: 3d9d776b29c9d1b44ee4f87dd1311bbf85af1ca3
      https://github.com/llvm/llvm-project/commit/3d9d776b29c9d1b44ee4f87dd1311bbf85af1ca3
  Author: DeanSturtevant1 <dsturtevant at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bzl] Reduce the `deps` size of libc's shared_math_header library. (#200006)

There were ~500 of them, which can cause build analysis/metric issues.
Glob the private headers in use, retaining only the support libraries
that have source code.
Make it a cc_library instead of a libc_header_library. Rename it
"apfloat_shared_math_headers" to clarify its limited use case.


  Commit: 8a55aca421d64db9f82bda2ae3330bdf2dc12cf0
      https://github.com/llvm/llvm-project/commit/8a55aca421d64db9f82bda2ae3330bdf2dc12cf0
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
    A llvm/test/Transforms/SandboxVectorizer/seed_collection_loads.ll

  Log Message:
  -----------
  [SandboxVec][SeedCollection] Iterate over all seeds (#195964)

Even though load seeds can already be collected by the seed collector,
the seed collection pass was not iterating over them. This patch fixes
this, we are now iterating over both store and load seeds.


  Commit: aa1f119c6dcbf0b4404a88fcaeb34d9c5ca48fb5
      https://github.com/llvm/llvm-project/commit/aa1f119c6dcbf0b4404a88fcaeb34d9c5ca48fb5
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/test/lit.cfg.py

  Log Message:
  -----------
  [clang][lit] Add option to skip clang-repl checks (#199255)

Whenever lit or llvm-lit is invoked to run clang tests, clang-repl is
run at least once to check for host jit capabilities, and possibly
several more times to probe related capabilities. This adds a noticeable
delay before testing starts, especially for debug builds.

This change adds a lit parameter (clang_skip_clang_repl_checks) and an
environment variable check (CLANG_LIT_SKIP_CLANG_REPL_CHECKS) to allow
the clang-repl probes to be skipped. When this option is used, any tests
that rely on jit execution will be reported as unsupported.

This option is intended only to allow quicker targeted testing during
development. It should not be used for comprehensive verification before
submitting a patch.

On my local test system, executing `ninja check-clang-cir-codegen` with
a previously completed debug build took 18 seconds to run 354 tests with
this option and 53 seconds without it. This is the sort of use case I am
targeting -- lit test runs when the clang-repl overhead will constitute
a significant portion of the total time to execute the tests.


  Commit: d0676f53ed5b56a1f077fe8a4587ecb10e5400ee
      https://github.com/llvm/llvm-project/commit/d0676f53ed5b56a1f077fe8a4587ecb10e5400ee
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/Transforms/CIRTransformUtils.h
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRTransformUtils.cpp
    M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/test/CIR/CodeGen/cleanup-throw-from-cleanup.cpp
    M clang/test/CIR/CodeGen/try-catch.cpp

  Log Message:
  -----------
  [CIR] Handle throwing an exception from a cleanup scope (#199121)

The CIR FlattenCFG pass had been ignoring any ThrowOp that occurred
inside a cleanup scope or try operation, which led to the thrown
exception not triggering local cleanups and bypassing local catch
handlers.

This change introduces a new CIR operation, TryThrowOp, which is
analagous to the existing TryCallOp. The TryThrowOp (as well as the
ThrowOp) will eventually be lowered to a function call, but which
function gets called is a target-dependent detail, so we need an
abstract operation before EHABI lowering.

The Flatten CFG pass replaces any ThrowOp inside a cleanup scope or try
operation with a TryThrowOp that has an unreachable normal destination
and unwinds to the appropriate cleanup or catch dispatch block.

Assisted-by: Cursor / claude-opus-4.7-thinking-xhigh


  Commit: eeeb26f64efdbccd27a2a0fd094be8d98dc6c231
      https://github.com/llvm/llvm-project/commit/eeeb26f64efdbccd27a2a0fd094be8d98dc6c231
  Author: adams381 <adams at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/inline-extern-force-codegen.c

  Log Message:
  -----------
  [CIR] Emit globals for declarations that force externally visible defs

CIRGenModule::emitGlobal reported NYI for forward declarations that
force an externally visible definition under C99 inline rules (inline
definition in the TU, then a later extern declaration). Classic
CodeGenModule already materializes these with GetOrCreateLLVMFunction;
wire the same path through getAddrOfFunction, including the AArch64
multiversion guard from OGCG.

This pattern shows up in SPEC CPU 2026 berkeley-abc `if.h` when
compiling `abcIf.c` for 729.abc_r / 829.abc_s (`If_CutCopy` at line
527).

Test: `inline-extern-force-codegen.c` with CIR, LLVM, and OGCG checks.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: 3a203a506691df098ae1020dfb14e411d25bec35
      https://github.com/llvm/llvm-project/commit/3a203a506691df098ae1020dfb14e411d25bec35
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CodeGenCUDA/device-vtable.cu
    A clang/test/CodeGenCUDA/implicit-hd-dtor-trap-stub-hip.hip
    A clang/test/CodeGenCUDA/implicit-hd-explicit-inst-hip.hip
    A clang/test/CodeGenCUDA/implicit-hd-overload-ambig-hip.hip
    M clang/test/SemaCUDA/dtor.cu
    A clang/test/SemaCUDA/implicit-hd-dtor-explicit-instantiation.cu
    A clang/test/SemaCUDA/implicit-hd-explicit-inst-organic-caller.cu
    A clang/test/SemaCUDA/implicit-hd-overload-ambig-organic-caller.cu

  Log Message:
  -----------
  [CUDA][HIP] Defer device diagnostics in implicit H+D explicit instantiations (#197214)

When clang explicitly instantiates a class template, it must emit
device-side
bodies for the implicit `__host__ __device__` members so the vtable and
instantiation symbols resolve. Some of those members chain into
host-only
calls (for example libstdc++ destructors that eventually call ::operator
delete). If no device code actually uses the class, the user still sees
errors about calling a `__host__` function from device code, even though
they
wrote no device code that touches it. Overload ambiguity in the same
context
behaves the same way.

This patch defers device-side errors in implicit `__host__ __device__`
functions reached only via an explicit template instantiation. At the
end of
the translation unit, clang checks whether a real device caller exists.
If
one does, the deferred errors are surfaced with the usual call-stack
notes.
If not, the diagnostics are dropped and the function gets a trap body,
so the
vtable and instantiation symbols stay well-formed and the failure only
fires
if device code ever calls the function. This works without
-fgpu-defer-diag.


  Commit: 57b485f07d94e1780ed83275a01ef1c450dcdbd1
      https://github.com/llvm/llvm-project/commit/57b485f07d94e1780ed83275a01ef1c450dcdbd1
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
    M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/call-skip.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    M llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll
    M llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/global-alias.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/nested-calls.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.waterfall.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/waterfall-call-target-av-register-failure.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll

  Log Message:
  -----------
  [AMDGPU] Use register pair for PC spill (#183146)

Change-Id: Ibedeef926f7ff235a06de65a83087c151f66a416


  Commit: 80393ba1bdbe6155a91c7a54c0430b68f9c4b556
      https://github.com/llvm/llvm-project/commit/80393ba1bdbe6155a91c7a54c0430b68f9c4b556
  Author: HighW4y2H3ll <zhenghaohuu at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp

  Log Message:
  -----------
  [llvm-profgen] Fix assertion condition for the top-level probes address range checks (#198674)

Top-level functions may contains multiple disjoint address ranges, and
the pseudo probes may not be stored as sorted. The original assertion
check is problematic because the first pseudo probe may not necessarily
falls into the current function range even though they are both part of
the same function.

Update the assertion condition so that we won't hit the assertion
failure as long as there one pseudo probe falls in the checked function
range.


  Commit: 59389b0ba9dec92702de7465b13bbedb9c523951
      https://github.com/llvm/llvm-project/commit/59389b0ba9dec92702de7465b13bbedb9c523951
  Author: Michael Levine <mlevine55 at bloomberg.net>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/include/map
    M libcxx/include/set

  Log Message:
  -----------
  [libc++] Add __is_transparently_comparable_v optimizations for set, multiset, and multimap functions [Issue 187105] (#189735)

This PR closes https://github.com/llvm/llvm-project/issues/187105

It adds `__is_transparently_comparable_v` checks to `std::set`,
`std::multiset`, and `std::multimap`'s `find`, `contains`,
`lower_bound`, and `upper_bound` functions.

Assisted by:  Claude Code

---------

Signed-off-by: mlevine55 <mlevine55 at bloomberg.net>


  Commit: 15113c3eedb1e5badc411602fb8daa57bb5f677e
      https://github.com/llvm/llvm-project/commit/15113c3eedb1e5badc411602fb8daa57bb5f677e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libcxx/utils/ci/docker/docker-compose.yml

  Log Message:
  -----------
  [libc++] Update the base image hash to get GCC 16 (#199882)


  Commit: 8dc8411a75707fb7c914a851fce6aa3915e8a3bc
      https://github.com/llvm/llvm-project/commit/8dc8411a75707fb7c914a851fce6aa3915e8a3bc
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 3d9d776 (#200029)

This fixes 3d9d776b29c9d1b44ee4f87dd1311bbf85af1ca3.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: bdb3232dfacba6a61a0ac45bec3fb18c7c1c24bd
      https://github.com/llvm/llvm-project/commit/bdb3232dfacba6a61a0ac45bec3fb18c7c1c24bd
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/call-skip.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minimum.f64.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/memset-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/nested-calls.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.waterfall.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll

  Log Message:
  -----------
  [AMDGPU] Implement CFI for CSR spills (#183150)

Introduce new SPILL pseudos to allow CFI to be generated for only CSR
spills, and to make ISA-instruction-level accurate information.

Other targets either generate slightly incorrect information or rely on
conventions for how spills are placed within the entry block. The
approach in this change produces larger unwind tables, with the
increased size being spent on additional DW_CFA_advance_location
instructions needed to describe the unwinding accurately.

Change-Id: I9b09646abd2ac4e56eddf5e9aeca1a5bebbd43dd
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: 99bc986c527a9a98c85d792cfd99e0518cc1615d
      https://github.com/llvm/llvm-project/commit/99bc986c527a9a98c85d792cfd99e0518cc1615d
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/Support/FileSystem.h
    M llvm/include/llvm/Support/MemoryBuffer.h
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [Support] Add MemoryBuffer::randomAccessIfMmap() (#199265)

For read-only MemoryBuffer_MMap, advise the kernel that access pattern
will be random, disabling readahead. This calls `madvise(MADV_RANDOM)`
on *NIX. This function should not be called on a writable buffer.

The implementation follows existing pattern in
`mapped_file_region::dontNeedImpl()` and
`mapped_file_region::willNeedImpl()`.

See intended usage: https://github.com/llvm/llvm-project/pull/199230


  Commit: b76503229dc39d32505504fee48d0d40c4adc069
      https://github.com/llvm/llvm-project/commit/b76503229dc39d32505504fee48d0d40c4adc069
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Detect a raw pointer/reference in a decomposition declaration. (#198582)


  Commit: c00484d99f36f90aa5cb79226a0c444d3fc41bd9
      https://github.com/llvm/llvm-project/commit/c00484d99f36f90aa5cb79226a0c444d3fc41bd9
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp

  Log Message:
  -----------
  [llvm-profgen] Fix -Wunused-variable (#200038)

Inline the variable definition into the assertion given the variable
name does not add much and release builds will end up with an unused
variable otherwise.


  Commit: c315c662cd2d33e0c7f962fed742ee53626d8005
      https://github.com/llvm/llvm-project/commit/c315c662cd2d33e0c7f962fed742ee53626d8005
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll

  Log Message:
  -----------
  [AMDGPU] Fix codesize estimate after #198005 (#200033)

This fixes failure in libc tests which checks the exact encoding
size. Encoding is now shorter, but it did not recognize fp16
immediates as an inlinable constant and assumes literal encoding.

Shorter encodings were created here:
https://github.com/llvm/llvm-project/pull/198005


  Commit: f95f02c4b1ac931f8b6dcac55a0ad4ee59997883
      https://github.com/llvm/llvm-project/commit/f95f02c4b1ac931f8b6dcac55a0ad4ee59997883
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Thread scalar types through VPReplicateRecipe. (NFC) (#199379)

Update VPReplicateRecipe to populate VPSingleDefValue's scalar
type. For most opcodes, the scalar type is determine from the operands,
via computeScalarTypeForInstruction (from
https://github.com/llvm/llvm-project/pull/199378).
For some opcodes, like Loads and casts, the type must be
provided explicitly.

Depends on https://github.com/llvm/llvm-project/pull/199378.

PR: https://github.com/llvm/llvm-project/pull/199379


  Commit: 2f0815059c7b033acf935d49380d8b0166460bb3
      https://github.com/llvm/llvm-project/commit/2f0815059c7b033acf935d49380d8b0166460bb3
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M bolt/test/lit.cfg.py
    M libc/utils/libctest/format.py
    M libsycl/test/lit.cfg.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lldbtest.py
    M lldb/test/Shell/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg

  Log Message:
  -----------
  Reland: [lit] Move maxIndividualTestTime from global to test suite config (#199996)

Simplify LitConfig initialization and setter to allow None values.
TestingConfig.maxIndividualTestTime is initialized to 0 (or resolved to
0 if None) strictly during initialization.

This fixes an issue where the aggressive BOLT timeout of 60s (previously
set globally on lit_config) was leaking and affecting libc++ tests. By
moving the timeout configuration from the global lit_config to the
individual test suite config, we ensure that timeouts are isolated and
respect suite-local settings without leaking.

PR Stack:
* https://github.com/llvm/llvm-project/pull/198192
* https://github.com/llvm/llvm-project/pull/199886
* ➤ https://github.com/llvm/llvm-project/pull/199996
* https://github.com/llvm/llvm-project/pull/198193

The diff from #198192 is 39b632f741012bfbff9858407765e45435ad95ff

Assisted-by: Gemini


  Commit: bf005a1227a4822c7c2535dd5f5f3626fbe441b2
      https://github.com/llvm/llvm-project/commit/bf005a1227a4822c7c2535dd5f5f3626fbe441b2
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    A clang/test/Analysis/Checkers/WebKit/unretained-call-args-member.mm

  Log Message:
  -----------
  [alpha.webkit.UnretainedCallArgsChecker] Emit a warning for a non-const RetainPtr member (#184243)

This PR fixes a bug in UnretainedCallArgsChecker that it wouldn't emit a
warning when calling a function with the return value of a getter of a
RetainPtr non-const member variable even if such a member variable could
be mutated during such a function call.

The bug caused by tryToFindPtrOrigin treating any call of a getter on a
smart pointer member variable as safe. Fixed the bug by limiting this to
only when the variable is a local variable or a function parameter.

In addition, this PR fixes a bug in WebKit checkers that it would
erroneously emit a warning when calling a getter on a const RetainPtr
member variable beacuse isOwnerPtr was returning false for RetainPtr.
This false negative was previously masked / hidden by the false positive
fixed in this PR.

---------

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>


  Commit: 9ca1941d8ea2cc9f95def825d2c77cc91e2d2fd5
      https://github.com/llvm/llvm-project/commit/9ca1941d8ea2cc9f95def825d2c77cc91e2d2fd5
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake
    M flang-rt/lib/runtime/CMakeLists.txt

  Log Message:
  -----------
  [flang-rt][cuda] Move thin I/O to ptx only (#200054)


  Commit: b0516c58736cf1d83188e0b04cf5acb123e382e4
      https://github.com/llvm/llvm-project/commit/b0516c58736cf1d83188e0b04cf5acb123e382e4
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/split-gep-sub.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Set `inbounds` correctly. (#199304)

swapGEPOperand reorders the GEPs (ptr+off)+const into (ptr+const)+off.
When it does so, it needs to determine if the inner GEP is inbounds.

Previously the way it did this was to call
stripAndAccumulateInBoundsConstantOffsets on (ptr+const), and then check
if this offset was indeed in-bounds.

However, this GEP was not necessarily marked as `inbounds` itself. If it
was not, stripAndAccumulateInBoundsConstantOffsets would return 0 for
the offset (instead of `const`), in which case we'd check if
`0 < [obj width]`, which is trivially true, and then incorrectly mark
the GEP as inbounds.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 4fe4d9844862451b38bb3bd7329ab1b29916e3be
      https://github.com/llvm/llvm-project/commit/4fe4d9844862451b38bb3bd7329ab1b29916e3be
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/IR/Instructions.cpp
    M llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll

  Log Message:
  -----------
  [IR] Handle `expected` tag in switch branch weights. (#200025)

Switch branch weight metadata has an optional `expected` tag.
SwitchInstProfUpdateWrapper::getSuccessorWeight() did not handle this
tag; if it was present, it would return nullopt, effectively ignoring
the metadata.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 4e39ea3d5e7320035384072021582af74d91b1a9
      https://github.com/llvm/llvm-project/commit/4e39ea3d5e7320035384072021582af74d91b1a9
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    A llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll

  Log Message:
  -----------
  [AMDGPU] Implement -amdgpu-spill-cfi-saved-regs (#183149)

These spills need special CFI anyway, so implementing them directly
where CFI is emitted avoids the need to invent a mechanism to track them
from ISel.

Change-Id: If4f34abb3a8e0e46b859a7c74ade21eff58c4047
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: 5a7e4a0cf7f53a74b87c53b792b6a1d3ece3df28
      https://github.com/llvm/llvm-project/commit/5a7e4a0cf7f53a74b87c53b792b6a1d3ece3df28
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/MC/MCDwarf.h
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir

  Log Message:
  -----------
  [AMDGPU][MC] Replace shifted registers in CFI instructions (#183147)

Change-Id: I0d99e9fe43ec3b6fecac20531119956dca2e4e5c


  Commit: b6161b9f4c9e306fa07295db67a7ecc8cfadcffb
      https://github.com/llvm/llvm-project/commit/b6161b9f4c9e306fa07295db67a7ecc8cfadcffb
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add missing struct_mmsghdr dependency to sys_socket (#200051)

Updated libc/include/CMakeLists.txt to add
.llvm-libc-types.struct_mmsghdr to the sys_socket dependency list. This
ensures that the generated sys/socket.h correctly includes the
struct_mmsghdr.h type header.

Assisted-by: Automated tooling, human reviewed.


  Commit: 5ae73b942f44295c0baff138effe7272a94c7a1b
      https://github.com/llvm/llvm-project/commit/5ae73b942f44295c0baff138effe7272a94c7a1b
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Module.cpp

  Log Message:
  -----------
  [lldb] Keep addr for Memory Modules separate (#199810)

This change is to make DataFileCache symbol table caching work with
memory-read binary modules.

When we read a Module out of memory, we keep the address of the module
in Module's m_object_name field as a string. This is normally the name
of a file in a ranlib/static library/.a archive like the "main.o" in
"foo.a(main.o)". The address is most often seen in the "image list"
output, and is the only easy way to distinguish in that output which
binaries were read out of memory, versus found on local disk. The "name"
of the Module ends up being the combination of the FileSpec plus this
m_object_name.

Reading a binary out of memory is expensive, primarily because of
reading the symbol table. The DataFileCache feature that Greg introduced
five years ago can cache the Symbol Table for a binary locally, and when
we see the same binary loaded again in a future debug session/lldb
session, we can skip parsing the symbol table (or in the case of Memory
Module, reading it from memory).

Unfortunately because the "name" of the Module is the combination of the
FileSpec PLUS the address, if this is a system where binaries can load
at different addresses, we may not be able to use the DataFileCache for
a memory module. The address should not be part of the name for this.

In Module, I created a new optional ivar to track the memory module
address, if this is one, instead of putting the string representation in
m_object_name. In all places (except the DataFileCache name
construction), I append the address to the name just like we do with
m_object_name.

There were a few logging points that were manually constructing the name
when a method would do it for them already; I changed them to call the
method instead.

Probably the least clean part is in CommandObjectTarget (the image list
output), we add the ObjectName to the FileSpec here as well. For now,
instead of trying to leverage one of the methods in Module that combine
them already, I changed it to use the same change.

I used a std::optional for this address instead of the
LLDB_INVALID_ADDRESS convention because it was a lot cleaner to read, I
thought, even if it is different than most often used in the codebase.
Open to using the older coding style if other people think consistency
is more important.


  Commit: 78987e85ae0930b10d2588a9f8333a2fa8c3014d
      https://github.com/llvm/llvm-project/commit/78987e85ae0930b10d2588a9f8333a2fa8c3014d
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/include/lldb/Core/DataFileCache.h
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/Symbol/Symtab.h
    M lldb/include/lldb/Utility/DataEncoder.h
    M lldb/source/Core/DataFileCache.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Symbol/Symtab.cpp

  Log Message:
  -----------
  [lldb] Edits and clarifications to DataFileCache comments, NFC (#199787)

I was reading through Greg Clayton's DataFileCache PR and fixed a few
small typeos as I went along.

I also had a little trouble understanding the two types of hashes that
are calculated for a file, at first, and I tried to write comments for
the relevant methods (in Module, ObjectFile, and DataFileCache) to be
more explicit about their role and the role of the other hashes that are
calculated. It may be more detail than necessary, but it would have been
helpful for me while reading this through.


  Commit: 055a4ba0b27794d1dd04149f87ebc3cc47bc2bd9
      https://github.com/llvm/llvm-project/commit/055a4ba0b27794d1dd04149f87ebc3cc47bc2bd9
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Update C++ DR status page (#200053)

Updates from 2026-05-19 CWG telecon.


  Commit: 9fa9ab338f753cf4fd7c6f7c3c8424da7d15c588
      https://github.com/llvm/llvm-project/commit/9fa9ab338f753cf4fd7c6f7c3c8424da7d15c588
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Remove unused Predicates for Zicfilp. NFC (#200028)


  Commit: 8fc12f1e3f6aab79aefd70cf68f9c92439e2fc32
      https://github.com/llvm/llvm-project/commit/8fc12f1e3f6aab79aefd70cf68f9c92439e2fc32
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake

  Log Message:
  -----------
  [flang-rt][cuda] Set RT_CUDA_THIN_IO=1 only for PTX object (#200063)


  Commit: e1dd984a809c9c7b8cc3731e3b8eeb8d01fbc8c1
      https://github.com/llvm/llvm-project/commit/e1dd984a809c9c7b8cc3731e3b8eeb8d01fbc8c1
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/test/Transforms/FIRToMemRef/slice-projected.mlir

  Log Message:
  -----------
  [flang][FIRToMemRef] fix stride calculation for complex lowering (#200035)

**Summary**
When `fir.array_coor` targets a projected slice of a complex array (path
0 = real, 1 = imag), FIRToMemRef must not treat the result as a dense
memref.

**Bug:** The pass stopped after fir.convert to `memref<…×complex>` (or
static-shape fast path) and used default/dense strides. Loads/stores
then stepped by sizeof(complex) instead of sizeof(re)/sizeof(im).

**Fix:** For constant `%re/%im` on `complex<T>` storage:

`fir.convert` storage to `memref<…×2×T>` and index the component (0 or
1).
Read layout from `fir.box_dims` on the box (even if the memref shape is
static).
Set each memref stride to `box_dims_byte_stride / sizeof(T)`.

Advised by Cursor


  Commit: e8cc37e60d04ea2e25f03fbeeb8de59f4e640448
      https://github.com/llvm/llvm-project/commit/e8cc37e60d04ea2e25f03fbeeb8de59f4e640448
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp

  Log Message:
  -----------
  [clang][deps] Disable app extensions during scanning (#200041)

Application extension contributes to the context hash, but only affects
the availability attribute on declarations. Since it cannot affect
dependencies, disable it for the scan to reduce the number of scanning
PCM variants.


  Commit: 00b4695f1dc6b04168be2e1ed8368624d768314f
      https://github.com/llvm/llvm-project/commit/00b4695f1dc6b04168be2e1ed8368624d768314f
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/AArch64/fast-isel-branch-cond-split.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/split-branch-cond-weights.ll

  Log Message:
  -----------
  [CodeGenPrepare] Use recomputed split-branch weights. (#199822)

splitBranchCondition computes new branch weights after splitting an
and/or condition into two branches, but then passed the original weights
to createBranchWeights at each metadata update. The recomputed values
were discarded.

Pass the scaled NewTrueWeight/NewFalseWeight values when installing
metadata on both generated branches.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 7f82efb3966868dfe7d0b37dd6aa104007d264ff
      https://github.com/llvm/llvm-project/commit/7f82efb3966868dfe7d0b37dd6aa104007d264ff
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/module.modulemap

  Log Message:
  -----------
  [Object] Add missing BBAddrMap.def to module map (#199961)

Added in 532940bdee66bf5f36a70578698aab66f16919af.


  Commit: f13305bac8ea2237e6fbab29f172e6a5a5058a1c
      https://github.com/llvm/llvm-project/commit/f13305bac8ea2237e6fbab29f172e6a5a5058a1c
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/RISCV/vector-deinterleave2.ll

  Log Message:
  -----------
  [VectorCombine] Fold deinterleave2 with smaller effective element size (#192121)

Found in real-world code where this sequence:
```
%d = llvm.vector.deinterleave2 <vscale x 16 x i32> %v
%f0 = extractvalue { <vscale x 8 x i32>, <vscale x 8 x i32> } %d, 0
%f1 = extractvalue { <vscale x 8 x i32>, <vscale x 8 x i32> } %d, 1

%low0 = and <vscale x 8 x i32> %f0, splat (i32 65535)
%low1 = shl <vscale x 8 x i32> %f1, splat (i32 16)
%merge0 = or disjoint <vscale x 8 x i32> %low0, %low1

%high0 = and <vscale x 8 x i32> %f1, splat (i32 -65536)
%high1 = lshr <vscale x 8 x i32> %f0, splat (i32 16)
%merge1 = or disjoint <vscale x 8 x i32> %high0, %high1
```
is really just doing `deinterleave2` but on `<vscale x 32 x i16>`. That
is, the same total vector size but with half the element width. So we
can turn it into:
```
%narrow.v = bitcast <vscale x 16 x i32> %v to <vscale x 32 x i16>
%d = llvm.vector.deinterleave2 <vscale x 32 x i16> %narrow.v
%f0 = extractvalue { <vscale x 16 x i16>, <vscale x 16 x i16> } %d, 0
%f1 = extractvalue { <vscale x 16 x i16>, <vscale x 16 x i16> } %d, 1

%merge0 = bitcast <vscale x 16 x i16> %f0 to <vscale x 8 x i32>
%merge1 = bitcast <vscale x 16 x i16> %f1 to <vscale x 8 x i32>
```
I put this in VectorCombine because I'm worried that the newly created
bitcast might be expensive for some targets, hence a profitability check
before committing the transformation.


  Commit: eb0cb0c69526a8bff5b3b1399a2bd7da4cd3a148
      https://github.com/llvm/llvm-project/commit/eb0cb0c69526a8bff5b3b1399a2bd7da4cd3a148
  Author: Zhijie Wang <yesterda9 at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Propagate inner origins through std::move and related casts (#199600)

std::move and related casts (std::forward, std::forward_like,
std::move_if_noexcept, std::as_const) are reference casts: the result
refers to the same object as the argument. Flow all origin levels for
this family.
  
Fixes #191954


  Commit: 9409c07de6378507397ecdb6f05f628f58110112
      https://github.com/llvm/llvm-project/commit/9409c07de6378507397ecdb6f05f628f58110112
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h

  Log Message:
  -----------
  [lldb][Darwin] Read Mach-O binaries out of memory more efficiently (#200072)

When lldb needs to read a Mach-O binary out of memory, it first reads
512 bytes to get the mach header, which includes the size of the load
commands, and then does a second read to get the mach header and load
commands.

I am changing the initial read to get 3192 bytes, which will include the
full load commands for most binaries.

In April I changed debugserver to return the correct size of the mach
header and load commands in a `sizeof_mh_and_loadcmds` key. If this
number is provided, refine the amount we read to this size.

This reduces the number of memory read packets we issue from 2 to 1 for
a memory module, outside of packets that may be needed to get the symbol
table.


  Commit: 9d1644738134c7132058dddf4b97f2a782429862
      https://github.com/llvm/llvm-project/commit/9d1644738134c7132058dddf4b97f2a782429862
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/CMakeLists.txt
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.h
    A llvm/test/tools/dxil-dis/dbg-value.ll
    M llvm/test/tools/dxil-dis/debug-info.ll

  Log Message:
  -----------
  [DirectX] Add an "offset" operand to llvm.dbg.value (#197478)

Offset operand was removed in abe04759a6, so we need to bring it back
for DXIL. If offset is not specified, it should be zero.

---------

Co-authored-by: Andrew Savonichev <andrew.savonichev at gmail.com>


  Commit: e69fb46030a03bcd9556d60844defd2bb9627587
      https://github.com/llvm/llvm-project/commit/e69fb46030a03bcd9556d60844defd2bb9627587
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp

  Log Message:
  -----------
  [gsymutil] Disable readahead in `GsymReader::openFile()` (#199230)

`GsymReader::lookup()` has random access pattern (i.e. binary search an
address, then spot-load/parse info from rest of the GSYM data).
Readahead strategies in kernels (which was enabled by default) don't
necessarily improve (and may degrade) performance. This patch disables
readahead.

In a production system, similar change has seen 5% improvement on IOPS
and data reads. An offline performance test on a Linux machine shows
similar results - it reduces 14.3% total data read, 3.5% CPU%, and 2.9%
wall time (while adding 9.4% page faults). The reduction of total data
read and CPU % may help the performance of a heavily-loaded production
system.
```
  ┌────────────────┬─────────────┬─────────┬────────┐
  │     Metric     │ MADV_RANDOM │ Default │  Diff  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Wall (s)       │ 0.286       │ 0.294   │ -2.9%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Major PF       │ 203.6       │ 186.0   │ +9.4%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Minor PF       │ 4433.1      │ 4450.3  │ -0.4%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ FS inputs (MB) │ 118.8       │ 138.7   │ -14.3% │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ CPU %          │ 48.8        │ 50.6    │ -3.5%  │
  └────────────────┴─────────────┴─────────┴────────┘
```
The test is performed by doing 100 cold runs, where each run first
purges kernel page cache, then opens/mmaps a 3.8 GB GSYM file, and then
looks up 3 addresses at the beginning/middle/end of the address list.
See [test
script](https://gist.github.com/royitaqi/c06c733cccfbf747d63750b06db77b4a).

The pre-existing hidden option `llvm-gsymutil --benchmark-reader` is
extended to take optional `=<start>,<stride>` to make performance
testing easier.


  Commit: 5db13643f4b7038db0ca304d9f8900122502935c
      https://github.com/llvm/llvm-project/commit/5db13643f4b7038db0ca304d9f8900122502935c
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    A clang/test/CodeGenHIP/offload-pgo-sections.hip
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
    A llvm/test/Instrumentation/InstrProfiling/gpu-weak.ll
    A llvm/test/Transforms/PGOProfile/amdgpu-disable-value-profiling.ll

  Log Message:
  -----------
  [PGO][AMDGPU] Add basic HIP offload PGO support (#177665)

Provide the minimum HIP/offload path for device profile collection and
merge on HIP before layering profile-format and uniformity-specific
changes separately.

This adds the ROCm collection runtime, hooks device collection into the
host write-file path, lowers AMDGPU instrumentation to
__llvm_profile_instrument_gpu with regular counters, and disables GPU
indirect-call value profiling.


  Commit: 1670d39972a1c6dd4a9e6f54d509a86a72dae1da
      https://github.com/llvm/llvm-project/commit/1670d39972a1c6dd4a9e6f54d509a86a72dae1da
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
    A llvm/test/tools/dxil-dis/dbg-declare-undef.ll

  Log Message:
  -----------
  [DirectX] Handle undef the same way as null (#197507)


  Commit: 9cc6c9375faa11722435a150c9829df2452b48ca
      https://github.com/llvm/llvm-project/commit/9cc6c9375faa11722435a150c9829df2452b48ca
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/lib/generic/relational/clc_signbit.cl
    A libclc/clc/lib/generic/relational/clc_signbit.inc

  Log Message:
  -----------
  [libclc] Optimize and vectorize signbit (#199497)

Replace element-wise scalarizing implementation with bitcast and shift.
For example,
define hidden range(i32 -1, 1) <2 x i32> @_Z7signbitDv2_f(<2 x float>
noundef %0) #0 {
  %2 = bitcast <2 x float> %0 to <2 x i32>
  %3 = extractelement <2 x i32> %2, i64 0
  %4 = lshr i32 %3, 31
  %5 = insertelement <2 x i32> poison, i32 %4, i64 0
  %6 = extractelement <2 x i32> %2, i64 1
  %7 = lshr i32 %6, 31
  %8 = insertelement <2 x i32> %5, i32 %7, i64 1
  %9 = icmp ne <2 x i32> %8, zeroinitializer
  %10 = sext <2 x i1> %9 to <2 x i32>
  ret <2 x i32> %10
}
is changed to:
define hidden noundef range(i32 -1, 1) <2 x i32> @_Z7signbitDv2_f(<2 x
float> noundef %0) #0 {
  %2 = bitcast <2 x float> %0 to <2 x i32>
  %3 = ashr <2 x i32> %2, splat (i32 31)
  ret <2 x i32> %3
}


  Commit: 1a5822e3c9421fd0a270e7bad3dff92219dd9da3
      https://github.com/llvm/llvm-project/commit/1a5822e3c9421fd0a270e7bad3dff92219dd9da3
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/CodeGenCoroutines/coro-gro4.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-03.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    M llvm/docs/Coroutines.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
    M llvm/test/Transforms/Coroutines/coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    M llvm/test/Transforms/Coroutines/coro-padding.ll
    M llvm/test/Transforms/Coroutines/coro-resume-destroy.ll
    M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
    M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
    M llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll
    M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll

  Log Message:
  -----------
  [coro] Use C calling convention for C++20 coroutines (#198943)

Change the calling convention for resume / destroy functions of C++
coroutines from `fastcc` to the C calling convention.

The resume / destroy functions are exposed as part of the coroutine ABI
and must be compatible with other compilers and other versions of LLVM.
fastcc is an LLVM-internal, unstable calling convention, though.

In practice, fastcc and the C calling convention are in sync for `void
func(void*)` function signatures on almost all platforms. Therefore, I
think we can still do this change without widespread ABI breakage.

`fastcc` and `ccc` do differ for i686 (x86-32), MIPS O32, PowerPC64
ELFv1 and Lanai. Afaik, those are all legacy ABIs and a recent feature
like C++20 coroutines is unlikely to be used by projects still targeting
legacy ABIs.

Historical context: I tried to figure out why `fastcc` was used. It is
around since the original commit f93082e71a94 from 2016, predating the
cross-vendor coroutine ABI work. I could not find any discussion of
whether this should use `fastcc` on the review or on the mailing list.

As a side-effect, this also fixes #91123.

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 830c8d625421ed5e86c73acb523f92ee4e39ee84
      https://github.com/llvm/llvm-project/commit/830c8d625421ed5e86c73acb523f92ee4e39ee84
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/tools/llvm-symbolizer/Inputs/wasm-basic.yaml
    R llvm/test/tools/llvm-symbolizer/lit.local.cfg
    M llvm/test/tools/llvm-symbolizer/wasm-basic.s

  Log Message:
  -----------
  test(llvm-symbolizer): fix Wasm layering violation by using YAML (#200080)

Avoid using wasm-ld in LLVM tests by prebuilding the test binary
as a YAML file and using yaml2obj at test time.

This matches the approach taken in
4bce216e6b550c770f2e536422c3d95333f65ba3.
Because yaml2obj always uses 5-byte LEBs, the CODE section offset
shifted from 0x37 to 0x4b, so the file offsets passed to llvm-symbolizer
were updated accordingly.

Replaces #200046

Assisted-by: Gemini


  Commit: 740e52bc99696661f357d4feb975f0209082cea9
      https://github.com/llvm/llvm-project/commit/740e52bc99696661f357d4feb975f0209082cea9
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    A llvm/test/tools/dxil-dis/di-label.ll

  Log Message:
  -----------
  [DirectX] Drop debug labels (#197490)

Debug labels did not exist in LLVM 3.7 and have no equivalent.


  Commit: d65897289e68696fa5f5b2d2f449f7633fff13ab
      https://github.com/llvm/llvm-project/commit/d65897289e68696fa5f5b2d2f449f7633fff13ab
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Detect an assignment to a guardian argument (#198695)

A function parameter of type RefPtr<T>& should not be used as a guardian
variable of a raw pointer/reference variable if the function body
contains an assignment to it since such an assignment can shorten the
lifetime of the guarded object.


  Commit: dbe6800baeec47c538f95421348c6c62a38f061c
      https://github.com/llvm/llvm-project/commit/dbe6800baeec47c538f95421348c6c62a38f061c
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/test/CodeGen/AMDGPU/arbitrary-fp-to-float.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/true16-imm-folded-to-0-regression.ll
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt

  Log Message:
  -----------
  [AMDGPU] This reverts patches to use fp16 inline constants for i16 (#200091)

Patches reverted:

commit c315c662cd2d33e0c7f962fed742ee53626d8005
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date:   Wed May 27 12:51:13 2026

    [AMDGPU] Fix codesize estimate after #198005 (#200033)

    This fixes failure in libc tests which checks the exact encoding
    size. Encoding is now shorter, but it did not recognize fp16
    immediates as an inlinable constant and assumes literal encoding.

    Shorter encodings were created here:
    https://github.com/llvm/llvm-project/pull/198005

commit 2b3bc03b5ef00e7eaa245420ca981c700e1c05c4
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date:   Wed May 27 10:55:36 2026

    [AMDGPU] Use shorter form for i16 operands (#198005)

    For 16-bit operands an inline constant is zero extended
    which in particular allows to use FP constants. These
    will have 16 bits of zeroes in the high half and FP16
    value in the low 16 bits.

    The patch changes semantics of the FP literal argument
    used in i16 context in the asm parser to fp16.

Apparently this breaks some libc tests with bf16. I do not know
why, these were not supposed to be affected. Reverting for now.

Failed tests: https://lab.llvm.org/buildbot/#/builders/10/builds/29005


  Commit: 0381a09309c6fc1e8aec031580ef5d2396143c79
      https://github.com/llvm/llvm-project/commit/0381a09309c6fc1e8aec031580ef5d2396143c79
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/RISCV/runtime-strided-stores.ll

  Log Message:
  -----------
  [SLP] Precommit tests for runtime strided stores (#200019)

Accompanies #200018


  Commit: 5b17cdb0b5827d8423470084e6004c5686d9cb2a
      https://github.com/llvm/llvm-project/commit/5b17cdb0b5827d8423470084e6004c5686d9cb2a
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-narrowing-shift-trunc.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Split v4i16/v8i8 INSERT/EXTRACT_VECTOR_ELT on RV32. (#199917)

With a constant lane index, split the vector and recurse on the
single-GPR half containing Idx (already Custom-lowered).


  Commit: 6619c82f729487ada200a074c72f7260511bb23e
      https://github.com/llvm/llvm-project/commit/6619c82f729487ada200a074c72f7260511bb23e
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    A llvm/test/CodeGen/RISCV/move-merge-zdinx-mvsa-regression.mir

  Log Message:
  -----------
  [RISCV] Fix incorrect CM.MVSA01/QC_CM_MVSA01 generation with Zdinx (#200000)

The `RISCVMoveMerger` pass was incorrectly forming
`CM_MVSA01/QC_CM_MVSA01` when `Zdinx` was enabled. The pass attempted CM
merge for copy pairs even when the first copy was not an `a0/a1-based`
CM candidate.

Fix by only running `findMatchingInst` when the current copy is a valid
CM candidate.


  Commit: f9185454a9a70fd351cb8a1ba3b2b3e33e064c06
      https://github.com/llvm/llvm-project/commit/f9185454a9a70fd351cb8a1ba3b2b3e33e064c06
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    A clang/test/AST/ast-print-amdgcn-predicate.c

  Log Message:
  -----------
  [clang][AMDGPU] Fix -ast-print crash on expanded predicate builtins (#199963)

ExpandAMDGPUPredicateBuiltIn synthesized an IntegerLiteral typed
_Bool/bool — a shape no other producer creates, and one that
StmtPrinter::VisitIntegerLiteral has no case for. -ast-print on the
resulting if-condition hit llvm_unreachable.

Emit the canonical boolean literal instead:

- C++, C23, OpenCL, HIP: CXXBoolLiteralExpr 'bool'
- pre-C23 C: IntegerLiteral 'int'

In the C case this matches what <stdbool.h>'s true/false macros expand
to.

Fixes #199563


  Commit: 2d5dac5b816726621d08ac695ed0b9799dfb7209
      https://github.com/llvm/llvm-project/commit/2d5dac5b816726621d08ac695ed0b9799dfb7209
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 5db1364 (#200104)

The commit added a dep from profile -> interception, so define that
target too

Fixes 5db13643f4b7038db0ca304d9f8900122502935c


  Commit: 635e120fb87304924508a7a204574727e3c37363
      https://github.com/llvm/llvm-project/commit/635e120fb87304924508a7a204574727e3c37363
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp

  Log Message:
  -----------
  [PGO][HIP] Stop pulling ROCm.o into every PGO host link (#200101)

PR #177665 added an unconditional `extern` reference to
`__llvm_profile_hip_collect_device_data` from `InstrProfilingFile.c`,
which forces `InstrProfilingPlatformROCm.o` (and its sanitizer_common /
interception dependencies) out of `libclang_rt.profile.a` in every PGO
binary. That breaks bots without `-lpthread` and races dlsym/PLT state
in non-HIP programs via the interceptor constructor.

Fix:
- Declare the hook `COMPILER_RT_WEAK` and gate the call on its address.
No `COMPILER_RT_VISIBILITY`: a hidden weak-undef function would be
non-preemptible and the address test would fold to true.
- Gate `installHipModuleInterceptors` on `dlsym(hipModuleLoad)` so the
constructor is a no-op if `ROCm.o` is still pulled in.

Fixes:
- https://lab.llvm.org/buildbot/#/builders/66/builds/31311
- https://lab.llvm.org/buildbot/#/builders/174/builds/36180

Verified:
- `check-profile` 134/134 pass.
- `nm` on a non-HIP `clang -fprofile-generate` binary: zero
`installHip`/`ROCm`/`sanitizer`/`hip_collect` symbols.
- HIP offload PGO end-to-end on gfx1101 (compile → run → `llvm-profdata
merge` → `llvm-cov`) still works; interceptor installs, device profile
collected via shared API.


  Commit: d5e97d77289c59d785284e6a0361570a1651acd6
      https://github.com/llvm/llvm-project/commit/d5e97d77289c59d785284e6a0361570a1651acd6
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/split-debug.c

  Log Message:
  -----------
  [Driver] Honor /Fo when deriving the split-dwarf .dwo path (#199613)

SplitDebugName checked -o and /o but not /Fo, so clang-cl /Fo<path> /c
fell through to the cwd-relative fallback and every .dwo landed in cwd
under <source-stem>.dwo regardless of the .obj location.


  Commit: a20e85f74d7a3f1bc29cb80fa6d47cf74e9f2aa0
      https://github.com/llvm/llvm-project/commit/a20e85f74d7a3f1bc29cb80fa6d47cf74e9f2aa0
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A clang/test/CXX/basic/basic.link/p11.cpp

  Log Message:
  -----------
  [clang] NFC: add test cases from #111561 (#200105)

This adds those test cases while #111561 gathers dust.


  Commit: da4894c874edb5fc9b9b82a8a99ed471a49153bf
      https://github.com/llvm/llvm-project/commit/da4894c874edb5fc9b9b82a8a99ed471a49153bf
  Author: Arda Serdar Pektezol <arda at pektezol.dev>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/test/Transforms/LoopFusion/loop_invariant.ll
    A llvm/test/Transforms/LoopFusion/pr191238.ll

  Log Message:
  -----------
  [LoopFusion] reject unsafe scalar flow dependences (#195895)

`loop-fusion` treats any loop-invariant scalar non-anti dependence as
safe to fuse. In the linked issue, it incorrectly allows scalar flow
dependences where the first loop writes a loop-invariant location and
the second loop later reads that same location. Fusion interleaves the
producer and consumer and this changes the value observed by the second
loop.

Example C source would look like:
```C
for (int i = 0; i < N; i++) {
    ptr[0] = i;
}
for (int j = 0; j < N; j++) {
    out[j] = ptr[0];
}
=>
for (int i = 0; i < N; i++) {
    ptr[0] = i;
    out[i] = ptr[0];
}
```

This patch makes the DA scalar-dependence shortcut **_more
conservative_** by rejecting scalar non-anti and allowing input/output
dependences. This preserves the existing safe read and write cases while
preventing the miscompile above.

The patch also updates the `loop-fusion` debug message to reflect the
narrower accepted case, updates the existing regression to check the new
debug message, and adds a new regression from the linked issue.

Fixes #191238


  Commit: 5acb952cb5d9c899692f44f4280af75a780a599c
      https://github.com/llvm/llvm-project/commit/5acb952cb5d9c899692f44f4280af75a780a599c
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/CodeGenHIP/profile-coverage-mapping.hip
    M clang/test/Driver/hip-options.hip

  Log Message:
  -----------
  [HIP][Driver] Forward -fcoverage-mapping flags to device compiler (#198872)

Add `-fcoverage-mapping`, `-fno-coverage-mapping`,
`-fcoverage-compilation-dir=`, `-ffile-compilation-dir=`, and
`-fcoverage-prefix-map=` to the LinkerWrapper `CompilerOptions`
forwarding list. Without this, passing `-fprofile-instr-generate
-fcoverage-mapping` to clang for a HIP program silently omits the
coverage mapping flags from the embedded device recompilation, so
`__llvm_covmap`/`__llvm_covfun` sections are never emitted for device
code.


  Commit: 846bfd77ddc44ef76882fd165fa4d5b68b760456
      https://github.com/llvm/llvm-project/commit/846bfd77ddc44ef76882fd165fa4d5b68b760456
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Avoid assert on variadic placement new (#199588)

Avoid assuming that a placement allocation function has a second
`ParmVarDecl` before checking whether that parameter is `void*`.
Variadic `operator new(size_t, ...)` can have a placement argument
matched by the ellipsis instead.

As of AI Usage: Codex is used to help rephrase part of the new comments.

Closes https://github.com/llvm/llvm-project/issues/199584


  Commit: 1da70ad6da64e5737aae1b8aad1bc97a36bbe1cf
      https://github.com/llvm/llvm-project/commit/1da70ad6da64e5737aae1b8aad1bc97a36bbe1cf
  Author: Gaurav Dhingra <gauravdhingra.gxyd at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive of parentheses removal for overloaded operator (#192254)

Fixes #189217
    
don't remove necessary parentheses for an overloaded operator, when
the parenthese occurs in the context of a binary operation
    
E.g. (E1 & E2) != E3       // the brackets aren't redundant here
E.g. (E1 & E2)             // brackets are redundant here


  Commit: 48a1ee7bc8e1d740edf635c39e0223b9b02a6ae1
      https://github.com/llvm/llvm-project/commit/48a1ee7bc8e1d740edf635c39e0223b9b02a6ae1
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/wait-xcnt-drain.mir
    M llvm/test/CodeGen/AMDGPU/wait-xcnt.mir

  Log Message:
  -----------
  [AMDGPU] Remove redundant s_wait_xcnt after implicit XCNT drains (#198823)

On gfx1250 several instructions implicitly drain XCNT in hardware:
`s_barrier_wait`/`signal`/`signal_isfirst`, `s_sendmsg`, PC-changes etc.
This patch will remove redundant `s_wait_xcnt` after implicit XCNT
drains.

Pre-commit tests on #198772
Fix: LCOMPILER-1665


  Commit: 9cd3c0b99e5df66adcc96a2fc03b9b177d6ca487
      https://github.com/llvm/llvm-project/commit/9cd3c0b99e5df66adcc96a2fc03b9b177d6ca487
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    A clang/test/CodeGenHLSL/resources/res-array-global-to-local.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-array-to-local.hlsl

  Log Message:
  -----------
  [HLSL] Codegen for handling global resource array initialization (#198891)

When a global resource array is accessed - whether it is declared at a
global scope or as part of a global struct instance - all of its
resource elements should be initialized from binding into a temporary
local resource array. This change intercepts the Clang codegen at the
relevant places to allow `CGHLSLRuntime` handle this special global
resource array initialization.

Fixes #187087
Fixes #198888


  Commit: 690a25fd5b0bf7118370efbc681661a24a40b83a
      https://github.com/llvm/llvm-project/commit/690a25fd5b0bf7118370efbc681661a24a40b83a
  Author: eleviant <eleviant at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/AArch64/mskernel-interlocked.c
    A clang/test/CodeGen/X86/mskernel-interlocked.c
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    A llvm/test/CodeGen/X86/volatile-atomicrmw.ll

  Log Message:
  -----------
  [clang] Don't optimize out no-op atomics in kernel mode (#193562)

The no-op atomics like InterlockedAnd(addr, (UINT32)-1) don't modify
the underlying value, however kernel code depends on these accesses
to touch the pool page virtual address and intentionally trigger a page
fault during page migration. This patch also fixes an LLVM issue where
idempotent volatile atomics were incorrectly lowered into memory fences.


  Commit: 8059bc5944b72f3f6f3734ef61bf9eb89ca850a4
      https://github.com/llvm/llvm-project/commit/8059bc5944b72f3f6f3734ef61bf9eb89ca850a4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a diagnostic difference in bitcasts (#197174)

Don't immediately return failure and let it be handled by later checks.


  Commit: 191aa295d9c9fe83411ae5cdfeb8a6bb8decb3d2
      https://github.com/llvm/llvm-project/commit/191aa295d9c9fe83411ae5cdfeb8a6bb8decb3d2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Do not allow free via synchronization in nofree (#195658)

The nofree attribute is currently specified to only forbid direct free
calls inside the function. A nofree function is still allowed to compel
a pointer to be freed by a different thread through synchronization.

This is currently only spelled out for the function-level nofree
attribute, but I assume the same semantics also hold for argument nofree
(and this matches how the Attributor implementation infers it).

The original motivation for this definition was to keep the attributes
orthogonal and independently inferable. However, the problem is that
nosync is a too strong condition: It excludes *any* synchronization, not
just synchronization that results in the free of a pointer.

Some frontends like Rust can guarantee that most pointer arguments
cannot be freed for the duration of a function call, including via
synchronization. However, they cannot guarantee that no synchronization
takes place at all. The current definition of nofree makes this
inexpressible in LLVM IR, which blocks further progress on
dereferenceable-at-point semantics.

This PR makes two changes to the nofree spec:

* Function-level nofree now disallows free via synchronization,
specified in terms of happens-before.
* Argument-level nofree is now specified in terms of provenance: The
argument has derived provenance that makes it UB to free during the
execution of the function (which includes freeing on another thread with
appropriate synchronization). This also clarified that argument-level
nofree only applies to the particular pointer (similar to `captures`
etc). The underlying object may still be freed via a different argument
to which the same pointer is passed.

Note: The necessary inference changes for the new semantics will
be implemented in a separate PR.


  Commit: 486370c33fbd75247ef608a2ebc04ddaefd2ab46
      https://github.com/llvm/llvm-project/commit/486370c33fbd75247ef608a2ebc04ddaefd2ab46
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl

  Log Message:
  -----------
  [AMDGPU][Clang] refactor addrspace and scope checks [NFC] (#199175)

Assisted-By: Claude Opus 4.6


  Commit: 942292bf75168377cc06dfa2ba90a552d6d24a69
      https://github.com/llvm/llvm-project/commit/942292bf75168377cc06dfa2ba90a552d6d24a69
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp

  Log Message:
  -----------
  [orc-rt] Remove NativeDylibManager unload operation. (#200119)

NativeDylibManager is intended to act as a backend for
llvm::orc::DylibManager, which does not expose an unload operation. This
commit removes the explicit unload from both the C++ and SPS interfaces,
and unloads dylibs via an on-shutdown callback instead.


  Commit: 6ed05a0b53dc777408305333dcbeec9dac4ea687
      https://github.com/llvm/llvm-project/commit/6ed05a0b53dc777408305333dcbeec9dac4ea687
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp

  Log Message:
  -----------
  Revert "[Clang] prevent constexpr crash on invalid overrides" (#199895)

Reverts #184048

---

The original change marks invalid overrides too early, causing follow-up
Sema regressions in special-member handling and MS-compatible override
diagnostics.


  Commit: 91d765f6ab10974f2c7080c90fe26b21bd7d7cb1
      https://github.com/llvm/llvm-project/commit/91d765f6ab10974f2c7080c90fe26b21bd7d7cb1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/Attributor/align-atomic.ll
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/liveness.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nocapture-2.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/nosync.ll
    M llvm/test/Transforms/Attributor/range.ll
    M llvm/test/Transforms/Attributor/readattrs.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-instances.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info-struct.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/OpenMP/parallel_deletion.ll

  Log Message:
  -----------
  [FunctionAttrs][Attributor] Update nofree inference (#196266)

This updates nofree inference after the semantics changes in
https://github.com/llvm/llvm-project/pull/195658.

FunctionAttrs currently only supports function-level nofree inference,
so we just need to check for potentially synchronizing instructions.

Attributor also supports argument nofree, in which case we make
additional changes:
* For callsite arguments, in addition to checking nofree, we also need
to check nocapture. If the call itself doesn't free the arg, it may
still capture it and then we may free it via the captured pointer later.
The way this was handled was already incorrect prior to the semantics
changes.
* Reformulate the handling for other instructions in terms of looking
for provenance captures, as that's what the code was essentially doing,
in a crude way. I'm including this to avoid some regressions for cases
where we can no longer infer function nofree, but can still infer
argument nofree.


  Commit: 35bfc00c5c8db8b5895b83045bbd9562691c0af1
      https://github.com/llvm/llvm-project/commit/35bfc00c5c8db8b5895b83045bbd9562691c0af1
  Author: Iris Shi <0.0 at owo.li>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/or-bitmask.ll

  Log Message:
  -----------
  [InstCombine] Fix type mismatch in `foldBitmaskMul` (#199920)

Resolves #199506.

`matchBitmaskMul` matches the form `!(A & N) ? 0 : N * C`.

When the select arms are splat vectors but A is a scalar, this produces
malformed ir like `%57 = and i64 %49, <4 x i64> splat (i64
3689348814741910323)`.

Reproducer: https://godbolt.org/z/EYzKTxcKn


  Commit: 4306b4ab9c12a8b9bf4314cbaa7400eeaa1e7ddc
      https://github.com/llvm/llvm-project/commit/4306b4ab9c12a8b9bf4314cbaa7400eeaa1e7ddc
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/ranges_uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/ranges_uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move_n.pass.cpp

  Log Message:
  -----------
  [libc++] Implement P3508R0: Wording for "constexpr for specialized memory algorithms" (#197313)

Resolves #118379

- Add `constexpr` to affected areas
- Add `constexpr` tests
- Update documentation

Tests were created with AI assistance.


  Commit: 5c95f6a859394757b92b0d63ff90b9175056deb6
      https://github.com/llvm/llvm-project/commit/5c95f6a859394757b92b0d63ff90b9175056deb6
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/test/COFF/arm64-relocs-imports.test

  Log Message:
  -----------
  [LLD] [COFF] Fix handling of immediates in ARM64_SECREL_HIGH12A (#200060)

Just like for PAGEBASE_REL21, the immediate in SECREL_HIGH12A is the
byte offset, not a page offset. The byte level offset is added to the
symbol offset, which only then after that gets shifted right by 12. This
makes the handling of this immediate consistent with what MS link.exe
does.

The existing testcase had a zero immediate in the instruction for this
relocation.

This makes it clear that immediate offsets with SECREL_HIGH12A do work
fine, where the byte level offsets end up carrying over to the upper
bits.


  Commit: 5dc8711b4e553ba0ddab673564ac9b6309862e81
      https://github.com/llvm/llvm-project/commit/5dc8711b4e553ba0ddab673564ac9b6309862e81
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/lib/Interfaces/MemorySlotInterfaces.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Transforms/mem2reg.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][mem2reg] Promote memory slots through transparent view operations (#196924)

This patch enables mem2reg to operate on load/store that are made
through cast/views of the memory slot (not directly using the SSA value
produced by the allocation op).

This is done by adding a new `PromotableAliaserInterface` interface that must
be implemented by operations that define view of the slot and through which
mem2reg should still happen.

This interface comes with three APIs. The first one allows the operation to
provide new MemorySlots that are aliasing an input MemorySlot. The slot pointers
of these new MemorySlot are results of the operation.

The other two APIs allows projecting the reaching values between the input and output
MemorySlot (one API for each direction).

Assisted by: Claude

RFC:
https://discourse.llvm.org/t/mlir-mem2reg-rfc-promote-memory-slots-through-transparent-view-operations/90761


  Commit: b51a8025bed107c5f9a8113a6ecf446f86eeb9b6
      https://github.com/llvm/llvm-project/commit/b51a8025bed107c5f9a8113a6ecf446f86eeb9b6
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp

  Log Message:
  -----------
  Revert "[clang] remove lots of "innocuous" addrspacecasts" (#199685)

Reverts llvm/llvm-project#197745

Broke AMDGPU HIP Kokkos bot:
https://lab.llvm.org/buildbot/#/builders/230/builds/958

Late reply as the breakage got lost in some trouble with the buildbot
fleet.

Co-authored-by: Kewen Meng <Kewen.Meng at amd.com>


  Commit: af772866888eb2e2053b5f4d784510006d760e62
      https://github.com/llvm/llvm-project/commit/af772866888eb2e2053b5f4d784510006d760e62
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A mlir/include/mlir/Target/SPIRV/SPIRVExtInstSets.h
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.h
    M mlir/lib/Target/SPIRV/TranslateRegistration.cpp
    R mlir/test/Target/SPIRV/debug-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info.mlir
    M mlir/unittests/Dialect/SPIRV/DeserializationTest.cpp

  Log Message:
  -----------
  [mlir][spirv] Add SPIR-V NonSemantic.Graph.DebugInfo (#199519)

Add serialization and deserialization support for the SPIR-V
NonSemantic.Graph.DebugInfo.1 extended instruction set used by ARM graph
modules.
    
When debug info emission is enabled, serialize DebugGraph,
DebugOperation,
and DebugTensor records for graph objects, TOSA operations, graph
tensors,
and tensor constants. Emit the records after the SPIR-V objects they
reference, and make DebugOperation point at the DebugGraph result id.
    
Deserialize these records back into MLIR locations and diagnose
malformed
or undefined debug-info references.
    
Enable SPV_KHR_non_semantic_info in the default TOSA-to-SPIR-V target
environment so debug info can be emitted by default.
    
Specification:

https://github.com/KhronosGroup/SPIRV-Registry/blob/main/nonsemantic/NonSemantic.Graph.DebugInfo.asciidoc

Signed-off-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Co-authored-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>


  Commit: 538140ff2cb74ab2a9496119686041ea509daa08
      https://github.com/llvm/llvm-project/commit/538140ff2cb74ab2a9496119686041ea509daa08
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/module.modulemap

  Log Message:
  -----------
  [clang] Add missing BuiltinAnchorSources.def to module map (#200125)

Started with 5db13643f4b7038db0ca304d9f8900122502935c.


  Commit: 626f4061e7f2d84813f5307bd03f35592e4b70c1
      https://github.com/llvm/llvm-project/commit/626f4061e7f2d84813f5307bd03f35592e4b70c1
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIRVToLLVM] Add conversions for more GL ops (#200115)


  Commit: 597b1376bab39259fb3a03fb320dcd15a8b8f2f2
      https://github.com/llvm/llvm-project/commit/597b1376bab39259fb3a03fb320dcd15a8b8f2f2
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
    M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIR-V][complex] Convert complex.add/sub/mul/div to SPIR-V ops (#200123)


  Commit: 3a50239454f81b6f6647021737bbf7797a06e00c
      https://github.com/llvm/llvm-project/commit/3a50239454f81b6f6647021737bbf7797a06e00c
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/TableGen/GlobalISelEmitter/HwModes.td
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp

  Log Message:
  -----------
  [GlobalISel] Replace `GIM_CheckFeatures` with `GIM_Try_CheckFeatures` (#198461)

This has two benefits. First, it slightly reduces the size of the match
table.
Secondly, if the target feature is not present, we can directly go to
the fail
case, instead of having to do another loop of the interpreter, speeding
up
rejection of rules that do not have the required target feature.

We could do the same with CheckSimplePredicate but it's less used (only
in the combiners I think)
so it is less of a priority.

```
FILE                                          OLD      NEW    DIFF%    SAME?
----                                      -------  -------    -----    -----
AArch64GenGlobalISel.inc                   192681   185938    -3,5%       no
AArch64GenPostLegalizeGICombiner.inc         4457     4457     0,0%      yes
AArch64GenPreLegalizeGICombiner.inc          9010     9009    -0,0%       no
AMDGPUGenGlobalISel.inc                    596402   568486    -4,7%       no
AMDGPUGenPostLegalizeGICombiner.inc          9240     9238    -0,0%       no
AMDGPUGenPreLegalizeGICombiner.inc           8987     8987     0,0%      yes
AMDGPUGenRegBankGICombiner.inc               1981     1980    -0,1%       no
```


  Commit: a63eacee2db2c6ea75c67aca729cc3d32426200b
      https://github.com/llvm/llvm-project/commit/a63eacee2db2c6ea75c67aca729cc3d32426200b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [VPlan] Don't use Ingredient to get type in VPWidenMemoryRecipe (NFC) (#200049)

The scalar load/store type is already available on the recipe: load
recipes inherit from VPSingleDefRecipe and expose it via
getScalarType(); store recipes can derive it from the stored value's
type via VPTypeAnalysis.

This migrates a number of lookups to be based on information already
available in VPlan directly.


  Commit: 0513c9cba2a02fb853b0af385c0b47503e6678ff
      https://github.com/llvm/llvm-project/commit/0513c9cba2a02fb853b0af385c0b47503e6678ff
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 5dc8711 (#200129)

This fixes 5dc8711b4e553ba0ddab673564ac9b6309862e81.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 8a9a82c53e82c8bcbde3f01cf674b8afc5fed753
      https://github.com/llvm/llvm-project/commit/8a9a82c53e82c8bcbde3f01cf674b8afc5fed753
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Remove redundant vp_merge pattern. NFC (#200116)

m_RemoveMask still matches even if there's no other mask combined, we
just need to check if Mask is null.


  Commit: 4503872fe57315e6df7dbc93128dbe6a02011872
      https://github.com/llvm/llvm-project/commit/4503872fe57315e6df7dbc93128dbe6a02011872
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M llvm/include/llvm/IR/Instruction.h
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll

  Log Message:
  -----------
  [IR][FunctionAttrs] Clarify memory effects of atomics (#193768)

FunctionAttrs was treating atomic instructions, including with ordering
stronger than monotonic, as only reading/writing their operand.

I don't think doing this is correct, because we model the ordering
constraints of synchronizing atomics via reading/writing "all" memory.
So e.g. if you have a function with a release store on an argument,
marking it as argmem-only is wrong, because that would permit reordering
accesses to other locations around it. (What this PR is doing is not
*sufficient* to model this correctly due to the fence-like effects on
not-yet-escaped memory, but it brings us closer to correctness.)

I initially tried to implement mayReadFromMemory() and
mayWriteToMemory() on top of getMemoryEffects(), but this caused
significant compile-time regressions, so I've kept the logic duplicated.


  Commit: 0e02ccdaf01081dbd947e192fb4769da7bf74d54
      https://github.com/llvm/llvm-project/commit/0e02ccdaf01081dbd947e192fb4769da7bf74d54
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm-c/Remarks.h
    M llvm/include/llvm-c/lto.h

  Log Message:
  -----------
  llvm: Fix most LLVM_C_ABI annotations (#199914)

This updates most LLVM_C_ABI annotations in the llvm-c headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.

These changes were done by a script fixing annotations on LLVM public
headers and manually checked.

This effort is tracked in #109483.


  Commit: 1235c442a3c08e9cb4a9d2a6c082f392ec0885f1
      https://github.com/llvm/llvm-project/commit/1235c442a3c08e9cb4a9d2a6c082f392ec0885f1
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:

  Log Message:
  -----------
  Fix Bazel build for 5dc8711 (#200142)

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 86a74788dcc851d501e33c70a88f14dc47293b9f
      https://github.com/llvm/llvm-project/commit/86a74788dcc851d501e33c70a88f14dc47293b9f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] matchBinaryPermuteShuffle - match to X86ISD::SHLD funnel shift patterns (#200136)

Add matchShuffleAsVSHLD helper to recognise shuffle masks that can fold to funnel shifts

Fixes #145276


  Commit: 174eb79572b3433aa338ede31815fa8fa6a13b29
      https://github.com/llvm/llvm-project/commit/174eb79572b3433aa338ede31815fa8fa6a13b29
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/arm/fixdfdi.S
    A compiler-rt/lib/builtins/arm/fixdfsi.S
    A compiler-rt/lib/builtins/arm/fixsfdi.S
    A compiler-rt/lib/builtins/arm/fixsfsi.S
    A compiler-rt/lib/builtins/arm/fixunsdfdi.S
    A compiler-rt/lib/builtins/arm/fixunsdfsi.S
    A compiler-rt/lib/builtins/arm/fixunssfdi.S
    A compiler-rt/lib/builtins/arm/fixunssfsi.S
    A compiler-rt/test/builtins/Unit/fixdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfsinew_test.c

  Log Message:
  -----------
  [compiler-rt][ARM] Optimized FP -> integer conversions (#179927)

This commit adds a total of 8 new functions, all converting a
floating-point number to an integer, varying in 3 independent choices:

* input float format (32-bit or 64-bit)
* output integer size (32-bit or 64-bit)
* output integer type (signed or unsigned)


  Commit: cee1c3ba576fc6259510313b73fde56150268c52
      https://github.com/llvm/llvm-project/commit/cee1c3ba576fc6259510313b73fde56150268c52
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    R mlir/test/Dialect/Tosa/fold_concats.mlir

  Log Message:
  -----------
  [mlir][tosa] Limit consecutive concat rewrite to MAX_TENSOR_LIST_SIZE (#199051)

Previously folding could produce an operation that would later be
considered invalid in validation due to the number of operands it has.
This change adds a check to prevent rewriting consecutive concat
operations if the resulting operation has more than MAX_TENSOR_LIST_SIZE
operands, based on the selected target environment level. If no level is
specified, folding will proceed as before.

In addition, this change rewrites the concat folder as a
canonicalization pattern, since it is not a fold of constant operands.
The change also consolidates testing in
canonicalize.mlir.


  Commit: 172ea47e6d5b04c4849991ffd5ab0f87d444ab86
      https://github.com/llvm/llvm-project/commit/172ea47e6d5b04c4849991ffd5ab0f87d444ab86
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use separate tables for VOPD3X and VOPDY in `getCanBeVOPD` (NFC) (#199072)

With this change tables for valid VOPD3X (VOPDX still uses
`getVOPDComponentHelper`) and VOPDY operations are
generated through TableGen. This simplifies the look-up
leading to a 2-3% compile-time speed-up for tested shaders
where `getCanBeVOPD` is on a hot path.

Assisted-by: Claude Code


  Commit: e689a6a82bf360994f3f8862454c810ef12901ee
      https://github.com/llvm/llvm-project/commit/e689a6a82bf360994f3f8862454c810ef12901ee
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/new-issues-labeler.yml
    M .github/workflows/docs.yml
    M .github/workflows/issue-release-workflow.yml
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libc-overlay-tests.yml
    M .github/workflows/libc-shared-tests.yml
    M .github/workflows/libclang-abi-tests.yml
    M .github/workflows/llvm-abi-tests.yml
    M .github/workflows/pr-code-lint.yml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-doxygen.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/sycl-tests.yml
    M .github/workflows/unprivileged-download-artifact/action.yml
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/test/lit.cfg.py
    A bolt/test/merge-fdata-no-lbr-event-multi.test
    A bolt/test/merge-fdata-no-lbr-event.test
    M bolt/tools/driver/llvm-bolt.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
    M clang-tools-extra/clangd/ProjectModules.cpp
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-doc/compact.cpp
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/test/clang-doc/index.cpp
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
    M clang-tools-extra/test/clang-doc/json/inheritance.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
    M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
    M clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclarationName.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/Transforms/CIRTransformUtils.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
    A clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
    M clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRTransformUtils.cpp
    M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Headers/wasm_simd128.h
    M clang/lib/Interpreter/IncrementalParser.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
    M clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/unions.cpp
    M clang/test/AST/ast-dump-aarch64-mte.c
    M clang/test/AST/ast-dump-decl.cpp
    M clang/test/AST/ast-dump-expr-json.cpp
    M clang/test/AST/ast-dump-expr.cpp
    M clang/test/AST/ast-dump-linkage-internal.cpp
    M clang/test/AST/ast-dump-linkage.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp
    A clang/test/AST/ast-print-amdgcn-predicate.c
    A clang/test/ASTMerge/class-template-spec/Inputs/class-template-spec.cpp
    A clang/test/ASTMerge/class-template-spec/test.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    A clang/test/Analysis/Checkers/WebKit/unretained-call-args-member.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    A clang/test/Analysis/ctu/constraintsatisfaction.cpp
    A clang/test/CIR/CodeGen/cleanup-throw-from-cleanup.cpp
    A clang/test/CIR/CodeGen/inline-extern-force-codegen.c
    A clang/test/CIR/CodeGen/switch-pre-case-stmts.cpp
    M clang/test/CIR/CodeGen/try-catch.cpp
    M clang/test/CIR/CodeGenCUDA/device-stub.cu
    A clang/test/CIR/CodeGenHIP/builtins-amdgcn-image.hip
    M clang/test/CMakeLists.txt
    A clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    A clang/test/CodeGen/AArch64/mskernel-interlocked.c
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/getset.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    M clang/test/CodeGen/AArch64/poly64.c
    A clang/test/CodeGen/X86/mskernel-interlocked.c
    M clang/test/CodeGen/arm64-mte.c
    A clang/test/CodeGen/builtin-clear-padding-codegen.c
    M clang/test/CodeGen/builtin-masked.c
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
    M clang/test/CodeGen/lto-newpm-pipeline.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGen/unique-internal-linkage-names.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/device-vtable.cu
    A clang/test/CodeGenCUDA/implicit-hd-dtor-trap-stub-hip.hip
    A clang/test/CodeGenCUDA/implicit-hd-explicit-inst-hip.hip
    A clang/test/CodeGenCUDA/implicit-hd-overload-ambig-hip.hip
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp
    A clang/test/CodeGenCXX/builtin-clear-padding-codegen.cpp
    M clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
    M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
    M clang/test/CodeGenCXX/visibility.cpp
    M clang/test/CodeGenCoroutines/coro-gro4.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-03.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    M clang/test/CodeGenDirectX/Builtins/dot2add.c
    A clang/test/CodeGenHIP/offload-pgo-sections.hip
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    A clang/test/CodeGenHIP/profile-coverage-mapping.hip
    M clang/test/CodeGenHLSL/ArrayAssignable.logicalptr.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayReturn.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
    M clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
    M clang/test/CodeGenHLSL/builtins/BoolSwizzles.hlsl
    M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/f16tof32-builtin.hlsl
    M clang/test/CodeGenHLSL/builtins/f16tof32.hlsl
    M clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
    M clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    M clang/test/CodeGenHLSL/builtins/mad.hlsl
    M clang/test/CodeGenHLSL/convergence/cf.for.plain.hlsl
    M clang/test/CodeGenHLSL/convergence/do.while.hlsl
    M clang/test/CodeGenHLSL/convergence/entry.point.hlsl
    M clang/test/CodeGenHLSL/convergence/for.hlsl
    M clang/test/CodeGenHLSL/convergence/global_array.hlsl
    M clang/test/CodeGenHLSL/convergence/while.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-store.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-methods.hlsl
    M clang/test/CodeGenHLSL/resources/CBufferMatrixSingleSubscriptSwizzle.hlsl
    M clang/test/CodeGenHLSL/resources/MatrixElement_cbuffer.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
    M clang/test/CodeGenHLSL/resources/Texture2D-Mips.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-global-to-local.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
    M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-array-to-local.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs-array.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs-inheritance.hlsl
    M clang/test/CodeGenHLSL/resources/resources-in-structs.hlsl
    M clang/test/CodeGenHLSL/static-local-ctor.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/DebugInfo/Generic/sysroot-sdk.c
    M clang/test/Driver/amdgpu-validate-sanitize.cl
    R clang/test/Driver/clang-offload-bundler-asserts-on.c
    A clang/test/Driver/clang-offload-bundler-multi-compress.c
    R clang/test/Driver/clang-offload-bundler-standardize.c
    R clang/test/Driver/clang-offload-bundler-zlib.c
    R clang/test/Driver/clang-offload-bundler-zstd.c
    R clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/crash-ir-repro.cpp
    R clang/test/Driver/fat-archive-unbundle-ext.c
    M clang/test/Driver/hexagon-toolchain-elf.c
    M clang/test/Driver/hip-options.hip
    R clang/test/Driver/linker-wrapper-canonical-prefixes.c
    R clang/test/Driver/linker-wrapper-hip-amdgcnspirv.c
    R clang/test/Driver/linker-wrapper-hip-no-rdc.c
    R clang/test/Driver/linker-wrapper-image.c
    R clang/test/Driver/linker-wrapper-llvm-help.c
    R clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/msvc-link.c
    R clang/test/Driver/nvlink-wrapper.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/split-debug.c
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/Modules/debug-info-moduleimport.m
    M clang/test/Modules/safe_buffers_optout.cpp
    A clang/test/Modules/template-default-args-2.cpp
    A clang/test/Modules/template-default-args-3.cpp
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-canonical-prefixes.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-amdgcnspirv.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-llvm-help.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper.c
    A clang/test/OffloadTools/clang-linker-wrapper/lit.local.cfg
    A clang/test/OffloadTools/clang-linker-wrapper/openmp-spirv.cpp
    A clang/test/OffloadTools/clang-nvlink-wrapper/nvlink-wrapper.c
    A clang/test/OffloadTools/clang-offload-bundler/asserts-on.c
    A clang/test/OffloadTools/clang-offload-bundler/basic.c
    A clang/test/OffloadTools/clang-offload-bundler/fat-archive-unbundle-ext.c
    A clang/test/OffloadTools/clang-offload-bundler/standardize.c
    A clang/test/OffloadTools/clang-offload-bundler/zlib.c
    A clang/test/OffloadTools/clang-offload-bundler/zstd.c
    A clang/test/OffloadTools/clang-sycl-linker/basic.ll
    A clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    A clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-complex.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files-2.cpp
    M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files.cpp
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Preprocessor/wasm-target-features.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    A clang/test/Sema/builtin-clear-padding.c
    M clang/test/Sema/builtins-arm64-mte.c
    M clang/test/Sema/builtins-elementwise-math.c
    A clang/test/Sema/inline-asm-constraint-embedded-null.c
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-invalidations.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCUDA/dtor.cu
    A clang/test/SemaCUDA/implicit-hd-dtor-explicit-instantiation.cu
    A clang/test/SemaCUDA/implicit-hd-explicit-inst-organic-caller.cu
    A clang/test/SemaCUDA/implicit-hd-overload-ambig-organic-caller.cu
    A clang/test/SemaCXX/builtin-clear-padding.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx2c-decomposition.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-issue-79379.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-pch.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-template-instantiation-notes.cpp
    M clang/test/SemaHLSL/Resources/static_resources.hlsl
    A clang/test/SemaOpenACC/compute-construct-reduction-vla.c
    A clang/test/SemaOpenACC/compute-construct-reduction-vla.cpp
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl
    A clang/test/SemaOpenCL/intel-bfloat16-conversions-builtins.cl
    A clang/test/SemaOpenCL/intel-split-work-group-barrier-builtins.cl
    M clang/test/SemaTemplate/generic-lambda.cpp
    M clang/test/SemaTemplate/partial-spec-instantiate.cpp
    R clang/test/Tooling/clang-linker-wrapper-spirv.cpp
    R clang/test/Tooling/clang-sycl-linker-split-mode.ll
    R clang/test/Tooling/clang-sycl-linker-triple.ll
    R clang/test/Tooling/clang-sycl-linker.ll
    M clang/test/Tooling/lit.local.cfg
    M clang/test/lit.cfg.py
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
    R clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
    M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
    M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
    M clang/unittests/Tooling/Syntax/BuildTreeTest.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/www/cxx_dr_status.html
    M compiler-rt/include/sanitizer/common_interface_defs.h
    M compiler-rt/lib/asan/asan_errors.cpp
    M compiler-rt/lib/asan/asan_errors.h
    M compiler-rt/lib/asan/asan_poisoning.cpp
    M compiler-rt/lib/asan/asan_report.cpp
    M compiler-rt/lib/asan/asan_report.h
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/arm/extendsfdf2.S
    A compiler-rt/lib/builtins/arm/fixdfdi.S
    A compiler-rt/lib/builtins/arm/fixdfsi.S
    A compiler-rt/lib/builtins/arm/fixsfdi.S
    A compiler-rt/lib/builtins/arm/fixsfsi.S
    A compiler-rt/lib/builtins/arm/fixunsdfdi.S
    A compiler-rt/lib/builtins/arm/fixunsdfsi.S
    A compiler-rt/lib/builtins/arm/fixunssfdi.S
    A compiler-rt/lib/builtins/arm/fixunssfsi.S
    A compiler-rt/lib/builtins/arm/truncdfsf2.S
    M compiler-rt/lib/builtins/clear_cache.c
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    R compiler-rt/test/asan/TestCases/copy_container_annotations.cpp
    A compiler-rt/test/builtins/Unit/extendsfdf2new_test.c
    A compiler-rt/test/builtins/Unit/fixdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfsinew_test.c
    A compiler-rt/test/builtins/Unit/truncdfsf2new_test.c
    M cross-project-tests/intrinsic-header-tests/wasm_simd128.c
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake
    M flang-rt/include/flang-rt/runtime/io-stmt.h
    M flang-rt/lib/runtime/CMakeLists.txt
    M flang-rt/lib/runtime/io-api-common.h
    A flang-rt/lib/runtime/io-stmt-minimal.cpp
    M flang/include/flang/Common/Fortran-consts.h
    M flang/include/flang/Lower/CallInterface.h
    M flang/include/flang/Lower/ConvertVariable.h
    M flang/include/flang/Lower/Support/PrivateReductionUtils.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    A flang/include/flang/Optimizer/Dialect/FIRBoxUtils.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertConstant.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/Support/PrivateReductionUtils.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    A flang/lib/Optimizer/Dialect/FIRBoxUtils.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/openmp-utils.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/type.cpp
    M flang/lib/Support/Fortran.cpp
    M flang/test/Fir/array-coor-canonicalization.fir
    A flang/test/HLFIR/c_devptr_byvalue.cuf
    M flang/test/Lower/OpenMP/Todo/omp-declare-reduction-advanced-types.f90
    M flang/test/Lower/OpenMP/Todo/reduction-character-dynamic-length.f90
    A flang/test/Lower/OpenMP/copyprivate6.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-derived.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-intrinsic.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-target-derived.f90
    A flang/test/Lower/OpenMP/declare-reduction-no-initializer-unsupported.f90
    A flang/test/Lower/OpenMP/declare-reduction-target-intrinsic.f90
    A flang/test/Semantics/OpenMP/declare-simd-interface-body.f90
    M flang/test/Semantics/OpenMP/declare-simd-uniform.f90
    M flang/test/Semantics/OpenMP/linear-clause03.f90
    A flang/test/Semantics/OpenMP/workdistribute05.f90
    A flang/test/Semantics/PowerPC/ppc-vector-diagnostics.f90
    M flang/test/Transforms/FIRToMemRef/array-coor-rebox-slice-shape.mlir
    M flang/test/Transforms/FIRToMemRef/array-coor-slice-shift.mlir
    M flang/test/Transforms/FIRToMemRef/slice-projected.mlir
    M libc/config/baremetal/config.json
    M libc/include/CMakeLists.txt
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/mprotect.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/munmap.h
    A libc/src/__support/net/CMakeLists.txt
    A libc/src/__support/net/address.cpp
    A libc/src/__support/net/address.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/arpa/inet/CMakeLists.txt
    M libc/src/arpa/inet/inet_addr.cpp
    M libc/src/arpa/inet/inet_aton.cpp
    M libc/startup/linux/aarch64/CMakeLists.txt
    M libc/startup/linux/aarch64/tls.cpp
    M libc/startup/linux/riscv/CMakeLists.txt
    M libc/startup/linux/riscv/tls.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    M libc/startup/linux/x86_64/tls.cpp
    M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
    M libc/test/src/arpa/inet/inet_aton_test.cpp
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/utils/libctest/format.py
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/lib/generic/relational/clc_signbit.cl
    A libclc/clc/lib/generic/relational/clc_signbit.inc
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/copy_if.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_copy_if.h
    M libcxx/include/__algorithm/ranges_partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_unique_copy.h
    M libcxx/include/__algorithm/unique_copy.h
    A libcxx/include/__concepts/referenceable.h
    M libcxx/include/__config
    M libcxx/include/__configuration/hardening.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/concepts.h
    M libcxx/include/__iterator/iter_move.h
    M libcxx/include/__iterator/iterator_traits.h
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/__ranges/adjacent_transform_view.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/__ranges/zip_transform_view.h
    M libcxx/include/__type_traits/add_pointer.h
    R libcxx/include/__type_traits/is_referenceable.h
    M libcxx/include/__type_traits/remove_pointer.h
    M libcxx/include/any
    M libcxx/include/map
    M libcxx/include/module.modulemap.in
    M libcxx/include/set
    M libcxx/include/string
    M libcxx/include/tuple
    M libcxx/test/libcxx-03/vendor/apple/disable-availability.sh.cpp
    A libcxx/test/libcxx/atomics/builtin_clear_padding.pass.cpp
    A libcxx/test/libcxx/utilities/function.objects/block.func.compile.pass.cpp
    R libcxx/test/libcxx/utilities/meta/is_referenceable.compile.pass.cpp
    M libcxx/test/libcxx/utilities/meta/is_within_lifetime.verify.cpp
    M libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/selftest/modules/std-module.sh.cpp
    M libcxx/test/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/modules/std.pass.cpp
    M libcxx/test/std/numerics/c.math/signbit.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
    A libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_reference_types.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/reference_types.verify.cpp
    A libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.const.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.verify.cpp
    R libcxx/test/std/utilities/memory/specialized.algorithms/destroy.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/ranges_uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/ranges_uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move_n.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y.pass.cpp
    M libcxx/test/std/utilities/meta/meta.const.eval/is_within_lifetime.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.rel/is_virtual_base_of.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/objc_support.compile.pass.mm
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
    A libcxx/test/support/algorithms.h
    M libcxx/utils/ci/docker/docker-compose.yml
    M libsycl/test/lit.cfg.py
    M lld/COFF/Chunks.cpp
    M lld/COFF/Writer.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/BPSectionOrderer.cpp
    M lld/MachO/ConcatOutputSection.cpp
    M lld/MachO/ConcatOutputSection.h
    M lld/MachO/InputSection.h
    M lld/MachO/LTO.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/test/COFF/arm64-relocs-imports.test
    M lld/test/COFF/ctors_dtors_priority.s
    A lld/test/ELF/linkerscript/overlap-nobits.s
    M lld/test/ELF/lto/devirt_vcall_vis_export_dynamic.ll
    M lld/test/ELF/lto/devirt_vcall_vis_public.ll
    M lld/test/ELF/lto/devirt_vcall_vis_shared_def.ll
    A lld/test/MachO/Inputs/large-lto-object.ll
    M lld/test/MachO/arm64-thunks.s
    A lld/test/MachO/eh-frame-ordering.s
    M lld/test/MachO/lto-object-path.ll
    M lld/test/wasm/alias.s
    M lld/test/wasm/build-id.test
    M lld/test/wasm/ctor-return-value.s
    M lld/test/wasm/duplicate-global-imports.s
    M lld/test/wasm/export-optional.s
    M lld/test/wasm/externref.s
    M lld/test/wasm/function-imports-first.ll
    M lld/test/wasm/function-imports.s
    M lld/test/wasm/gc-imports.s
    M lld/test/wasm/gc-sections.ll
    M lld/test/wasm/global-base.test
    M lld/test/wasm/globals.s
    M lld/test/wasm/lto/tls.ll
    M lld/test/wasm/map-file.s
    M lld/test/wasm/merge-string-debug.s
    M lld/test/wasm/mutable-global-exports.s
    M lld/test/wasm/name-section-mangling.s
    M lld/test/wasm/signature-mismatch-export.ll
    M lld/test/wasm/signature-mismatch.s
    M lld/test/wasm/stack-first.test
    A lld/test/wasm/stack-pointer-abi.s
    M lld/test/wasm/startstop.ll
    M lld/test/wasm/table-base.s
    M lld/test/wasm/tag-section.ll
    A lld/test/wasm/thread-context-abi-mismatch.s
    M lld/test/wasm/tls-base-non-shared-memory.s
    A lld/test/wasm/tls-libcall.s
    M lld/test/wasm/undefined-weak-call.s
    M lld/test/wasm/unresolved-symbols-dynamic.s
    M lld/test/wasm/weak-undefined-pic.s
    M lld/test/wasm/weak-undefined.s
    M lld/wasm/Config.h
    M lld/wasm/Driver.cpp
    M lld/wasm/Options.td
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/Writer.cpp
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/include/lldb/Core/DataFileCache.h
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/Symbol/Symtab.h
    M lldb/include/lldb/Utility/DataEncoder.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/DataFileCache.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/source/ValueObject/ValueObjectVTable.cpp
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/TestEnumValueLookup.py
    A lldb/test/API/commands/frame/var-dil/expr/EnumValueLookup/main.cpp
    A lldb/test/API/functionalities/gdb_remote_client/TestUnavailableRegisters.py
    M lldb/test/API/functionalities/vtable/TestVTableValue.py
    M lldb/test/API/lang/objc/modules-auto-import/Makefile
    M lldb/test/API/lang/objc/modules-auto-import/TestModulesAutoImport.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lldbtest.py
    M lldb/test/Shell/Commands/command-dil-diagnostics.test
    M lldb/test/Shell/Commands/command-module-hook-fire.test
    M lldb/test/Shell/Commands/process-attach-dummy.test
    M lldb/test/Shell/ObjectFile/MachO/section-overflow-binary.test
    M lldb/test/Shell/lit.cfg.py
    M lldb/tools/debugserver/source/RNBRemote.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/OutputRedirector.cpp
    M lldb/tools/lldb-dap/OutputRedirector.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
    M lldb/unittests/DAP/Handler/DisconnectTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/Host/SocketTest.cpp
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CMake.rst
    M llvm/docs/CodingStandards.rst
    M llvm/docs/CommandGuide/llvm-mca.rst
    M llvm/docs/Coroutines.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ProgrammersManual.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SandboxIR.md
    M llvm/docs/SourceLevelDebugging.rst
    R llvm/docs/requirements-hashed.txt
    M llvm/docs/requirements.txt
    A llvm/docs/requirements.txt.in
    M llvm/include/llvm-c/Remarks.h
    M llvm/include/llvm-c/lto.h
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/BinaryFormat/Dwarf.h
    M llvm/include/llvm/Bitcode/BitcodeReader.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineMemOperand.h
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/FunctionProperties.def
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/MemoryModelRelaxationAnnotations.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/MC/MCDwarf.h
    A llvm/include/llvm/Object/BBAddrMap.def
    M llvm/include/llvm/Object/BBAddrMap.h
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/Support/FileSystem.h
    M llvm/include/llvm/Support/MemoryBuffer.h
    M llvm/include/llvm/Support/Win64EH.h
    M llvm/include/llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h
    M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
    M llvm/include/llvm/Transforms/Coroutines/CoroCleanup.h
    M llvm/include/llvm/Transforms/Coroutines/CoroConditionalWrapper.h
    M llvm/include/llvm/Transforms/Coroutines/CoroEarly.h
    M llvm/include/llvm/Transforms/Coroutines/CoroElide.h
    M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
    M llvm/include/llvm/Transforms/IPO/Annotation2Metadata.h
    M llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h
    M llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h
    M llvm/include/llvm/Transforms/IPO/ConstantMerge.h
    M llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h
    M llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
    M llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h
    M llvm/include/llvm/Transforms/IPO/ExpandVariadics.h
    M llvm/include/llvm/Transforms/IPO/FatLTOCleanup.h
    M llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h
    M llvm/include/llvm/Transforms/IPO/GlobalOpt.h
    M llvm/include/llvm/Transforms/IPO/GlobalSplit.h
    M llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    M llvm/include/llvm/Transforms/IPO/LoopExtractor.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/include/llvm/Transforms/IPO/OpenMPOpt.h
    M llvm/include/llvm/Transforms/IPO/PartialInlining.h
    M llvm/include/llvm/Transforms/IPO/SCCP.h
    M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
    M llvm/include/llvm/Transforms/Instrumentation/BlockCoverageInference.h
    M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
    M llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfLowering.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOForceFunctionAttrs.h
    M llvm/include/llvm/Transforms/Scalar/ADCE.h
    M llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
    M llvm/include/llvm/Transforms/Scalar/AnnotationRemarks.h
    M llvm/include/llvm/Transforms/Scalar/BDCE.h
    M llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h
    M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
    M llvm/include/llvm/Transforms/Scalar/ConstraintElimination.h
    M llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
    M llvm/include/llvm/Transforms/Scalar/DCE.h
    M llvm/include/llvm/Transforms/Scalar/DFAJumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h
    M llvm/include/llvm/Transforms/Scalar/DivRemPairs.h
    M llvm/include/llvm/Transforms/Scalar/DropUnnecessaryAssumes.h
    M llvm/include/llvm/Transforms/Scalar/ExpandMemCmp.h
    M llvm/include/llvm/Transforms/Scalar/FlattenCFG.h
    M llvm/include/llvm/Transforms/Scalar/Float2Int.h
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/include/llvm/Transforms/Scalar/GuardWidening.h
    M llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h
    M llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h
    M llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h
    M llvm/include/llvm/Transforms/Scalar/InferAddressSpaces.h
    M llvm/include/llvm/Transforms/Scalar/InferAlignment.h
    M llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h
    M llvm/include/llvm/Transforms/Scalar/JumpTableToSwitch.h
    M llvm/include/llvm/Transforms/Scalar/LICM.h
    M llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
    M llvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
    M llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h
    M llvm/include/llvm/Transforms/Scalar/LoopDeletion.h
    M llvm/include/llvm/Transforms/Scalar/LoopDistribute.h
    M llvm/include/llvm/Transforms/Scalar/LoopFlatten.h
    M llvm/include/llvm/Transforms/Scalar/LoopFuse.h
    M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
    M llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h
    M llvm/include/llvm/Transforms/Scalar/LoopInterchange.h
    M llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h
    M llvm/include/llvm/Transforms/Scalar/LoopPredication.h
    M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
    M llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
    M llvm/include/llvm/Transforms/Scalar/LoopSink.h
    M llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h
    M llvm/include/llvm/Transforms/Scalar/LoopTermFold.h
    M llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
    M llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
    M llvm/include/llvm/Transforms/Scalar/LoopVersioningLICM.h
    M llvm/include/llvm/Transforms/Scalar/LowerAtomicPass.h
    M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
    M llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
    M llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h
    M llvm/include/llvm/Transforms/Scalar/LowerWidenableCondition.h
    M llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
    M llvm/include/llvm/Transforms/Scalar/MergeICmps.h
    M llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
    M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
    M llvm/include/llvm/Transforms/Scalar/NewGVN.h
    M llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
    M llvm/include/llvm/Transforms/Scalar/PlaceSafepoints.h
    M llvm/include/llvm/Transforms/Scalar/Reg2Mem.h
    M llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h
    M llvm/include/llvm/Transforms/Scalar/SROA.h
    M llvm/include/llvm/Transforms/Scalar/ScalarizeMaskedMemIntrin.h
    M llvm/include/llvm/Transforms/Scalar/SeparateConstOffsetFromGEP.h
    M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
    M llvm/include/llvm/Transforms/Scalar/Sink.h
    M llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h
    M llvm/include/llvm/Transforms/Scalar/StraightLineStrengthReduce.h
    M llvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
    M llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h
    M llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
    M llvm/include/llvm/Transforms/Utils/AddDiscriminators.h
    A llvm/include/llvm/Transforms/Utils/AssignGUID.h
    M llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h
    M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
    M llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
    M llvm/include/llvm/Transforms/Utils/CanonicalizeFreezeInLoops.h
    M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
    M llvm/include/llvm/Transforms/Utils/CountVisits.h
    M llvm/include/llvm/Transforms/Utils/CtorUtils.h
    M llvm/include/llvm/Transforms/Utils/DXILUpgrade.h
    M llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
    M llvm/include/llvm/Transforms/Utils/DeclareRuntimeLibcalls.h
    M llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h
    M llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h
    M llvm/include/llvm/Transforms/Utils/Evaluator.h
    M llvm/include/llvm/Transforms/Utils/FixIrreducible.h
    M llvm/include/llvm/Transforms/Utils/GlobalStatus.h
    M llvm/include/llvm/Transforms/Utils/GuardUtils.h
    M llvm/include/llvm/Transforms/Utils/HelloWorld.h
    M llvm/include/llvm/Transforms/Utils/IRNormalizer.h
    M llvm/include/llvm/Transforms/Utils/InjectTLIMappings.h
    M llvm/include/llvm/Transforms/Utils/InstructionNamer.h
    M llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h
    M llvm/include/llvm/Transforms/Utils/LoopConstrainer.h
    M llvm/include/llvm/Transforms/Utils/LoopPeel.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/include/llvm/Transforms/Utils/LoopVersioning.h
    M llvm/include/llvm/Transforms/Utils/LowerAtomic.h
    M llvm/include/llvm/Transforms/Utils/LowerGlobalDtors.h
    M llvm/include/llvm/Transforms/Utils/LowerIFunc.h
    M llvm/include/llvm/Transforms/Utils/LowerInvoke.h
    M llvm/include/llvm/Transforms/Utils/LowerSwitch.h
    M llvm/include/llvm/Transforms/Utils/LowerVectorIntrinsics.h
    M llvm/include/llvm/Transforms/Utils/MatrixUtils.h
    M llvm/include/llvm/Transforms/Utils/MemoryOpRemark.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/include/llvm/Transforms/Utils/MetaRenamer.h
    M llvm/include/llvm/Transforms/Utils/MisExpect.h
    M llvm/include/llvm/Transforms/Utils/MoveAutoInit.h
    M llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h
    M llvm/include/llvm/Transforms/Utils/RelLookupTableConverter.h
    M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileInference.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseUtil.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/include/llvm/Transforms/Utils/StripConvergenceIntrinsics.h
    M llvm/include/llvm/Transforms/Utils/StripGCRelocates.h
    M llvm/include/llvm/Transforms/Utils/StripNonLineTableDebugInfo.h
    M llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
    M llvm/include/llvm/Transforms/Utils/UnifyLoopExits.h
    M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
    M llvm/include/llvm/Transforms/Utils/VNCoercion.h
    M llvm/include/llvm/Transforms/Vectorize/LoopIdiomVectorize.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
    M llvm/include/llvm/Transforms/Vectorize/VectorCombine.h
    M llvm/include/module.modulemap
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Analysis/GlobalsModRef.cpp
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/BinaryFormat/Dwarf.cpp
    M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GCRootLowering.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/RemoveRedundantDebugValues.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LegacyPassManager.cpp
    M llvm/lib/IR/MemoryModelRelaxationAnnotations.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/MC/CMakeLists.txt
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/Object/OffloadBundle.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/CMakeLists.txt
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Support/Unix/Path.inc
    A llvm/lib/Support/Win64EH.cpp
    M llvm/lib/Support/Windows/Path.inc
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SchedCyclone.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/CMakeLists.txt
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
    M llvm/lib/Target/Hexagon/Hexagon.td
    M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonSubtarget.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
    M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstrAltivec.td
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvbdota.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvzip.td
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/InferAlignment.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    A llvm/lib/Transforms/Utils/AssignGUID.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CloneModule.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Analysis/FunctionPropertiesAnalysis/func-properties-analysis.ll
    A llvm/test/Analysis/FunctionPropertiesAnalysis/pipeline.ll
    R llvm/test/Analysis/FunctionPropertiesAnalysis/properties-stats.ll
    A llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
    M llvm/test/Assembler/dicompileunit.ll
    M llvm/test/Assembler/index-value-order.ll
    A llvm/test/Assembler/invalid-dicompileunit-dialect.ll
    M llvm/test/Assembler/target-type-param-errors.ll
    A llvm/test/Bitcode/dicompileunit-dialect.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-function-summary.ll
    M llvm/test/Bitcode/upgrade-DICompileUnit-no-versioned-language.test
    M llvm/test/CodeGen/AArch64/bf16-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fast-isel-branch-cond-split.ll
    M llvm/test/CodeGen/AArch64/fneg.ll
    M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
    A llvm/test/CodeGen/AArch64/interleaved-store-noninbounds-gep.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
    M llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
    M llvm/test/CodeGen/AMDGPU/av-spill-expansion-with-machine-cp.mir
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
    M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/call-skip.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/dbg-info-inline-at.ll
    A llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/ds-read2-write2-debug-info.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    A llvm/test/CodeGen/AMDGPU/elf-note-null-terminator.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    A llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir
    A llvm/test/CodeGen/AMDGPU/extract-vector-elt-binop-build-vector.ll
    M llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
    A llvm/test/CodeGen/AMDGPU/fshl-scalar-shift-zero.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
    M llvm/test/CodeGen/AMDGPU/global-alias.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/inflate-av-remat-imm.mir
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
    M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
    M llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir
    M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minimum.f64.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-single-wave-workgroup-memops.ll
    M llvm/test/CodeGen/AMDGPU/memset-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/nested-calls.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill-offset-overflow-gfx950.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll
    M llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir
    M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.ll
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
    M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
    M llvm/test/CodeGen/AMDGPU/spill-restore-partial-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir
    M llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    M llvm/test/CodeGen/AMDGPU/spill_kill_v16.mir
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/spillv16.mir
    M llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.waterfall.ll
    M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
    M llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wait-xcnt-drain.mir
    M llvm/test/CodeGen/AMDGPU/wait-xcnt.mir
    M llvm/test/CodeGen/AMDGPU/waterfall-call-target-av-register-failure.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/Generic/gc-lowering.ll
    M llvm/test/CodeGen/Hexagon/inst_masked_store_bug1.ll
    M llvm/test/CodeGen/Hexagon/isel-hvx-pred-bitcast-order.ll
    A llvm/test/CodeGen/Hexagon/reserved-regs.ll
    A llvm/test/CodeGen/LoongArch/musttail-call.ll
    A llvm/test/CodeGen/LoongArch/musttail-indirect-args.ll
    A llvm/test/CodeGen/PowerPC/partial-red.ll
    A llvm/test/CodeGen/PowerPC/ppc-i64-to-fp.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/bitreverse-zbkb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insert-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/move-merge-zdinx-mvsa-regression.mir
    A llvm/test/CodeGen/RISCV/rvp-bitcast-const-fold.ll
    M llvm/test/CodeGen/RISCV/rvp-narrowing-shift-trunc.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/masked-udiv.ll
    A llvm/test/CodeGen/RISCV/rvv/pr199509.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll
    A llvm/test/CodeGen/SystemZ/foldmem-regalloc.mir
    M llvm/test/CodeGen/SystemZ/foldmemop-global.mir
    A llvm/test/CodeGen/WebAssembly/stack-abi.ll
    M llvm/test/CodeGen/WebAssembly/thread_pointer.ll
    M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll
    M llvm/test/CodeGen/X86/avoid-sfb.ll
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-mask-op.ll
    A llvm/test/CodeGen/X86/branchfolding-atomic-mmo.ll
    M llvm/test/CodeGen/X86/fat-lto-section.ll
    A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll
    A llvm/test/CodeGen/X86/volatile-atomicrmw.ll
    M llvm/test/DebugInfo/AMDGPU/cfi.ll
    M llvm/test/DebugInfo/AMDGPU/debug-loc-copy.ll
    A llvm/test/DebugInfo/COFF/apx-egpr.ll
    A llvm/test/DebugInfo/Generic/debuginfofinder-composite-type.ll
    A llvm/test/DebugInfo/WebAssembly/thread-context-abi.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
    A llvm/test/Instrumentation/InstrProfiling/gpu-weak.ll
    M llvm/test/LTO/Resolution/X86/not-prevailing-alias.ll
    M llvm/test/LTO/Resolution/X86/not-prevailing-weak-aliasee.ll
    M llvm/test/Linker/funcimport2.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    R llvm/test/MC/AsmParser/cfi-unfinished-frame.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/ELF/cfi-scope-errors.s
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/rvv/zvfbdota32f-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfbdota32f.s
    A llvm/test/MC/RISCV/rvv/zvfqwbdota8f-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfqwbdota8f.s
    A llvm/test/MC/RISCV/rvv/zvfwbdota16bf-invalid.s
    A llvm/test/MC/RISCV/rvv/zvfwbdota16bf.s
    A llvm/test/MC/RISCV/rvv/zvqwbdota-invalid.s
    A llvm/test/MC/RISCV/rvv/zvqwbdota.s
    M llvm/test/Other/new-pm-O0-defaults.ll
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/TableGen/GlobalISelEmitter/HwModes.td
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/test/ThinLTO/AArch64/aarch64_inline.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions1.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions2.ll
    M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions3.ll
    M llvm/test/ThinLTO/X86/ctor-dtor-alias.ll
    M llvm/test/ThinLTO/X86/ctor-dtor-alias2.ll
    M llvm/test/ThinLTO/X86/deadstrip.ll
    M llvm/test/ThinLTO/X86/devirt_function_alias.ll
    M llvm/test/ThinLTO/X86/devirt_function_alias2.ll
    M llvm/test/ThinLTO/X86/devirt_pure_virtual_base.ll
    M llvm/test/ThinLTO/X86/devirt_vcall_vis_public.ll
    M llvm/test/ThinLTO/X86/distributed_import.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-exported-internal.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-unknown.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-weak.ll
    M llvm/test/ThinLTO/X86/globals-import.ll
    M llvm/test/ThinLTO/X86/hidden-escaped-symbols-alt.ll
    M llvm/test/ThinLTO/X86/hidden-escaped-symbols.ll
    M llvm/test/ThinLTO/X86/import-ro-constant.ll
    M llvm/test/ThinLTO/X86/index-const-prop-alias.ll
    M llvm/test/ThinLTO/X86/index-const-prop.ll
    M llvm/test/ThinLTO/X86/linkonce_resolution_comdat.ll
    M llvm/test/ThinLTO/X86/memprof-dups.ll
    M llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
    M llvm/test/ThinLTO/X86/memprof_imported_internal.ll
    M llvm/test/ThinLTO/X86/memprof_imported_internal2.ll
    M llvm/test/ThinLTO/X86/prevailing_weak_globals_import.ll
    M llvm/test/ThinLTO/X86/visibility-elf.ll
    M llvm/test/ThinLTO/X86/visibility-macho.ll
    M llvm/test/ThinLTO/X86/weak_resolution.ll
    M llvm/test/ThinLTO/X86/windows-vftable.ll
    M llvm/test/ThinLTO/X86/writeonly.ll
    A llvm/test/Transforms/AssignGUID/assign_guid.ll
    A llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-widen-volatile.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
    M llvm/test/Transforms/Attributor/align-atomic.ll
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/liveness.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nocapture-2.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/nosync.ll
    M llvm/test/Transforms/Attributor/range.ll
    M llvm/test/Transforms/Attributor/readattrs.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-instances.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info-struct.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/null-psi-no-crash.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/split-branch-cond-weights.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/split-store-alignment.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
    M llvm/test/Transforms/Coroutines/coro-frame.ll
    A llvm/test/Transforms/Coroutines/coro-materialize-intrinsics.ll
    M llvm/test/Transforms/Coroutines/coro-materialize.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    M llvm/test/Transforms/Coroutines/coro-padding.ll
    M llvm/test/Transforms/Coroutines/coro-resume-destroy.ll
    M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
    M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
    M llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll
    M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll
    M llvm/test/Transforms/DeadStoreElimination/merge-stores.ll
    A llvm/test/Transforms/EarlyCSE/AArch64/intrinsics-1xN.ll
    M llvm/test/Transforms/EmbedBitcode/embed-wpd.ll
    M llvm/test/Transforms/EmbedBitcode/embed.ll
    A llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fpto-sat-vector.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/FunctionImport/funcimport-debug-retained-nodes.ll
    M llvm/test/Transforms/FunctionImport/funcimport.ll
    A llvm/test/Transforms/GVN/PRE/pre-load-combine-metadata.ll
    A llvm/test/Transforms/IndVarSimplify/convergent-controlled-loop.ll
    A llvm/test/Transforms/InferAlignment/propagate-across-blocks.ll
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/ldexp.ll
    M llvm/test/Transforms/InstCombine/or-bitmask.ll
    A llvm/test/Transforms/InstCombine/trunc-abs-intrinsics.ll
    A llvm/test/Transforms/InstCombine/trunc-minmax-intrinsics.ll
    M llvm/test/Transforms/InstSimplify/call.ll
    M llvm/test/Transforms/LICM/strlen.ll
    A llvm/test/Transforms/LoopFusion/different_guards.ll
    M llvm/test/Transforms/LoopFusion/loop_invariant.ll
    A llvm/test/Transforms/LoopFusion/pr191238.ll
    A llvm/test/Transforms/LoopRotate/convergent-controlled.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask-uniforms.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/clamped-load.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/discarded-interleave-group.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/expensive-alias-masking.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
    R llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fsub-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/clamped-load.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/sink-to-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing-alias-mask.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
    R llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-data-tail-folding-style.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-needs-freeze.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask-small-index.ll
    A llvm/test/Transforms/LoopVectorize/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/cast-induction.ll
    A llvm/test/Transforms/LoopVectorize/clamped-load-vf-ranges.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-calls.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-load-live-out.ll
    M llvm/test/Transforms/LoopVectorize/early-exit-unary-ops.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
    M llvm/test/Transforms/LoopVectorize/multi_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
    M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
    M llvm/test/Transforms/LoopVectorize/predicated-single-exit.ll
    A llvm/test/Transforms/LoopVectorize/remove-redundant-trip-count-scev.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    A llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/sink-to-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
    M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
    M llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll
    M llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll
    M llvm/test/Transforms/OpenMP/parallel_deletion.ll
    A llvm/test/Transforms/PGOProfile/Inputs/indirect-call-vp-zeros.ll
    A llvm/test/Transforms/PGOProfile/amdgpu-disable-value-profiling.ll
    A llvm/test/Transforms/PGOProfile/indirect-call-vp-zeros.ll
    M llvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/trunc-intrinsics.ll
    M llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
    M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-inner-loop-scale.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/slp-extval-struct-operand-no-scalar-reuse.ll
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/fmuladd_width_prop.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/ordered-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec-strided-store.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/runtime-strided-stores.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fp-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
    M llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revec-non-power-2-to-power-2-large-vect.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scalarize-ctlz.ll
    M llvm/test/Transforms/SLPVectorizer/X86/select-copyable-cmp-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll
    M llvm/test/Transforms/SLPVectorizer/X86/slp-fma-loss.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
    M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
    M llvm/test/Transforms/SampleProfile/ctxsplit.ll
    A llvm/test/Transforms/SandboxVectorizer/seed_collection_loads.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/split-gep-sub.ll
    A llvm/test/Transforms/SimpleLoopUnswitch/convergent-controlled.ll
    M llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal-typeid.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal1.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll
    A llvm/test/Transforms/VectorCombine/RISCV/vector-deinterleave2.ll
    M llvm/test/Transforms/WholeProgramDevirt/branch-funnel-profile.ll
    M llvm/test/Transforms/WholeProgramDevirt/export-single-impl.ll
    M llvm/test/Transforms/WholeProgramDevirt/export-vcp.ll
    A llvm/test/Verifier/amdgpu-stridemark-structured-gep.ll
    A llvm/test/Verifier/amdgpu-stridemark-tokenlike.ll
    M llvm/test/Verifier/structured-gep-indices-bad.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.nogenerated.expected
    A llvm/test/tools/dxil-dis/dbg-declare-undef.ll
    A llvm/test/tools/dxil-dis/dbg-value.ll
    M llvm/test/tools/dxil-dis/debug-info.ll
    A llvm/test/tools/dxil-dis/di-label.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_export_dynamic.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_public.ll
    M llvm/test/tools/gold/X86/devirt_vcall_vis_shared_def.ll
    M llvm/test/tools/gold/X86/thinlto_weak_library.ll
    M llvm/test/tools/gold/X86/thinlto_weak_resolution.ll
    M llvm/test/tools/gold/X86/v1.16/devirt_vcall_vis_export_dynamic.ll
    M llvm/test/tools/llubi/alloca_large_count.ll
    M llvm/test/tools/llubi/alloca_large_size.ll
    M llvm/test/tools/llubi/alloca_poison_count.ll
    M llvm/test/tools/llubi/alloca_size_overflow.ll
    M llvm/test/tools/llubi/assume_false.ll
    M llvm/test/tools/llubi/assume_invalid_align.ll
    M llvm/test/tools/llubi/assume_misalign.ll
    M llvm/test/tools/llubi/assume_misalign_all_ones.ll
    M llvm/test/tools/llubi/assume_nondereferenceable.ll
    M llvm/test/tools/llubi/assume_null.ll
    M llvm/test/tools/llubi/assume_null_all_ones.ll
    M llvm/test/tools/llubi/assume_poison.ll
    M llvm/test/tools/llubi/assume_poison_align.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_nullary_provenance.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob1.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob2.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_oob3.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_poison.ll
    M llvm/test/tools/llubi/attribute_noundef_agg_ub.ll
    M llvm/test/tools/llubi/attribute_noundef_ub.ll
    M llvm/test/tools/llubi/br_poison.ll
    M llvm/test/tools/llubi/call_mismatched_signature.ll
    M llvm/test/tools/llubi/call_poison.ll
    M llvm/test/tools/llubi/divrem_ub1.ll
    M llvm/test/tools/llubi/divrem_ub2.ll
    M llvm/test/tools/llubi/divrem_ub3.ll
    M llvm/test/tools/llubi/divrem_ub4.ll
    M llvm/test/tools/llubi/indirectbr_invalid.ll
    M llvm/test/tools/llubi/indirectbr_poison.ll
    M llvm/test/tools/llubi/infinite_loop.ll
    M llvm/test/tools/llubi/invoke_poison.ll
    M llvm/test/tools/llubi/lib_cxx_memory_large_size.ll
    M llvm/test/tools/llubi/lib_double_free.ll
    M llvm/test/tools/llubi/lib_free_nullary_pointer.ll
    M llvm/test/tools/llubi/lib_free_out_of_bound.ll
    M llvm/test/tools/llubi/lib_free_stack.ll
    M llvm/test/tools/llubi/lib_poison_argument.ll
    M llvm/test/tools/llubi/lib_printf_not_enough_argument.ll
    M llvm/test/tools/llubi/lib_printf_unknown_specifier.ll
    M llvm/test/tools/llubi/lib_read_nullary_string.ll
    M llvm/test/tools/llubi/lib_uninit_string.ll
    M llvm/test/tools/llubi/load_noundef_ub_poison.ll
    M llvm/test/tools/llubi/load_noundef_ub_poison_padding.ll
    M llvm/test/tools/llubi/load_noundef_ub_undef.ll
    M llvm/test/tools/llubi/loadstore_misaligned.ll
    M llvm/test/tools/llubi/loadstore_null.ll
    M llvm/test/tools/llubi/loadstore_oob1.ll
    M llvm/test/tools/llubi/loadstore_poison.ll
    M llvm/test/tools/llubi/loadstore_uaf.ll
    M llvm/test/tools/llubi/metadata_noundef_ub.ll
    M llvm/test/tools/llubi/stack_overflow.ll
    M llvm/test/tools/llubi/store_dead.ll
    M llvm/test/tools/llubi/switch_poison.ll
    M llvm/test/tools/llubi/unreachable.ll
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-carry-over.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-add-sequence.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-all-views.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-retire.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-readadv.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-alias.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-noalias.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-out-of-order-retire.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-store-readadv.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A57-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-writeback.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/clear-upper-regs.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/forwarding-idioms.s
    M llvm/test/tools/llvm-mca/AArch64/Olympus/writeback-loads-stores.s
    M llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
    M llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-add-sequence.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-double.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx10-trans.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx11-double.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx12-permlane16-cycles.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx12-pseudo-scalar-trans.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx9-retireooo.s
    M llvm/test/tools/llvm-mca/ARM/cortex-a57-carryover.s
    M llvm/test/tools/llvm-mca/ARM/m55-storefwd.s
    M llvm/test/tools/llvm-mca/ARM/m7-negative-readadvance.s
    M llvm/test/tools/llvm-mca/ARM/memcpy-ldm-stm.s
    M llvm/test/tools/llvm-mca/ARM/vld1-index-update.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/fpr.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/gpr.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/zero-reg.s
    M llvm/test/tools/llvm-mca/RISCV/MIPS/p8700.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/div-fdiv.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass-c.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/jump.s
    M llvm/test/tools/llvm-mca/RISCV/SiFive7/sp-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-lmul-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/disable-im.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-at-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-middle.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-straddles-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-lmul-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/no-vsetvli-to-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
    M llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s
    M llvm/test/tools/llvm-mca/RISCV/XiangShan/gpr-bypass.s
    M llvm/test/tools/llvm-mca/RISCV/XiangShan/load-to-alu.s
    M llvm/test/tools/llvm-mca/SystemZ/stm-lm.s
    M llvm/test/tools/llvm-mca/X86/AlderlakeP/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/AlderlakeP/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Atom/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/load-store-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/load-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-6.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/store-throughput.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/add-sequence.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dependent-pmuld-paddd.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/dot-product.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-alias.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/load-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/memcpy-like-test.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/pipes-fpu.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/pr37790.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/rank.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-5.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/store-throughput.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vbroadcast-operand-latency.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Broadwell/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/add-sequence.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/cmpxchg-read-advance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-cmp.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpeq.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpgt.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dependent-pmuld-paddd.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/dot-product.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/int-to-fpu-forwarding-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/load-store-alias.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/memcpy-like-test.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/negative-read-advance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/one-idioms.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/pipes-fpu.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/pr37790.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rank.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-3.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-4.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-5.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-6.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-5.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-adc-sequence-readadvance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-add-sequence-readadvance.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/stmxcsr-ldmxcsr.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vbroadcast-operand-latency.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/xadd.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/xchg.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms-avx-256.s
    M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-3.s
    M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-1.s
    M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/Haswell/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/Haswell/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Haswell/stmxcsr-ldmxcsr.s
    M llvm/test/tools/llvm-mca/X86/Haswell/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/LunarlakeP/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/LunarlakeP/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SLM/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SandyBridge/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SapphireRapids/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/SkylakeServer/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver2/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver2/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Znver3/dependency-breaking-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/mulx-hi-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-mmx.s
    M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-2.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-3.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-4.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-6.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-7.s
    M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-mmx.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-x87.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-ymm.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-gpr.s
    M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-sse-xmm.s
    M llvm/test/tools/llvm-mca/X86/Znver4/independent-load-stores.s
    M llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s
    M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/bextr-read-after-ld.s
    M llvm/test/tools/llvm-mca/X86/bzhi-read-after-ld.s
    M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
    M llvm/test/tools/llvm-mca/X86/read-after-ld-3.s
    M llvm/test/tools/llvm-mca/X86/sqrt-rsqrt-rcp-memop.s
    M llvm/test/tools/llvm-mca/X86/stack-engine-pop.s
    M llvm/test/tools/llvm-mca/X86/stack-engine-push.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-2.s
    M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-all-wods.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-apx.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-inherit.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-opcode.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-bad-push-consecutive-2.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-basic.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-chain.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-distinct-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog-flags.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog-large.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-handler-odd-payload.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-handler.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-large.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-multi-epilog.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-neg-offset.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-pool-overflow.yaml
    A llvm/test/tools/llvm-objdump/COFF/win64-unwindv3-reloc.yaml
    A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff-compress.test
    A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff.test
    M llvm/test/tools/llvm-profdata/sample-nametable.test
    A llvm/test/tools/llvm-readobj/COFF/AMDGPU/offloading.test
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-all-wods.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-apx.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-bad-inherit.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-bad-opcode.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-basic.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-chain.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-distinct-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-epilog-flags.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-handler.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-multi-epilog.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-neg-offset.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-pool-overflow.yaml
    A llvm/test/tools/llvm-readobj/COFF/unwind-x86_64-v3-reloc.yaml
    A llvm/test/tools/llvm-split/alias-to-ifunc.ll
    A llvm/test/tools/llvm-split/ifunc.ll
    A llvm/test/tools/llvm-symbolizer/Inputs/wasm-basic.yaml
    R llvm/test/tools/llvm-symbolizer/lit.local.cfg
    M llvm/test/tools/llvm-symbolizer/wasm-basic.s
    M llvm/tools/llubi/lib/CMakeLists.txt
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/ExecutorBase.cpp
    M llvm/tools/llubi/llubi.cpp
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
    M llvm/tools/llvm-link/llvm-link.cpp
    M llvm/tools/llvm-mca/Views/TimelineView.cpp
    M llvm/tools/llvm-mca/Views/TimelineView.h
    M llvm/tools/llvm-objdump/COFFDump.cpp
    M llvm/tools/llvm-objdump/ObjdumpOpts.td
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-objdump/llvm-objdump.h
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/Win64EHDumper.cpp
    M llvm/tools/llvm-readobj/Win64EHDumper.h
    M llvm/tools/llvm-readobj/llvm-readobj.cpp
    M llvm/tools/llvm-readobj/llvm-readobj.h
    M llvm/tools/opt/NewPMDriver.cpp
    M llvm/tools/opt/optdriver.cpp
    M llvm/unittests/ADT/APFloatTest.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/DenseSetTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/Path.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/emacs/llvm-mode.el
    M llvm/utils/gn/secondary/clang/tools/clang-sycl-linker/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/ShUtil.py
    M llvm/utils/lit/lit/ShellEnvironment.py
    M llvm/utils/lit/lit/Test.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/display.py
    M llvm/utils/lit/lit/formats/base.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/formats/shtest.py
    M llvm/utils/lit/lit/llvm/config.py
    M llvm/utils/lit/lit/llvm/subst.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/lit/reports.py
    M llvm/utils/lit/lit/run.py
    M llvm/utils/lit/lit/util.py
    M llvm/utils/lit/tests/Inputs/check_path.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-control-chars.py
    M llvm/utils/lit/tests/Inputs/shtest-not/print_environment.py
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/short.py
    M llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
    M llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
    M llvm/utils/lit/tests/unit/Util.py
    M llvm/utils/profcheck-xfail.txt
    M mlir/include/mlir/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosa.h
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
    M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/include/mlir/Support/ThreadLocalCache.h
    A mlir/include/mlir/Target/SPIRV/SPIRVExtInstSets.h
    M mlir/lib/Analysis/SliceAnalysis.cpp
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/RootOrdering.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/CMakeLists.txt
    A mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/Interfaces/MemorySlotInterfaces.cpp
    M mlir/lib/Support/TypeID.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.h
    M mlir/lib/Target/SPIRV/TranslateRegistration.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    A mlir/test/Conversion/AMDGPUToROCDL/permlane-var.mlir
    M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir
    A mlir/test/Conversion/TosaToSPIRVTosa/tosa-to-spirv.mlir
    M mlir/test/Dialect/Affine/slicing-utils.mlir
    M mlir/test/Dialect/Async/async-to-async-runtime.mlir
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Dialect/MemRef/flatten_memref.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    R mlir/test/Dialect/Tosa/fold_concats.mlir
    M mlir/test/Dialect/Vector/drop-unit-dims-with-shape-cast.mlir
    M mlir/test/Dialect/Vector/flatten-memref-and-emulate-narrow-types.mlir
    M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
    M mlir/test/Dialect/Vector/vector-transforms.mlir
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
    R mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir
    M mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
    A mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
    A mlir/test/Dialect/XeGPU/sg-to-lane-distribute.mlir
    R mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
    R mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
    R mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir
    R mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
    R mlir/test/Dialect/XeGPU/xegpu-subgroup-distribute-no-arch.mlir
    M mlir/test/Integration/Dialect/XeGPU/WG/load_store_matrix.mlir
    A mlir/test/Target/LLVMIR/nvvm/divf/divf.mlir
    A mlir/test/Target/LLVMIR/nvvm/divf/divf_invalid.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    R mlir/test/Target/SPIRV/debug-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info.mlir
    M mlir/test/Transforms/mem2reg.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
    M mlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
    M offload/liboffload/CMakeLists.txt
    M offload/libomptarget/CMakeLists.txt
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/IslNodeBuilder.cpp
    M utils/bazel/.bazelrc
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    A utils/bazel/llvm-project-overlay/libc/test/src/__support/threads/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Rebase, small improvements

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/3cfce5fd7ae5...e689a6a82bf3

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list