[all-commits] [llvm/llvm-project] 75af82: [VPlan] Expand SCEV casts in VPSCEVExpander. (#206...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Mon Jul 6 14:54:57 PDT 2026


  Branch: refs/heads/users/alexey-bataev/spr/slp-support-memory-runtime-alias-checks
  Home:   https://github.com/llvm/llvm-project
  Commit: 75af8236d2f122b5b528fdc403dcf3f963faddc1
      https://github.com/llvm/llvm-project/commit/75af8236d2f122b5b528fdc403dcf3f963faddc1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll

  Log Message:
  -----------
  [VPlan] Expand SCEV casts in VPSCEVExpander. (#206371)

Add support for expanding scTruncate, scZeroExtend and scSignExtend SCEV
expressions to Trunc/ZExt/SExt VPInstructions in
VPSCEVExpander::tryToExpand.

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


  Commit: f1aeaa7bd55218b62b9aa319c6dcad0430037182
      https://github.com/llvm/llvm-project/commit/f1aeaa7bd55218b62b9aa319c6dcad0430037182
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Lex/LiteralSupport.h
    M clang/include/clang/Lex/Preprocessor.h
    A clang/include/clang/Lex/TextEncoding.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Lex/CMakeLists.txt
    M clang/lib/Lex/LiteralSupport.cpp
    A clang/lib/Lex/TextEncoding.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CodeGen/systemz-charset-diag.cpp
    A clang/test/CodeGen/systemz-charset.c
    A clang/test/CodeGen/systemz-charset.cpp
    M clang/test/Lexer/string-literal-encoding.c
    M clang/test/Preprocessor/init-s390x.c

  Log Message:
  -----------
  Enable fexec-charset option  (#138895)

This patch is the first in a series of patches to enable the fexec-charset option. This patch enables the fexec-charset cc1 option to control the literal encoding of string literals


  Commit: 8f1bac0975c74f4379d9cc402fbebc8d5c7c0dba
      https://github.com/llvm/llvm-project/commit/8f1bac0975c74f4379d9cc402fbebc8d5c7c0dba
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/return-value/TestReturnValue.py
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/thread_filter/TestFrameProviderThreadFilter.py
    M lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
    M lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py

  Log Message:
  -----------
  [lldb][test] Skip tests for features unsupported on WebAssembly (#207102)

- TestReturnValue, TestTrivialABI: a WebAssembly return value lives on
the operand stack with no way to locate it at a step-out, so the
returned value can't be recovered.
- TestScriptedFrameProvider, TestFrameProviderThreadFilter: the inferior
is multithreaded C++, which wasip1 can't build (no threads, and
inferiors are compiled without exception support).
- TestThreadLocal: reading thread-locals works, but the test checks the
platform-specific error reported when TLS isn't initialized yet, which
WebAssembly doesn't have (already xfail/skip on other platforms).


  Commit: 1c9ebda139440e1f81d02197432cbebe478697e3
      https://github.com/llvm/llvm-project/commit/1c9ebda139440e1f81d02197432cbebe478697e3
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    R libcxx/test/benchmarks/algorithms/nonmodifying/lower_upper_bound.bench.cpp
    A libcxx/test/benchmarks/algorithms/sorting/lower_upper_bound.bench.cpp

  Log Message:
  -----------
  [libc++][NFC] Move the lower_bound/upper_bound benchmark to the sorting directory (#207215)

These algorithms are not under [nonmodifying], they are under [sorting]
in the Standard.


  Commit: 62356985be4f112cf92c1d186d557fe299826106
      https://github.com/llvm/llvm-project/commit/62356985be4f112cf92c1d186d557fe299826106
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/test/Preprocessor/aarch64-target-features.c

  Log Message:
  -----------
  [AArch64][clang][llvm] Add ACLE macros to support Armv9.7 (#192948)

This patch add the macros for Armv9.7 according to the ACLE [1]

[1] https://github.com/ARM-software/acle/blob/main/main/acle.md


  Commit: 2e6621e6e379fd42804a85de3d829d143056a02d
      https://github.com/llvm/llvm-project/commit/2e6621e6e379fd42804a85de3d829d143056a02d
  Author: Letu Ren <fantasquex at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c

  Log Message:
  -----------
  [CIR] Support __builtin_elementwise_ceil (#204974)

Add CIR handling for __builtin_elementwise_ceil


  Commit: 8af376d724891963f68c7c530721ea719136089e
      https://github.com/llvm/llvm-project/commit/8af376d724891963f68c7c530721ea719136089e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    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/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll

  Log Message:
  -----------
  [VPlan] Also expand pointer-typed SCEVAddExpr in VPSCEVExpander. (#206366)

Generalize the SCEVAddExpr handling in VPSCEVExpander::tryToExpand to
also expand pointer-typed adds. The pointer base and the offset are
expanded separately, matching IR SCEVExpander.

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


  Commit: 5587443d5fb6f6de329e22ccb991af4580ec922a
      https://github.com/llvm/llvm-project/commit/5587443d5fb6f6de329e22ccb991af4580ec922a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.cpp

  Log Message:
  -----------
  [lldb] Synthesize data symbols for WebAssembly from DWARF (#207235)

The Wasm "name" section names functions but not data, so data symbols
such as C++ vtables have no entry in the symbol table. The Itanium C++
runtime resolves a dynamic type by looking up the symbol at an object's
vtable pointer and reading its "vtable for X" name. With no such symbol,
dynamic type resolution fails and falls back to the static type.

The vtable's address and mangled name are available in the DWARF as a
DW_TAG_variable with a DW_OP_addr location and a DW_AT_linkage_name.
Extend SymbolFileWasm::AddSymbols to synthesize a data symbol for every
global variable of that shape, so its address resolves back to the
mangled name such as "vtable for X". The size is computed by Symtab to
from the gap to the next symbol.

Assisted-by: Claude


  Commit: db5740f1a633a6ae587de57ab5ef371a0224147f
      https://github.com/llvm/llvm-project/commit/db5740f1a633a6ae587de57ab5ef371a0224147f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c

  Log Message:
  -----------
  [Dexter] Update lldb-based dexter-tests to use script-mode (#204367)

This patch replaces uses of heuristic-mode Dexter in the dexter-tests
suite with uses of the script-mode, for tests that use DAP (via
lldb-dap). The updates are largely straightforward but occasionally
non-trivial, and in some cases some slight modifications have been made
to keep the "spirit" of the test intact.


  Commit: 8b8a2d7613d9bd9b6a4e49f5408f37b83f28d76e
      https://github.com/llvm/llvm-project/commit/8b8a2d7613d9bd9b6a4e49f5408f37b83f28d76e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/work-queue.h

  Log Message:
  -----------
  [flang][cuda] Guard descriptor I/O ticket when building thin I/O (#206865)

The work queue system is also used in the assignment and could lead to
unresolved function when building non relocatable code for the gpu using
the CUDA thin I/O. Just add a guard to keep descriptor I/O out of the
CUDA thin I/O build.


  Commit: 3166b22b0e71fd95a828fa84a8c82d9f4b5e7553
      https://github.com/llvm/llvm-project/commit/3166b22b0e71fd95a828fa84a8c82d9f4b5e7553
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [InstCombine] Sink instructions across assumes (#205314)

Not sinking across assumes causes InstCombine to not reach a fixpoint
when assumes can be dropped due to the load (usually nonnull assumes).
Sinking the instructions causes the assume to not be dropped anymore,
but I don't think that's a big problem.


  Commit: 6060a6b96bf9bd3d13463478a9f6112c2c71369c
      https://github.com/llvm/llvm-project/commit/6060a6b96bf9bd3d13463478a9f6112c2c71369c
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp

  Log Message:
  -----------
  Put TextEncoding class in clang namespace to prevent naming conflicts (#207247)

Put TextEncoding class in the clang namespace to prevent naming conflicts


  Commit: a0145cf5efb56928dc178cb1a7f8c04e9da33d5f
      https://github.com/llvm/llvm-project/commit/a0145cf5efb56928dc178cb1a7f8c04e9da33d5f
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversion for GL.Fract (#206951)

Co-authored-by: Igor Wodiany <dev at wodiany.com>


  Commit: 2c4286e2e1fc37630ae7d3fef48f2a50cbcaa584
      https://github.com/llvm/llvm-project/commit/2c4286e2e1fc37630ae7d3fef48f2a50cbcaa584
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/attr-noundef.cpp
    M clang/test/CIR/CodeGen/attr-target-x86.c
    M clang/test/CIR/CodeGen/lambda-dtor-field.cpp
    M clang/test/CIR/CodeGenCXX/uncopyable-args.cpp

  Log Message:
  -----------
  [CIR] Update OGCG checks for 4 tests- (#207252)

These are broken by other patches, see: #182556 and #201999


  Commit: 9bd12f6d8873cca268d8129d9395fcefdfa5ab2e
      https://github.com/llvm/llvm-project/commit/9bd12f6d8873cca268d8129d9395fcefdfa5ab2e
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/resources/resources-in-structs-method-call.hlsl

  Log Message:
  -----------
  [HLSL][NFC] Update test check to be more specific (#207232)

If the repo path contains "main", the test was matching it against the
ModuleID in the output because it contains a path to the test file, and
the follow-up checks were failing.

Based on feedback in
https://github.com/llvm/llvm-project/pull/206596#discussion_r3510725223.


  Commit: 999715ac3e8c0d9edc8405b025284a663c9cfe4e
      https://github.com/llvm/llvm-project/commit/999715ac3e8c0d9edc8405b025284a663c9cfe4e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake
    M lldb/tools/driver/CMakeLists.txt
    M lldb/tools/lldb-dap/tool/CMakeLists.txt
    M lldb/tools/lldb-mcp/CMakeLists.txt

  Log Message:
  -----------
  [lldb][CMake] Extend liblldb interposition fix to lldb-dap and lldb-mcp (#207251)

liblldb statically absorbs the lldbHost and lldbUtility archives (and
every plugin). A tool that links the shared liblldb while also linking
those same archives statically ends up with two copies of that object
code. On ELF, if the tool re-exports the archive symbols in its own
.dynsym, the dynamic linker can bind liblldb's internal references to
the tool's copy instead of liblldb's own, breaking shared-state
assumptions such as the HostInfo singletons.

106644f6c835 fixed this for the lldb driver with --exclude-libs,ALL, but
lldb-dap and lldb-mcp have the same setup and were left exposed. Factor
the logic into a shared lldb_prevent_liblldb_symbol_interposition helper
and call it from all three tools.


  Commit: 1823581ecb2ff84e1adb159d30216bd2cff48cfd
      https://github.com/llvm/llvm-project/commit/1823581ecb2ff84e1adb159d30216bd2cff48cfd
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libc/src/__support/big_int.h
    M libc/test/src/__support/integer_literals_test.cpp

  Log Message:
  -----------
  [libc] Make BigInt trivially constructible (#206277)

This makes BigInt trivially constructible and additionally fixes the
failures caused by the upcoming change in constexpr functions.


  Commit: 7139c74b59a45ae837fd15c81439622130acf206
      https://github.com/llvm/llvm-project/commit/7139c74b59a45ae837fd15c81439622130acf206
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/store-expand-non-pow2.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the masked non-power-of-2 stores, NFC



Reviewers: 

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


  Commit: bc34ef2616918cb103691dcd7b2d47fafa49f639
      https://github.com/llvm/llvm-project/commit/bc34ef2616918cb103691dcd7b2d47fafa49f639
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake

  Log Message:
  -----------
  [lldb] Fix rpath settings for LLDB.framework in buildtree when using LLVM dylib (#207270)

The LLDB.framework location in your build tree relative to the LLVM
dylib differs from an actual installation (which may be located
elsewhere). As-is, we cannot even use the LLDB.framework in the
buildtree because resources in the framework fail to load the LLVM
dylib.


  Commit: 1ced7e587e3f1deb987c33af48d3d0da8f63a21d
      https://github.com/llvm/llvm-project/commit/1ced7e587e3f1deb987c33af48d3d0da8f63a21d
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
    M llvm/test/CodeGen/DirectX/legalize-switch-unreachable.ll

  Log Message:
  -----------
  [DirectX] Remove now unreachable blocks in dxil legalize (#207259)

I think when I first wrote
https://github.com/llvm/llvm-project/pull/193592, I had been under the
assumption that the dead block would be removed for us so the test and
pass did not check that the branch was removed in the pass.

This was a wrong assumption and we need to manually remove the blocks.
This change does so by invoking the helper to do so.

For context: this issue reappeared in the offload test suite after
https://github.com/llvm/llvm-project/pull/205433 landed because the loop
could no longer unroll and the dangling branch appeared.

Resolves: https://github.com/llvm/llvm-project/issues/207095


  Commit: e1d11a60584ffaa0ab85cf23287808bb6e1b54a3
      https://github.com/llvm/llvm-project/commit/e1d11a60584ffaa0ab85cf23287808bb6e1b54a3
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaTemplate/ctad.cpp

  Log Message:
  -----------
  [clang] fix crash-on-invalid with deduction guides (#207263)

Fix crash when a template template parameter specialization is used as a
deduced type.

This is a regression since Clang 22, and this will be backported, so no
release notes.

Fixes #203261


  Commit: abe1aee8815b4f5adadc00ac0d4498efdd91b746
      https://github.com/llvm/llvm-project/commit/abe1aee8815b4f5adadc00ac0d4498efdd91b746
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll

  Log Message:
  -----------
  [LV] Add test showing incorrect nsw flag on shl. (NFC) (#207242)

Add test for https://github.com/llvm/llvm-project/issues/205252


  Commit: 130d6c3cddbc9756953b566a2da695d3016acea1
      https://github.com/llvm/llvm-project/commit/130d6c3cddbc9756953b566a2da695d3016acea1
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A clang/test/CXX/drs/cwg3088.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG3088 about macros defining special identifiers (#189309)

This PR adds a test for
[CWG3088](https://cplusplus.github.io/CWG/issues/3088.html) "Clarify
macro treatment of identifiers with special meaning".

[[cpp.replace.general] paragraph
9](https://eel.is/c++draft/cpp.replace.general#9) reads as follows:
> A translation unit shall not `#define` or `#undef` macro names
lexically identical to keywords, to the identifiers listed in Table
[4](https://eel.is/c++draft/lex.name#tab:lex.name.special), or to the
[_attribute-token_](https://eel.is/c++draft/dcl.attr.grammar#nt:attribute-token)s
described in [[dcl.attr]](https://eel.is/c++draft/dcl.attr), except that
the macro names `likely` and `unlikely` may be defined as function-like
macros and may be
undefined[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-1)
>
> [Note [1](https://eel.is/c++draft/cpp.replace.general#note-1): An
alternative token ([[lex.digraph]](https://eel.is/c++draft/lex.digraph))
is not an identifier, even when its spelling consists entirely of
letters and
underscores[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-2)
Therefore it is not possible to define a macro whose name is the same as
that of an alternative
token[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-3)
— end note]

Since C++98 and up until
[P2843R3](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2025/p2843r3.pdf)
"Preprocessing is never undefined", which was voted into C++26 **not**
as a DR, this rule has been living as [macro.names]/2 in library
introduction, but that paper made it a part of the core language.

I believe that formally:
- we should not diagnose anything before C++26 if the standard library
is not used, and
- we should diagnose everything in C++26 and newer modes.

But in practice we've been diagnosing everything except for attributes
in all language modes with some exceptions that are likely bugs.


  Commit: 9a896c3f538c3653ddcb82ebd5a19418609f87d1
      https://github.com/llvm/llvm-project/commit/9a896c3f538c3653ddcb82ebd5a19418609f87d1
  Author: jimingham <jingham at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/include/lldb/Breakpoint/ScriptedBreakpointOverrideResolver.h
    M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Target/Target.cpp
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/TestOverridesResolver.py
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/bkpt_resolver.py

  Log Message:
  -----------
  Add a pre-filter to the breakpoint resolver overrides (#198845)

That way if an override only wants to override, say, file and line
breakpoints, it can say that when it registers itself, and we won't do
the work of creating the resolver and checking with it if the breakpoint
wasn't of the requested type.

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 11576cacaa514a227abfbdd902c53b657915155c
      https://github.com/llvm/llvm-project/commit/11576cacaa514a227abfbdd902c53b657915155c
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/test/Transforms/InstSimplify/ConstProp/saturating-add-sub.ll

  Log Message:
  -----------
  [ConstFold] Eliminate some undef-folding (#207184)

The patch is merely a cleanup, with no real-world impact: undef-folding
is no longer useful these days.


  Commit: 7be188763ab75868ad5c9ac0a2c16ce7d373b053
      https://github.com/llvm/llvm-project/commit/7be188763ab75868ad5c9ac0a2c16ce7d373b053
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll

  Log Message:
  -----------
  [VPlan] Don't preserve NSW in mul -> shl conversion for bw-1 op. (#207280)

When the shift amount is bitwidth - 1, shl nsw would be poison, while
mul nsw is defined. Don't preserve the flag.

https://alive2.llvm.org/ce/z/NgHU_m

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


  Commit: e8c4e99316889849a728828b06f3d77b8c5c279f
      https://github.com/llvm/llvm-project/commit/e8c4e99316889849a728828b06f3d77b8c5c279f
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Strip secondary SIVSteps constructor (NFC) (#207193)

Migrate the only use-site in unit-test to use the canonical constructor.


  Commit: b7623f523c31c96e0449666f69d5b666e70b7627
      https://github.com/llvm/llvm-project/commit/b7623f523c31c96e0449666f69d5b666e70b7627
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/neon-inloop-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-incomplete-chains.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-scalarivsext-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/illegal-type.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model-i386.ll
    M llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
    M llvm/test/Transforms/LoopVectorize/constantfolder.ll
    M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/pr125278.ll
    M llvm/test/Transforms/LoopVectorize/pr154045-dont-fold-extractelement-livein.ll
    M llvm/test/Transforms/LoopVectorize/pr31190.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr66616.ll
    M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
    M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
    M llvm/test/Transforms/LoopVectorize/single-scalar-cast-minbw.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll

  Log Message:
  -----------
  [VPlan] Strip early-bail in noalias-check (#203936)

canHoistOrSinkWithNoAliasCheck currently bails eagerly when the
candidate memory location doesn't have a scope. This is unnecessary,
because the alias check automatically handles this: stripping this check
allows us to run the loop, which would never get to the alias check if
none of the recipes write to memory. The end result is that a read-only
FirstBB to LastBB ranges are determined not to alias with anything, even
if the scope metadata is absent, leading to licm-load-store
improvements.


  Commit: c2b50a15c1c34c9619dcdb669d8c2b10ef73bcb9
      https://github.com/llvm/llvm-project/commit/c2b50a15c1c34c9619dcdb669d8c2b10ef73bcb9
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/RISCV/determine-callee-saves-gpr.mir

  Log Message:
  -----------
  [CodeGen] Add tests for `determineCalleeSaves`. (#204855)


  Commit: 7b11c7ce86aafbf4782ceb31543e27dc69617a7a
      https://github.com/llvm/llvm-project/commit/7b11c7ce86aafbf4782ceb31543e27dc69617a7a
  Author: Marlus Cadanus da Costa <marluscadanus at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/Sema/offsetof-unsigned-index.c

  Log Message:
  -----------
  [Clang] Fix offsetof sign-extending unsigned array indices >= 128 (#204139)

When evaluating __builtin_offsetof with an unsigned integer array index
(e.g. uint8_t, uint16_t) whose value has the high bit set, Clang was
calling getSExtValue() on the APSInt index, which sign-extends the value
and produces a large bogus offset.

Fix this to use the correct kind of extension to extend smaller values, and to check for overflow in conversions of larger values.

Fixes #199319

AI Tool Use: GitHub Copilot (Claude Sonnet 4.6) was used to assist in
identifying the root cause of the bug in ExprConstant.cpp and drafting
the fix. The fix was reviewed, tested, and validated manually.


  Commit: 5302608fec8ed7d8ce300d4a0d599a26b24dc972
      https://github.com/llvm/llvm-project/commit/5302608fec8ed7d8ce300d4a0d599a26b24dc972
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp

  Log Message:
  -----------
  [Offload] Guard __llvm_write_custom_profile null check on non-Windows (#207170)

On Windows __llvm_write_custom_profile is defined as a strong stub (MSVC
lacks proper weak symbol support) by 09a51b2818e2, so its address is a
compile-time constant that is never null. The `if
(!__llvm_write_custom_profile)` check therefore triggers
-Wpointer-bool-conversion, which is fatal under -Werror.

Assisted-by: Claude


  Commit: c3b744b585d55f14dcd998ca6d1fad6d62461f65
      https://github.com/llvm/llvm-project/commit/c3b744b585d55f14dcd998ca6d1fad6d62461f65
  Author: Lucas Ribeiro Lima <lucasribeirolima974 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGen/builtins-x86.c

  Log Message:
  -----------
  [clang][CIR]: X86 movnti/movntsd/movntss CIR implementation. (#206388)

### Implements X86 CIR codegen builtins:

- __builtin_ia32_movnti
- __builtin_ia32_movnti64
- __builtin_ia32_movntsd
- __builtin_ia32_movntss

Folow the original codegen architecture lowering to movntss call.

Towards #167765.


  Commit: 20a60c52db181bcfd787e7fd4486d4453b01dba9
      https://github.com/llvm/llvm-project/commit/20a60c52db181bcfd787e7fd4486d4453b01dba9
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/docs/AdvancedBuilds.md
    R llvm/docs/AdvancedBuilds.rst
    A llvm/docs/BuildingADistribution.md
    R llvm/docs/BuildingADistribution.rst
    A llvm/docs/CFIVerify.md
    R llvm/docs/CFIVerify.rst
    A llvm/docs/CycleTerminology.md
    R llvm/docs/CycleTerminology.rst
    A llvm/docs/DTLTO.md
    R llvm/docs/DTLTO.rst
    A llvm/docs/Docker.md
    R llvm/docs/Docker.rst
    A llvm/docs/Frontend/PerformanceTips.md
    R llvm/docs/Frontend/PerformanceTips.rst
    A llvm/docs/GoldPlugin.md
    R llvm/docs/GoldPlugin.rst
    A llvm/docs/HowToBuildOnARM.md
    R llvm/docs/HowToBuildOnARM.rst
    A llvm/docs/HowToBuildWithPGO.md
    R llvm/docs/HowToBuildWithPGO.rst
    A llvm/docs/HowToCrossCompileLLVM.md
    R llvm/docs/HowToCrossCompileLLVM.rst
    A llvm/docs/LinkTimeOptimization.md
    R llvm/docs/LinkTimeOptimization.rst
    A llvm/docs/MemProf.md
    R llvm/docs/MemProf.rst
    A llvm/docs/MergeFunctions.md
    R llvm/docs/MergeFunctions.rst
    A llvm/docs/MyFirstTypoFix.md
    R llvm/docs/MyFirstTypoFix.rst
    A llvm/docs/ProjectGovernance.md
    R llvm/docs/ProjectGovernance.rst
    A llvm/docs/StackSafetyAnalysis.md
    R llvm/docs/StackSafetyAnalysis.rst
    A llvm/docs/SupportLibrary.md
    R llvm/docs/SupportLibrary.rst
    A llvm/docs/Vectorizers.md
    R llvm/docs/Vectorizers.rst
    A llvm/docs/tutorial/index.md
    R llvm/docs/tutorial/index.rst
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/tools/llvm-cfi-verify/llvm-cfi-verify.cpp
    M llvm/utils/docker/README

  Log Message:
  -----------
  [docs] Rename 20 selected rst docs to Markdown (#205921)

Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840

This may break the doc build, but it will be fixed in a follow-up.


  Commit: a4b184609b25fc29ea54514b662e9d2fea1923b3
      https://github.com/llvm/llvm-project/commit/a4b184609b25fc29ea54514b662e9d2fea1923b3
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/docs/AdvancedBuilds.md
    M llvm/docs/BuildingADistribution.md
    M llvm/docs/CFIVerify.md
    M llvm/docs/CycleTerminology.md
    M llvm/docs/DTLTO.md
    M llvm/docs/Docker.md
    M llvm/docs/Frontend/PerformanceTips.md
    M llvm/docs/GitHub.md
    M llvm/docs/GoldPlugin.md
    M llvm/docs/HowToBuildOnARM.md
    M llvm/docs/HowToBuildWithPGO.md
    M llvm/docs/HowToCrossCompileLLVM.md
    M llvm/docs/LinkTimeOptimization.md
    M llvm/docs/MemProf.md
    M llvm/docs/MergeFunctions.md
    M llvm/docs/MyFirstTypoFix.md
    M llvm/docs/ProjectGovernance.md
    M llvm/docs/StackSafetyAnalysis.md
    M llvm/docs/SupportLibrary.md
    M llvm/docs/Vectorizers.md
    M llvm/docs/tutorial/index.md

  Log Message:
  -----------
  [docs] Rewrite 20 selected rst LLVM docs to Markdown (#205923)

Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840


  Commit: b3d0b1f0415deda8d5f427ff009a72b558532b99
      https://github.com/llvm/llvm-project/commit/b3d0b1f0415deda8d5f427ff009a72b558532b99
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/allocator-registry.h

  Log Message:
  -----------
  [flang-rt] Use posix_memalign instead of std::aligned_alloc (#207248)

MallocWrapper called std::aligned_alloc for over-aligned requests, but
that C11 function is only available on macOS 10.15 and newer. flang-rt
builds with a Darwin deployment target of 10.7 (set in
AddFlangRT.cmake), so the build failed under
-Werror=unguarded-availability-new.

Use posix_memalign instead, as it is available on all supported POSIX
targets.


  Commit: d7cd957bee261ce6e477f16c8768fe8889f599c5
      https://github.com/llvm/llvm-project/commit/d7cd957bee261ce6e477f16c8768fe8889f599c5
  Author: Berkay Sahin <berkaysahindev at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/ModulesBuilder.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp

  Log Message:
  -----------
  [clangd] Invalidate preamble when new module imports are added (#199460)

When using `SkipPreambleBuild`, adding a new `import` statement to a
file did
not invalidate the existing preamble because `isPreambleCompatible` only
checked whether existing prerequisite modules were up-to-date, not
whether
the set of required modules itself had changed.

Fixes: #199389
Partially addresses: #126350


  Commit: 604db5fc463d2e252c2575ff519f479c88cfe093
      https://github.com/llvm/llvm-project/commit/604db5fc463d2e252c2575ff519f479c88cfe093
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp

  Log Message:
  -----------
  [PGO][HIP][NFC] Fix hipModuleGetGlobal -Wunused-function warning (#207293)

The functions trigger the warning on Windows (without elf.h) and is
fatal under -Werror.
Fix by adding [[maybe_unused]]. Alternatively it could be moved inside
the existing __has_include(<elf.h>) block,; however that would trigger
-Wunused-but-set-global on pHipModuleGetGlobal.
Current fix is minimal and can be removed once hipModuleGetGlobal is
supported without elf.h.


  Commit: be1d8d4bb908b90810025479ec1a8afae34a630a
      https://github.com/llvm/llvm-project/commit/be1d8d4bb908b90810025479ec1a8afae34a630a
  Author: Adam Scott <adamscott200322 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/cttz-of-bool-vector-bitcast.ll

  Log Message:
  -----------
  [AArch64] Lower cttz(bitcast <Nxi1> to iN) with shrn-based compressed movemask (#199081)

The existing lowering in vectorToScalarBitmask() creates a 1 bit per
lane movemask using a powers of 2 reduction (and+addv with a constant
pool entry).

This patch adds a DAG combine on ISD::CTTZ that recognizes cttz(bitcast
<N x i1> to iN) and produces a compressed movemask with shrn (for i8
lanes) or xtn (for wider lanes) then runs scalar cttz on a 64- or
128-bit value. Dividing by bits per lane gives the lane index.

Supports lane counts {2, 4, 8, 16, 32} (one or two NEON registers)

For the example in the issue (`<16 x i8> -> i16`):

Before:
```asm
adrp x8, .LCPI0_0
cmlt v0.16b, v0.16b, #0
ldr  q1, [x8, :lo12:.LCPI0_0]
and  v0.16b, v0.16b, v1.16b
ext  v1.16b, v0.16b, v0.16b, #8
zip1 v0.16b, v0.16b, v1.16b
addv h0, v0.8h
fmov w8, s0
orr  w8, w8, #0x10000
rbit w8, w8
clz  w0, w8
ret
```
After:

```asm
cmlt v0.16b, v0.16b, #0
shrn v0.8b,  v0.8h,  #4
fmov x8, d0
rbit x8, x8
clz  x8, x8
lsr  x0, x8, #2
ret
```

Also created a new test file with 24 functions covering both endianness

- 7 basic widths (`<16 x i8>` down through `<2 x i32>`)
- 4 wider cases that span two NEON registers (`<32 x i8>` etc)
- 2 narrow cases that get sext'd up to fit one register
- 2  cases where the bitcast has two users 
- 4 alternative comparison operators (`eq`, `ne`, etc)
- 1 `cttz` with `is_zero_undef=true`
- 4 negative tests that bails for unsupported shapes 


Fixes #186295


  Commit: 2cf5b7bf4d7dfc6091217d50e8114fd2e6856355
      https://github.com/llvm/llvm-project/commit/2cf5b7bf4d7dfc6091217d50e8114fd2e6856355
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll

  Log Message:
  -----------
  [LegalizeType] Fix VECTOR_DEINTERLEAVE widening with incorrect insert_subvector (#207245)

Partially address #207136 

There are really two parts in the associated issue: (1) incorrect type
widening logics that `insert_subvector` with indices that are not a
multiple of the sub-vector's minimum number of elements, and (2)
incorrect RISC-V lowering logics when it comes to fixed vector.

This PR addresses the first part: It turns out in order to have a
widened, packed concat vector, we don't need to use any insert_subvector
that involves widened operands -- just `concat_vectors` on the
_original_ (narrow) operands (before adjusting to the size of the
desired widened concat vector)


  Commit: 4fad93b912c954720de1b2b63a0f00679dc96550
      https://github.com/llvm/llvm-project/commit/4fad93b912c954720de1b2b63a0f00679dc96550
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/include/__vector/layout.h

  Log Message:
  -----------
  [libc++] Use _LIBCPP_NO_UNIQUE_ADDRESS for the new vector layout (#207149)

We use `_LIBCPP_NO_UNIQUE_ADDRESS`, since a plain
`[[no_unique_address]]` doesn't work on Windows.


  Commit: 760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd
      https://github.com/llvm/llvm-project/commit/760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd
  Author: Zhaoxuan Jiang <jiangzhaoxuan94 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [ThinLTO] Change GlobalValueSummaryMapTy from std::map to DenseMap+deque (#157839)

Replace GlobalValueSummaryMapTy with a custom container using DenseMap
for O(1) lookup and std::deque for storage with pointer stability. Sort
by GUID at serialization points to preserve deterministic output order.

RFC:
https://discourse.llvm.org/t/rfc-change-globalvaluesummarymapty-from-std-map-to-llvm-densemap-for-thin-linking-performance/88191


  Commit: 1bddfa5c75b551f5c387cb19462ea5eac9bf5da1
      https://github.com/llvm/llvm-project/commit/1bddfa5c75b551f5c387cb19462ea5eac9bf5da1
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lmul-max.ll

  Log Message:
  -----------
  [RISCV] Fix multiline RUN line in fixed-vectors-lmul-max.ll. NFC (#207309)

llvm-lit failed to parse the RUN line because we were missing a \ and a
second
RUN on the line below. The codegen has changed in the meantime but
because it
never parsed, llvm-lit always treated this test as passing.


  Commit: b4e651bb2cb22e5886518957a3048f83b67f9f83
      https://github.com/llvm/llvm-project/commit/b4e651bb2cb22e5886518957a3048f83b67f9f83
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/lit/lit/InprocBuiltins.py
    M llvm/utils/lit/lit/ShellEnvironment.py
    M llvm/utils/lit/lit/util.py

  Log Message:
  -----------
  lit: improve long path support on Windows (#207250)

This pull request improves Windows path handling in the
`llvm/utils/lit/lit` utilities by introducing and applying an `extended`
function to correctly format file paths for Windows APIs, especially for
long paths and UNC paths. The changes ensure that file operations such
as removal and redirection work reliably on Windows systems.

**Windows path handling improvements:**

* Added an `extended` function in both `InprocBuiltins.py` and
`ShellEnvironment.py` to convert paths to the extended-length format
required by Windows, handling both regular and UNC paths.
[[1]](diffhunk://#diff-7b75d403cff61cebbd12ef3915054dee6a887deaa2300fbc73a33f64ce2d1255R179-R186)
[[2]](diffhunk://#diff-31c539a1c64eb53261e543eeda1966733230d2b7613f5d500deed3f2f1ce2baeR121-R128)
* Applied the `extended` function to file removal operations in
`InprocBuiltins.py`, ensuring paths are properly formatted before
deletion, which helps avoid issues with long or special Windows paths.
* Used the `extended` function for redirected file paths in
`ShellEnvironment.py`, ensuring that redirections to files handle
Windows path limitations correctly.


  Commit: c671e80a2f3055d61f3f7a2a0aabee4d8d184bbd
      https://github.com/llvm/llvm-project/commit/c671e80a2f3055d61f3f7a2a0aabee4d8d184bbd
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Parallelize demoteSymbolsAndComputeIsPreemptible (#207310)

Each symbol's demotion and isPreemptible bit is independent.
Linking clang release is 1.02x as fast on an x86-64 machine.


  Commit: 8aaa28e8d735b6c9e9c2b46f82918eef07a0e6ee
      https://github.com/llvm/llvm-project/commit/8aaa28e8d735b6c9e9c2b46f82918eef07a0e6ee
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [RISCV] Cost legal interleaved memory ops correctly for code size (#207162)

This doesn't yet handle interleaved memory ops with a factor > 8 or with
a gap mask, that still needs to be handled below.


  Commit: e69038f9c2b1c47dd7beebb5531129514fab36e7
      https://github.com/llvm/llvm-project/commit/e69038f9c2b1c47dd7beebb5531129514fab36e7
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchSharedLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchStaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchSharedLibrary.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-nonempty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-empty-lu-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/namespace-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/top-level.test
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    M clang/unittests/ScalableStaticAnalysis/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Add `MultiArchSharedLibrary` data structure (#206854)

This change introduces `MultiArchSharedLibrary` data structure that wraps per-architecture `LUSummaryEncoding` members. This is the SSAF analogue of a fat shared library. The overall design mirrors the existing `MultiArchStaticLibrary` design: each member identifies the same logical library built for a different target triple. Support for constructing and consuming this object will be added in a future PR.

rdar://181164537


  Commit: 602897f729116f343b9dbf7bedc06c7e281ddca0
      https://github.com/llvm/llvm-project/commit/602897f729116f343b9dbf7bedc06c7e281ddca0
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvdot4a8i.ll
    M llvm/test/CodeGen/RISCV/rvv/zvdot4a8i-sdnode.ll

  Log Message:
  -----------
  [DAGCombiner] Reassociate chains of vector reductions (#206471)

`DAGCombiner::reassociateReduction` already folds a single
`add(vecreduce(x), vecreduce(y)) -> vecreduce(add(x, y))`, and the
balanced-tree form `add(add(vecreduce(a), b), add(vecreduce(c), d))`.
It does not, however, handle a linear chain of reductions like the one
SLP emits for x264's SAD:

```
add(reduce(X0), add(reduce(X1), add(reduce(X2), acc)))
```

Only the innermost pair can ever be merged; the cascade breaks and every
reduction survives to lowering, giving one `vredsum` (or one `uadalp` step,
etc.) per term.

This PR adds a third form to `reassociateReduction`:

```
op(vecreduce(X), op(vecreduce(Y), Z)) -> op(vecreduce(op(X, Y)), Z)
```

Applied to fixpoint by the combiner worklist, this collapses an
arbitrary-length chain into `add(vecreduce(BigSum), acc)`, which the
existing target combines then fold into a single reduction with the
external accumulator folded in as the reduction start value. On RISC-V
with `Zvdot4a8i` this recovers the desired single-`vredsum`, N-dot codegen
for x264 SAD; it also shortens the critical path for other targets (e.g.
AArch64 `uadalp`/`faddp` reduction chains) by exposing a balanced tree.

It is gated on the existing `shouldReassociateReduction` target hook and,
for `FADD`/`FMUL`, only enabled when all involved nodes carry the `reassoc`
fast-math flag, matching the existing two forms.

Fixes #168047.

Assisted-by: TraeCli (AI assistant)


  Commit: 16a6b516d7b72be6d1cd480febb2c1ebf2aa78c2
      https://github.com/llvm/llvm-project/commit/16a6b516d7b72be6d1cd480febb2c1ebf2aa78c2
  Author: Kevin Sala Penades <salapenades1 at llnl.gov>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  [NFC][Clang][OpenMP] Simplify checks for num_teams and thread_limit expressions (#207305)

Prepare changes for #206412


  Commit: 1030639662bf27022ec91045d4b457a2e69167e1
      https://github.com/llvm/llvm-project/commit/1030639662bf27022ec91045d4b457a2e69167e1
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lld/ELF/LinkerScript.cpp

  Log Message:
  -----------
  [ELF] Precompute orphan output section names in parallel. NFC (#207321)

addOrphanSections computes getOutputSectionName serially for every live
orphan section. Without --emit-relocs/-r, the name is a pure function of
the section: precompute the names with a parallelFor.


  Commit: e49c8a0363267c7b7235aabb3d36ac50e4281c26
      https://github.com/llvm/llvm-project/commit/e49c8a0363267c7b7235aabb3d36ac50e4281c26
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/include/__cxx03/string
    M libcxx/include/string
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/max_size.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/new_alignment.sh.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Base string's alignment on __STDCPP_DEFAULT_NEW_ALIGNMENT__ (#171785)

This allows users to influence how much we overalign `string`s
allocations and tune it to the new/delete implementation via
`-fnew-alignment`. If we don't have `__STDCPP_DEFAULT_NEW_ALGINMENT__`
or we're not using `std::allocator`, we default to an alignment of
`sizeof(void*)`.


  Commit: d3b6ad1c11c24362c7f94b41e5a26652047582c8
      https://github.com/llvm/llvm-project/commit/d3b6ad1c11c24362c7f94b41e5a26652047582c8
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/include/mlir-c/Rewrite.h
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    M mlir/test/CAPI/rewrite.c

  Log Message:
  -----------
  [mlir-c] Reapply Add ConversionTarget dynamic legality C API (#207104) (#207253)

Fixes LeakSanitizer failure from #206161 (reverted in #207104);
`mlirFreezeRewritePattern` moves contents out of the `RewritePatternSet`
but does not free the container (passed by value in the C API), so the
allocation from `mlirRewritePatternSetCreate` was never freed (add
`mlirRewritePatternSetDestroy(patterns)` after freezing).


  Commit: ac05f72d8fa879dce17b73859ad936d59e8731e5
      https://github.com/llvm/llvm-project/commit/ac05f72d8fa879dce17b73859ad936d59e8731e5
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/include/llvm/CodeGen/RegAllocCommon.h
    M llvm/include/llvm/CodeGen/RegisterBank.h
    M llvm/include/llvm/CodeGen/RegisterBankInfo.h
    M llvm/include/llvm/CodeGen/RegisterScavenging.h
    M llvm/include/llvm/CodeGen/ScheduleDAG.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCRegisterInfo.h
    M llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
    M llvm/lib/CodeGen/CriticalAntiDepBreaker.h
    M llvm/lib/CodeGen/RegisterCoalescer.h
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/Hexagon/BitTracker.h
    M llvm/lib/Target/Hexagon/HexagonBitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.h
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    M llvm/lib/Target/Mips/MipsRegisterInfo.h
    M llvm/lib/Target/Mips/MipsSEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.h
    M llvm/test/TableGen/RegisterClassCopyCost.td
    M llvm/test/TableGen/RegisterInfoEmitter-inherit-properties.td
    M llvm/test/TableGen/RegisterInfoEmitter-tsflags.td
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen] Merge TargetRegClass into MCRegClass (#207168)

Both data types store primitive information only and TargetRegisterClass
doesn't reference target-specific data structures. TargetRegisterClass,
however, freqeuently refers to MCRegisterClass through a pointer, which
prevents moving the large TargetRegisterClass instances to .rodata.

Therefore, merge the fields of TargetRegisterClass into MCRegisterClass
and adjust the remaining fields to use the existing storage mechanism
for pointer-free storage. To avoid invasive code changes, keep
TargetRegisterClass as alias for MCRegisterClass.

This reduces the size of .data.rel.ro by ~122 kiB in an all-target
build while growing .rodata by just 92 kiB. Further size improvements
are possible in future by reordering struct fields and deduplicating
masks/register lists/register class lists.

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


  Commit: aa7773bef31df88130002748881118cb9982f0c7
      https://github.com/llvm/llvm-project/commit/aa7773bef31df88130002748881118cb9982f0c7
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp

  Log Message:
  -----------
  [clang-tidy] Add regression tests for readability-redundant-typename. NFC. (#207318)

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


  Commit: 5969d640a349d593b5935fbe80be89f7a375f528
      https://github.com/llvm/llvm-project/commit/5969d640a349d593b5935fbe80be89f7a375f528
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/IR/Value.cpp
    M llvm/test/CodeGen/AMDGPU/amdhsa-trap-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/madak.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-mfma-form-spill-cost-reset.ll
    M llvm/test/CodeGen/X86/load-partial.ll
    M llvm/test/CodeGen/X86/oddsubvector.ll
    M llvm/test/Transforms/GVN/PRE/volatile.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.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/MergeICmps/X86/no-gep-other-work.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
    M llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
    M polly/test/ScopInfo/invariant_load_dereferenceable.ll

  Log Message:
  -----------
  [IR] Enable dereferenceable-at-point semantics (#204795)

The precise semantics of `dereferenceable` are currently undocumented,
but de facto they are:

* Argument position `dereferenceable` implies that the memory remains
dereferenceable while the function executes.
* Return position `dereferenceable` implies that the memory remains
dereferenceable forever.

This is not coherent with how these attributes are used, in at least two
ways:

* C++ reference arguments are annotated as `dereferenceable` by Clang.
However, C++ does not actually make any guarantees that the underlying
memory does not get freed during the execution of the function. (Unlike
Rust, which does guarantee this via protectors in SB/TB.)
* We infer `dereferenceable` on allocator return values (from
`allocsize`). Allocator return values quite obviously do not stay
dereferenceable forever, as they can be freed.

This PR changes the semantics of `dereferenceable` to apply at-point,
i.e. only directly on function entry (for arguments), or at the position
of the call (for return values). The fact that the memory cannot be
freed between the point where the `dereferenceable` fact has been
established and the point where we're trying to speculate needs to be
explicitly proven now.

The main ways this happens is:

* Via `nofree` function attributes (inferred).
* Via `noalias nofree` argument attributes. The latter is inferred, but
the former generally requires frontend annotation. In Rust the
combination of `noalias nofree dereferenceable` is used, so it should
not be materially affected by these changes.
* Context-sensitive analysis to check for frees (i.e. non-nofree calls
or synchronizing atomics) between the point of definition and the point
of speculation.

It's expected that this will regress optimization of C++ code in some
cases, because we can no longer use dereferenceability facts that are
not, in fact, guaranteed to hold.

This finishes implementing an old RFC:
https://discourse.llvm.org/t/rfc-decomposing-deref-n-into-deref-n-nofree/57873


  Commit: 805e89acff0d2f0685adac6eb7b75d1346827c77
      https://github.com/llvm/llvm-project/commit/805e89acff0d2f0685adac6eb7b75d1346827c77
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrInfo.td

  Log Message:
  -----------
  [Sparc] Mark LOAD_BIG/LOAD_LITTLE as MayLoad (#206924)

These were marked as MayStore, but should be MayLoad.


  Commit: 51e0c893151d1ded3b6e5b9c6bb378799a281ef2
      https://github.com/llvm/llvm-project/commit/51e0c893151d1ded3b6e5b9c6bb378799a281ef2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp

  Log Message:
  -----------
  [Sparc] Create MMO for STORE_BIG/LITTLE with MOStore (#206929)

This only stores, so we can use a store MMO instead of a load+store one.


  Commit: 4d8ec1968023e9ab0dcc0d112c65d4e1b36b07d2
      https://github.com/llvm/llvm-project/commit/4d8ec1968023e9ab0dcc0d112c65d4e1b36b07d2
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/RDFRegisters.cpp
    M llvm/lib/CodeGen/RegisterClassInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-list.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-tuple.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost.td
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Remove RegisterClasses pointer array (#207204)

All MCRegisterClasses are stored consecutively in memory. Therefore, we
can remove the RegisterClassses pointer array and save 17kiB in
.data.rel.ro.


  Commit: f2334004d0ce9ae6d280f0a9d5e8c05d9b3103c1
      https://github.com/llvm/llvm-project/commit/f2334004d0ce9ae6d280f0a9d5e8c05d9b3103c1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/buildvec-extract.ll
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/combine-or-shuffle.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll

  Log Message:
  -----------
  [X86] matchUnaryShuffle - only prefer VZEXT_MOVL to VPMOVZX if it will fold away (#207031)

Clean up the logic matching VZEXT_MOVL in preference over VPMOVZX - we
should only use this if the source vector is GPR->FPU or a single
element load (or target load), which fold away to an implicit zero
extension.

Pre-SSE41 targets will attempt to match VZEXT_MOVL again more generally
later on.


  Commit: 2f3d02610748ed8d5ae07ae5cfd837666dd27419
      https://github.com/llvm/llvm-project/commit/2f3d02610748ed8d5ae07ae5cfd837666dd27419
  Author: adalal-2441 <adalal at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
    M llvm/test/Transforms/LoopVectorize/flags.ll

  Log Message:
  -----------
  [VPlan] Intersect all fast-math flags in VPIRFlags::intersectFlags (#204664)

intersectFlags only ANDed the nnan and ninf flags and left the others
reassoc, arcp, contract, afn and nsz) unchanged. When CSE or
interleave-group narrowing combines two operations into one, the kept
operation's remaining flags then leak onto the merged value.

Intersect all fast-math flags instead, so the result keeps only the
flags present on both operations. A pure intersection is required
because the combined operations do not always compute the same value
(e.g. when narrowing interleave groups), so a flag may be kept only if
every combined operation had it.

Found via @jlebar's X86 LLVM bug hunt / FuzzX effort:
https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/090-vplan-cse-intersect-flags-fmf-wrong-direction

cc @jlebar


  Commit: 5447679305323f6108269929fe33a58c1d2c59b9
      https://github.com/llvm/llvm-project/commit/5447679305323f6108269929fe33a58c1d2c59b9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  Fix typo in release-documentation workflow (#207329)

This causes lots of "Invalid workflow file" errors.

Introduced in https://github.com/llvm/llvm-project/pull/204852.


  Commit: 813f06de0df4f0af5601cb1b109eb19b2373cad3
      https://github.com/llvm/llvm-project/commit/813f06de0df4f0af5601cb1b109eb19b2373cad3
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2b.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2c.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pre-RA.mir

  Log Message:
  -----------
  [AMDGPU] IGroupLP: Avoid DAG manipulation in greedyFind (#194827)

The greedy pipeline solver needs to determine the edges that are
implied by assigning an SUnit to a SchedGroup and the cost of this
assignment. The cost is the number of edges that cannot be added without
introducing cycles.  The current implementation (addEdges) adds the
edges to the DAG and uses the DAG reachability function for cycle
checking.  This happens for each candidate SchedGroup and needs to be
undone before other candidates are considered. The DAG manipulations
become a significant performance bottleneck on bigger pipelines.

This commit implements an alternative function for computing the edges
and cost of an assignment. This function performs the reachability
analysis that is necessary for the cyclicity checks without modifying
the DAG.

The new function returns the same cost as addEdges. The concrete edge
set may show insignificant differences, because, for instance,
the link function called from addEdges chooses not to add transitive
edges (DAG manipulations are more expensive than the check to avoid
this), but the new function includes such edges since this means that
it can avoid to update reachability information in one direction.

The schedule changes are caused due to the existing implementation not
resetting the DAG's topological order after removing the edges that
are added while examining the SchedGroup candidates. Hence it may have
used incorrect reachability information.


  Commit: e8b509f10bf34082b6fb35eb35e34f77ea583bef
      https://github.com/llvm/llvm-project/commit/e8b509f10bf34082b6fb35eb35e34f77ea583bef
  Author: Fan Mo <w007878 at hotmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaCXX/GH203701.cpp

  Log Message:
  -----------
  [clang] use decl itself in static assert failed boolean condition printer (#203736)

fixes #203701
  
`getName()` assumes the decl used in the static asserts has a simple
identifier name, but in some cases like `operator int` don't — they
fails the assertion `Name.isIdentifier() && "Name is not a simple
identifier"` when the `static_assert` failure diagnostic tries to print
the boolean expression.

Switching to getDeclName() handles these special names properly.

Reproducer:
```c++
  struct S {
    constexpr S(auto) {}
    constexpr operator int() const { return 0; }
  };

  constexpr auto a = [](this S) { return 1; };
  static_assert((&decltype(a)::operator())(1) == 42);
```

---
One thing I'm not sure about: the print helper that walks the boolean
expression lives in `SemaTemplate.cpp` (inside
`printTemplateArgumentList` / the DiagRecursiveConstraintEval visitor
area). Is there a historical reason for it being there rather than
somewhere more general like `SemaOverload.cpp` or a shared diagnostic
utility? Happy to move it if that makes more sense.

---
AI used for generating & fixing unit test


  Commit: 6de2b5f8f45d88d25956a2536460d441cd07eeef
      https://github.com/llvm/llvm-project/commit/6de2b5f8f45d88d25956a2536460d441cd07eeef
  Author: pkarveti <pkarveti at qti.qualcomm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    A llvm/test/CodeGen/Hexagon/vselect.ll

  Log Message:
  -----------
  [Hexagon] Lower vselect instruction (#206675)

Selection fails with "Cannot select: vselect" when the condition and
both data operands of an HVX vselect are predicate vectors (e.g. v32i1,
v64i1, v128i1). This patch adds patterns for vselect on HVX predicate
vectors of all three element widths (VecQ8, VecQ16, VecQ32), expanding
them to V6_pred_or/V6_pred_and/V6_pred_and_n on Q registers.

Patch-By: @iajbar 
Fixes #206353


  Commit: 2870ebbcb50db6bf451f902d8d611bf8709168c7
      https://github.com/llvm/llvm-project/commit/2870ebbcb50db6bf451f902d8d611bf8709168c7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp

  Log Message:
  -----------
  [CrossProjectTests] Fixup expect in ctor.cpp to accept multiple steps (#207337)

In the test `ctor.cpp`, Dexter tests that when we step into the
constructor used in the test, the value of `this` isn't irretrievable.
To protect against a rotten pass it also checked that we stepped once,
but this caused failures on some platforms where we would step twice on
the constructor - this patch resolves the issue by accepting any
non-zero value for the number of steps.


  Commit: 448e7fec76bdedb50c2e8e17f68440b505da369c
      https://github.com/llvm/llvm-project/commit/448e7fec76bdedb50c2e8e17f68440b505da369c
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/LifetimeSafety/safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Track unary plus on a pointer (#207243)

Unary plus on a pointer is the identity (+p == p), so the result carries
the operand's loans -- but UO_Plus fell through VisitUnaryOperator's
default and left the result origin empty, dropping the borrow (e.g. p =
+&local was a silently-missed use-after-scope). Handle it by flowing the
operand's rvalue origins.

Assisted-by: Claude Opus 4.8

Co-authored-by: Gabor Horvath <gaborh at apple.com>


  Commit: b0c9d8ad10786d4861039b6806ceadda313229dd
      https://github.com/llvm/llvm-project/commit/b0c9d8ad10786d4861039b6806ceadda313229dd
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp

  Log Message:
  -----------
  [AArch64][InstCombine] Tidy [su]adalp combine (NFC) (#207219)

I missed some comments in the #204796 PR.


  Commit: 0341dd51303fc13cafdd21a33e2985cbf603c66b
      https://github.com/llvm/llvm-project/commit/0341dd51303fc13cafdd21a33e2985cbf603c66b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    A llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    A llvm/test/Bitcode/module-asm.ll
    A llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    A llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    A llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    A llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  [IR] Explicitly specify target feature for module asm (#204548)

Support specifying additional properties on module-level inline
assembly. In particular, the target features and target CPU can now be
specified as follows:

    module asm(target_features: "+foo", target_cpu: "bar")
        "asm line 1"
        "asm line 2"

There may be multiple module inline assembly blocks with different
properties.

This is intended to fix the long standing issue where in LTO scenarios
we don't know what target features to use for parsing the module-level
inline assembly. Now they can be faithfully preserved, even when merging
inline assembly from different modules with different features.

If target_features and target_cpu are empty, we fall back to the old
behavior (which, in the backend, would be to use the default subtarget
of the TargetMachine).

Fixes https://github.com/llvm/llvm-project/issues/61991.
Fixes https://github.com/llvm/llvm-project/issues/67698.


  Commit: 473b0a3b727a89140762b558d74520915bd164ff
      https://github.com/llvm/llvm-project/commit/473b0a3b727a89140762b558d74520915bd164ff
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/unittests/Basic/CMakeLists.txt
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  Fix MSVC build after #206326 (again) (#207335)

Adding /utf-8 is bigger endeavor than I hoped, just disable the
problematic test case for now


  Commit: 73e1c53474a46a9686d7111c8566be2d90263aa4
      https://github.com/llvm/llvm-project/commit/73e1c53474a46a9686d7111c8566be2d90263aa4
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libc/startup/baremetal/arm/start.cpp

  Log Message:
  -----------
  [libc][ARM] Defend banked SP setup against register allocator (#206757)

The startup code for bare-metal AArch32 A/R shifts the CPU through all
the different modes which have their own copies of SP, updating all the
stack pointers to the same value. But it does it using C intrinsics,
leaving the register allocation to the compiler – so it's possible that
the register allocator happens to use one of the _other_ banked
registers, such as LR.

For example, when I built this code today, it happened that LR was used
to hold one of the constants written into CPSR_c to change mode. That
constant was written into the SVC mode LR before any mode changes, but
the MSR instruction that tried to use it was run in a different mode, so
it copied from _that_ mode's LR, which contained uninitialised nonsense
in place of the desired constant, triggering a boot-time crash.

I think it's safer to use a single asm statement for the whole job,
guaranteeing which registers it uses.


  Commit: 17e7497629ccb47a1f23aa5e0ba228d6d0e2a0a0
      https://github.com/llvm/llvm-project/commit/17e7497629ccb47a1f23aa5e0ba228d6d0e2a0a0
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/global-constant.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/hello.c
    M cross-project-tests/debuginfo-tests/dexter-tests/inline-line-gap.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/realigned-frame.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c
    M cross-project-tests/debuginfo-tests/dexter/Heuristic.md
    M cross-project-tests/debuginfo-tests/dexter/Script.md
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex-continue.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex_step_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/debug_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_after_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_finish.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_step_out.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_penalties.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_perfect.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/invalid_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/simple_labels.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/source_root_dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/nested_wheres.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/bad-where-attr.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/error-locations.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-script-nodes.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/step-node-expected-values.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/valid-parse.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_types_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_step_lines.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/where_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_limit_steps_no_values.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp

  Log Message:
  -----------
  [Dexter] Switch to using script-mode by default (#204369)

This patch changes the default mode of Dexter from heuristic-mode to
script-mode. The --use-script argument is replaced with --use-heuristic,
some comments/docs/error messages are updated accordingly, and tests
have their flags switched accordingly.


  Commit: 67d7dfcfbc91862a85084e7848ebd62b929e8f78
      https://github.com/llvm/llvm-project/commit/67d7dfcfbc91862a85084e7848ebd62b929e8f78
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-v8a.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64_i128_endianness.ll

  Log Message:
  -----------
  [AArch64] Fix reversed values in big-endian 128-bit atomics (#205760)

When AArch64TargetLowering expands a load-linked or a store-conditional
during the atomic-expand pass, it made the fixed assumption that the
64-bit value stored first in memory was the low-order half of the
128-bit value, instead of checking the SubtargetInfo's endianness. The
same was true of the code that expands CMP_SWAP_128 pseudoinstructions.
So in each case, if you compiled 128-bit atomic code big-endian, you'd
get back a 128-bit integer with the top and bottom half swapped.

This was found by compiler-rt's existing tests when we ran them for a
big-endian AArch64 target in Arm Toolchain.

Most of the test changes here are `update_llc_test_checks` churn: there
were already many tests of AArch64 atomics in big-endian mode, and
apparently they all simply had the reversed registers in their expected
output.

The one new test, `aarch64_i128_endianness.ll`, directly demonstrates
the failure if run against llc without the patch, because it does both
atomic and normal loads and stores in each test function, and you can
see in the big-endian generated code that the same pair of registers is
used in opposite orders by the ldxp/stxp and ldp/stp instructions. After
this fix, the order of the registers matches.


  Commit: 243211a9222dde80433e57b710cff7de5b9fc38a
      https://github.com/llvm/llvm-project/commit/243211a9222dde80433e57b710cff7de5b9fc38a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [ReleaseNotes] Remove leftover conflict marker (#207348)


  Commit: efcfff751f856c66c936d2057ed9a8463e070833
      https://github.com/llvm/llvm-project/commit/efcfff751f856c66c936d2057ed9a8463e070833
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.append.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.assign.pass.cpp

  Log Message:
  -----------
  [libc++] Add assert test for string assign/append (#207164)

Fixes
https://github.com/llvm/llvm-project/pull/206320#discussion_r3507502638.


  Commit: 15b38829f76f2116e8ce3dca0b52528e94537e41
      https://github.com/llvm/llvm-project/commit/15b38829f76f2116e8ce3dca0b52528e94537e41
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion.ll

  Log Message:
  -----------
  [AArch64][FastISel] Update arm64-fast-isel-conversion.ll check lines (NFC) (#207159)

Before fixing relevant bugs and extending the existing tests,
auto-generate CHECKs.

Note that some of the existing CHECKs actually check for buggy isel.
Those will be fixed separately, after adding more tests in a separate
PR. This PR just runs `update_llc_test_checks.py`.


  Commit: 4d46b7afdab1747618fdd0f1480ae59d8352eeea
      https://github.com/llvm/llvm-project/commit/4d46b7afdab1747618fdd0f1480ae59d8352eeea
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Report error if HasGroup is set without types (#207334)

Setting `HasGroup = 1` in tablegen without the types being non-empty
causes problems later, so diagnose it.


  Commit: 499eba67ee2301b8692c3b1903840896d2c12d73
      https://github.com/llvm/llvm-project/commit/499eba67ee2301b8692c3b1903840896d2c12d73
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sve2p1-while-pn-folds.ll

  Log Message:
  -----------
  [SDAG][AArch64] Fold extract from pext to use status flags (#206443)

This folds extracting the first bit from the first segment of a
predicate-as-counter to use the "first active" status. E.g.:

```
%pn:aarch64svcount, %flags:FlagsVT = WHILELO_PRED_COUNTER(a, b, VLx4)
%first_pred:nxv4i1 = pext(%pn, 0)
%more:i1 = extractelement(%first_pred, 0)
```
->
```
%pn:aarch64svcount, %flags:FlagsVT = WHILELO_PRED_COUNTER(a, b, VLx4)
%more = CSET(%flags, FIRST_ACTIVE)
```

Assisted-by: Codex (adding test variations)


  Commit: 11438bc8e31252be03e8a47773da3964ab2df215
      https://github.com/llvm/llvm-project/commit/11438bc8e31252be03e8a47773da3964ab2df215
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-masked-gather-64b-unscaled.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather.ll

  Log Message:
  -----------
  [AArch64] Combine undef UZP and NVCAST away. (#204623)

These are used to lower insert_subvec nodes quite early in SDAG. After
DAG combines run, it's possible that the inputs to these AArch64 nodes
become UNDEF.


  Commit: ba8e423be48d3505b89f27348faaad3e810168fa
      https://github.com/llvm/llvm-project/commit/ba8e423be48d3505b89f27348faaad3e810168fa
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbutil.py
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py

  Log Message:
  -----------
  [lldb][test] Add a function to spawn lldb-server platforms (#205083)

I will be doing this in a future test and we already have a few copies of this code in various tests.


  Commit: 234960e7ad301a99acf650d71899a00c80eda1d2
      https://github.com/llvm/llvm-project/commit/234960e7ad301a99acf650d71899a00c80eda1d2
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-intra-tu.cpp

  Log Message:
  -----------
  [LifetimeSafety] Point annotation suggestion location to fix-it insertion point (#207345)


  Commit: aded5309868f4d757490a804d331d4d12bf410b2
      https://github.com/llvm/llvm-project/commit/aded5309868f4d757490a804d331d4d12bf410b2
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    A clang/test/CodeGen/attr-counted-by-with-sanitizers.c
    A clang/test/CodeGen/attr-counted-by-without-sanitizers.c
    R clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang][tests][NFC] Split __counted_by attribute testcases into two (#207144)

Splitting the testcase file makes it easier to review the generated
code. The only changes are cosmetic:

  - Renaming functions and structs to be more descriptive, and
  - Removing a duplicate test.


  Commit: 253d6f216a62ab2e1005ca6a7a56385aa399ef4d
      https://github.com/llvm/llvm-project/commit/253d6f216a62ab2e1005ca6a7a56385aa399ef4d
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py

  Log Message:
  -----------
  [CI][flang][OpenMP] Build OpenMP runtime mod files for flang tests (#206517)

Some flang openmp lit tests require mod files (a bit like C header
files, except they are compiler generated) from the openmp runtime. As
the openmp runtime is not currently built in this configuration, these
71 flang tests get skipped and a warning is emitted.

Here I enable openmp as a dependency for flang but add
-DLIBOMP_FORTRAN_MODULES_ONLY=ON so that only the required mod files are
built and not the whole of the openmp runtime.

This only effects linux bots: Windows and MacOS explicitly exclude
openmp so it will still not be enabled there.

Assited-by: Codex


  Commit: 38241083163a3743413dafd86b45739a2143622e
      https://github.com/llvm/llvm-project/commit/38241083163a3743413dafd86b45739a2143622e
  Author: Ege Beysel <beysel at roofline.ai>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/include/mlir/Interfaces/TilingInterface.h
    M mlir/include/mlir/Interfaces/TilingInterface.td
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/lib/Interfaces/TilingInterface.cpp
    A mlir/test/Dialect/Linalg/scalable-pack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-tiling.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-tiling.mlir
    M mlir/test/Dialect/Linalg/transform-ops-invalid.mlir
    M mlir/test/Dialect/Linalg/transform-ops.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][linalg/scf/transform] scalable tiling and fusion for pack/unpack ops (#204007)

# Inner tile alignment hints for scalable `linalg.pack`/`linalg.unpack`
tiling and fusion

## Overview

Tiling and fusing `linalg.pack`/`linalg.unpack` produces a clean result
only when the tiling implementation can tell how a loop tile size
relates to the op's inner tile size. When both are statically known this
is decided by comparing the constants. But with **scalable** (and, more
generally, dynamic) sizes, e.g. a loop tile of `8 * vscale` against an
inner tile of `8 * vscale`, that relationship is symbolic and cannot
cleanly be recovered from the IR, so the implementation conservatively
falls back to a dynamic, over-allocated tile. See #150185 for more
details.

This PR adds an optional **inner tile alignment hint**: a per-dimension
caller assertion about that relationship, threaded from the transform-op
surface through the SCF driver into the pack/unpack `TilingInterface`
implementations. The caller is already aware of both the loop tile
sizes, and the inner tile sizes, and therefore can set these hints
easily. With the hint, scalable pack/unpack tiling and fusion produce
the same tight IR they produce for the statically-aligned case.

## The inner tile alignment hint

`InnerTileAlignment` is a per-iteration-domain-dimension enum:

- `Unknown` (`0`) — no information; the implementation keeps its prior
behavior.
- `Multiple` (`1`) — the loop tile size is an integer multiple of the
inner tile.
- `Equal` (`2`) — the loop tile size equals the inner tile size.

It is a *caller assertion*, not a checked fact. It is consulted only
when the relationship cannot be decided from the IR; when the tile and
inner-tile sizes are both statically known, that static comparison wins
and a contradicting hint is ignored rather than allowed to corrupt the
result. Otherwise the hint is not verified, so an incorrect assertion
silently produces invalid tiling, its correctness is owned by the
caller. Only pack/unpack consult it; every other op ignores it.

## TilingInterface API

Four methods gain a second overload taking an extra
`ArrayRef<InnerTileAlignment>` hint:

- `getTiledImplementation`
- `generateResultTileValue`
- `getTiledImplementationFromOperandTiles`
- `getIterationDomainTileFromOperandTiles`

The hint-bearing overload defaults to forwarding to the hint-less one,
so the change is additive: existing implementers and callers that never
mention the hint are unaffected, and the rest of the interface is
untouched.

### Where it helps

The loop tiles the packed dimension by `8 * vscale`, so the size handed
to the pack/unpack is a **full-or-remainder** `affine.min` against that
step:

```mlir
//   #map = affine_map<(d0)[s0] -> (-d0 + 4096, s0)>   // min(4096 - iv, 8*vscale)
%ts = affine.min #map(%iv)[%c8_vscale]
// ... %ts feeds the extracted slice fed to the pack/unpack, whose inner tile
//     on this dimension is also 8*vscale.
```

To fold the tiled op's outer (tile-count) dimension to a static `1`, the
current implementation asks
`ValueBoundsConstraintSet::computeConstantBound` for a *constant* upper
bound on `%ts` and compares it against the inner tile size, essentially
`UB(%ts) % innerTile == 0`. With a scalable `8 * vscale` inner tile,
neither the upper bound of `%ts` nor the inner tile is a constant, so
the comparison is undecidable and the tile conservatively falls back to
a dynamic outer dim (`tensor<?x...>`), over-allocating the tile.

`inner_tile_alignments = [Equal]` asserts `%ts == 8 * vscale`, so the
outer dim folds to a static `1` (`tensor<1x...>`); `[Multiple]` instead
takes the `ceilDiv` branch. The hint thus supplies exactly the
relationship the upper-bound comparison cannot recover for symbolic
sizes.

### How the hint is arranged

- One entry per **iteration-domain dimension**, in **pre-interchange**
order (`interchange` only reorders the generated loops, not the hint).
- Entries are **not** remapped through indexing maps or
`outer_dims_perm`: for a transposing pack they stay in source
(pre-permutation) order.
- For the consumer-fusion (`*FromOperandTiles`) methods, the indexing
follows the op's iteration domain: for a pack it coincides with the
unpacked source dims; for an unpack the entry for the i-th inner tile
sits at its destination dimension `inner_dims_pos[i]`.

The caller must pre-arrange the array to match this order. See the tests
for more examples.

### Out-of-tree implementers

Because the two overloads share a source name:

- An op that lists one of the four methods in
`DeclareOpInterfaceMethods` now has **both** arities declared on it, so
it must also define the hint-bearing overload (typically a one-line
forward to the hint-less one).
- An `ExternalModel` that defines the hint-less overload **hides** the
inherited defaulted hint-bearing overload (C++ name hiding); add `using
Base::<method>;` to keep it visible.

Implementers that do not care about the hint need no functional change
beyond the above visibility boilerplate.

## SCF tiling driver API

The producer- and consumer-fusion driver entry points
(`tileAndFuseProducerOfSlice`, `tileAndFuseConsumerOfSlices`,
`tileAndFuseConsumer`) and `SCFTilingOptions` accept an optional
**control function** rather than a single fixed array.

A single tile-and-fuse invocation can tile/fuse several ops with
**different iteration domains**, so no single array can be correct for
all of them. The driver therefore invokes the control function once per
op being tiled/fused and
expects the returned array to be in *that op's own* domain, it does not
remap it.

### Why a control function and not one array

A single tile-and-fuse can pull in more than one pack/unpack, and each
consults the hint in *its own* iteration domain:

```mlir
%unpacked = linalg.unpack %p0 inner_dims_pos = [0] inner_tiles = [%c8_vscale] ... // domain A
%mul      = linalg.generic ins(%unpacked, ...) ...                                // tiled root
%packed   = linalg.pack   %mul inner_dims_pos = [1] inner_tiles = [%c4_vscale] ... // domain B
// One tile-and-fuse: tile %mul, fuse %unpacked (producer) and %packed (consumer).
```

Both `%unpacked` and `%packed` consume the hint, but their domains
differ, a different dimension is tiled and the inner-tile arrangement is
different, so the array indexed in `%unpacked`'s domain is simply wrong
for `%packed`. No single fixed array can be correct for both. The driver
therefore invokes the control function once per op being tiled/fused and
the caller returns each op's array in its own domain.

### Why the function gets slices (not tile sizes) for fusion

For pure tiling the driver knows the explicit tile sizes and passes
them. In fusion there are no caller-specified tile sizes for the fused
op, its tile is induced by the `tensor.extract_slice` (producer) or
`insert_slice` (consumer) being fused. The control function is therefore
handed those slices, from which the caller can derive the alignment in
the fused op's domain.

## Transform ops

`transform.structured.tile_using_for`, `transform.structured.fuse`, and
`transform.structured.fuse_into_containing_op` gain an optional
`inner_tile_alignments` array attribute (empty by default, preserving
prior behavior). It is wired to the driver as a **constant** control
function (the same array for every op). This is sufficient because each
of these ops drives tiling/fusion at single-op granularity; the per-op
control function remains available at the library/driver level for
callers that fuse multiple ops with differing domains. The test-only
`transform.test.fuse_consumer` is wired the same way.

## Testing

- **`linalg.unpack`**: standalone tiling, producer fusion
(`structured.fuse`, `fuse_into_containing_op`), and consumer fusion
(`test.fuse_consumer`), with both `Multiple` and `Equal` hints.
- **`linalg.pack`**: standalone tiling, producer fusion, and consumer
fusion (`test.fuse_consumer`), with both `Multiple` and `Equal` hints.
- Negative cases: missing hint falls back to the conservative tiling; a
hint that contradicts statically-known sizes is ignored; transposing
`outer_dims_perm`/consumers confirm source-order (un-permuted) indexing.
- Transform-op attribute verification (`inner_tile_alignments`
validity).


Assisted-by: Claude Code

---------

Signed-off-by: Ege Beysel <beyselege at gmail.com>


  Commit: a4df89bcc69ad1c3ef9e57c4cd692cc15cec82d6
      https://github.com/llvm/llvm-project/commit/a4df89bcc69ad1c3ef9e57c4cd692cc15cec82d6
  Author: Maxim Potapchik <maximp1012 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetPfmCounters.td
    A llvm/test/TableGen/ExegesisRawPfmCounters.td
    M llvm/tools/llvm-exegesis/lib/Target.cpp
    M llvm/tools/llvm-exegesis/lib/Target.h
    M llvm/utils/TableGen/ExegesisEmitter.cpp

  Log Message:
  -----------
  [llvm-exegesis] Add raw PMU encoding in TargetPfmCounters tablegen (#201228)

Adds optional EventSelect and UMask fields to PfmCounter in
TargetPfmCounters.td. EventSelect defaults to -1 (no raw encoding).
When set, ExegesisEmitter outputs raw hex values instead of a libpfm
symbolic name, allowing per-CPU .td entries to bypass
pfm_get_os_event_encoding for counters that are undocumented or
unsupported in libpfm.

Extends PfmCountersInfo with CycleCounterEventSelect, CycleCounterUMask,
UopsCounterEventSelect, and UopsCounterUMask fields. PerfHelper wiring
in a subsequent patch.

Towards #187930


  Commit: c6579063cd660094ed7fd121191c5fb9cd1c4b55
      https://github.com/llvm/llvm-project/commit/c6579063cd660094ed7fd121191c5fb9cd1c4b55
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp

  Log Message:
  -----------
  [DebugInfo] Avoid std::function in DWARF verifier internals (#202866)

This changes `OutputCategoryAggregator`'s synchronous callback
parameters from `std::function` to `function_ref`, avoiding type-erased
callback construction at 75 `DWARFVerifier` diagnostic sites.

On an arm64 Release build, standalone llvm-dwarfdump decreases by
133,680 bytes raw and 17,040 bytes stripped, `DWARFVerifier.cpp.o`
decreases by 174,464 bytes, and linked fixups decrease by 546.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 47e3ac23cb90d206ada66383517ffe0e996c60c9
      https://github.com/llvm/llvm-project/commit/47e3ac23cb90d206ada66383517ffe0e996c60c9
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb][test] Truncate unexpectedly long test outputs (#206967)

A bug in LLDB could make our tests to produce giant ValueObjects with
millions of children. The same goes for most commands that print out
test data. While our test system can handle this amount of output, the
resulting log output will most likely break the storage capacity of our
build bots.

This patch adds truncation to the various expect* methods that avoids
spamming the output in the (unlikely) case this happens.

See also #206444


  Commit: 59362e4224aa66092a40dbbaac87f38e4dbc6e61
      https://github.com/llvm/llvm-project/commit/59362e4224aa66092a40dbbaac87f38e4dbc6e61
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/TestDataFormatterStdVBool.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/main.cpp

  Log Message:
  -----------
  [lldb][test] Modernize and expand data-formatter-stl/generic/vbool (#206955)

This fixes several issues with this test:
* We use modern test utils for setting up the process.
* We get rid of the state-reset code which is no longer necessary these
days.
* Expand the test to also cover an empty and sub-word-size vector of
bool.

assisted-by: claude


  Commit: bb315b7e2953f02e1c8996b110752610e2187ce0
      https://github.com/llvm/llvm-project/commit/bb315b7e2953f02e1c8996b110752610e2187ce0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] Update (p)haddsub undef element tests to match the output IR from the middle-end (#207244)

Use the vectorised output from the PhaseOrdering/X86 hadd.ll tests -
I've added test coverage for multiple SSE/AVX levels for cases where the
middle-end output is different for any level.

This exposes a number of regressions that have been there for some time
but we'd missed as we'd assumed the backend would still be receiving
non-vectorised IR, but there's been plenty of changes to SLP,
InstCombine and VectorCombine since then - end2end tests would have been
very useful here :(

Looking at fixes next before finally removing the (dead) scalar hadd
matching code for #143000


  Commit: 97f71863590c260870789489200a7652c957827f
      https://github.com/llvm/llvm-project/commit/97f71863590c260870789489200a7652c957827f
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/DenseSet.h

  Log Message:
  -----------
  [ADT][NFC] Remove unused ValueInfoT from DenseSetImpl (#207277)

The `ValueInfoT` template type was unused and is removed in this patch.

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: 35bbd6224676b6c0464f92c9f63a7d61f9e53b2a
      https://github.com/llvm/llvm-project/commit/35bbd6224676b6c0464f92c9f63a7d61f9e53b2a
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/test/MC/AArch64/arm-poe2.s

  Log Message:
  -----------
  [AArch64][llvm] Update POE2 thread-private system register names (#200428)

The `TPMINn_ELn` and `TPMAXn_ELn` system registers have been removed
from the 2026-06 documentation [1]. Their encodings are now used by the
`TPCRn_ELn` system registers [2].

Update the system register definitions and MC tests accordingly.
  
[1] https://developer.arm.com/documentation/111109/2026-06
[2]
https://developer.arm.com/documentation/111107/2026-06/AArch64-Registers/TPCR0-EL0--Thread-Private-State-Register-0--EL0-


  Commit: ce68a9916a908b3ed0b7e26468140ee63696558e
      https://github.com/llvm/llvm-project/commit/ce68a9916a908b3ed0b7e26468140ee63696558e
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s

  Log Message:
  -----------
  [AMDGPU][AsmParser] Fix representing src2 op_sel for MAC instructions (#206033)


  Commit: 4f06fa92b6cf16cec5bd0bfe7ef3efec17b91e24
      https://github.com/llvm/llvm-project/commit/4f06fa92b6cf16cec5bd0bfe7ef3efec17b91e24
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp

  Log Message:
  -----------
  [libc++][ranges] Enable CPO compile tests (#207123)

`adjacent_transform_view` and `stride_view` were implemented but the
test cases were omitted.

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 61f64e3fececf30cd15727e5d3fc303191513e2e
      https://github.com/llvm/llvm-project/commit/61f64e3fececf30cd15727e5d3fc303191513e2e
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [AMDGPU][InsertWaitCnt] Remove Leftover Comment (#207378)

The right test cases were added in #206439 so that comment no longer
applies.


  Commit: 3b908aaf1de387c34738ebe5166adab98d2254ce
      https://github.com/llvm/llvm-project/commit/3b908aaf1de387c34738ebe5166adab98d2254ce
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll

  Log Message:
  -----------
  [X86] haddsub-undef.ll - sync more testnames with their phaseordering equivalents (#207370)

Ensure we have equivalent hadd/sub middle-end test coverage with similar names for lookup


  Commit: df6e3809d218f42f17a3c90f31498b01b0122346
      https://github.com/llvm/llvm-project/commit/df6e3809d218f42f17a3c90f31498b01b0122346
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp

  Log Message:
  -----------
  [AArch64] Minor simplification in aarch64-ldst-opt with an early return (#207182)

Remove the local `MBBIWithRenameReg` by moving an early return at an
even earlier point.

When `MBBIWithRenameReg` is set we always return early. By moving the
early return to `MBBIWithRenameReg` update we get rid of a local
variable which spans  200+ lines. This also fixes a misleading debug
print between `MBBIWithRenameReg` update and early return:

```
LLVM_DEBUG(dbgs() << "Unable to combine these instructions due to "
                << "interference in between, keep looking.\n");
```

This line shouldn't be printed when we set `MBBIWithRenameReg`, which is
fixed with this change.


  Commit: 965b73ab185f3798b1afe0895476ae899189fcb0
      https://github.com/llvm/llvm-project/commit/965b73ab185f3798b1afe0895476ae899189fcb0
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/M68k/M68kRegisterInfo.cpp

  Log Message:
  -----------
  [M68k] Fix build after removal of RegisterClasses pointer array (#207364)

Commit 4d8ec1968023 ("[CodeGen][NFC] Remove RegisterClasses pointer
array (#207204)") removed regclass_begin()/regclass_end() from
TargetRegisterInfo, so those names now resolve to the MCRegisterInfo
versions whose iterator dereferences to a MCRegisterClass rather than a
const TargetRegisterClass *, breaking getMaximalPhysRegClass():

  error: cannot convert 'const llvm::MCRegisterClass' to
  'const llvm::TargetRegisterClass*' in initialization

M68k was not updated in that commit. Switch to the range-based
regclasses() idiom used elsewhere in the same change.

Regressor: 4d8ec1968023 ("[CodeGen][NFC] Remove RegisterClasses pointer
array") (#207204)


  Commit: 22e5273cc3334906fc18fce2aebb74986259e31d
      https://github.com/llvm/llvm-project/commit/22e5273cc3334906fc18fce2aebb74986259e31d
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-declare-target-func-visibility.mlir
    M mlir/test/Target/LLVMIR/omptarget-device-shared-mem.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Change device declare target functions to hidden visibility (#207234)

During OpenMP lowering, globally visible device functions are emitted.
These functions might not be kernels themselves, but are designed to
only be called in a kernel context. However, if they are unused, and not
inlined, and reference LDS, the AMDGPU ISel emits lots of misleading
warnings related to "local memory global used by non-kernel function".
Fix by changing visibility from external+default to external+hidden,
which allows DCE to just remove the functions.

Claude assisted with this patch.


  Commit: afe7d8c4d0dce76e0775cdea9e1ed3ee58b63146
      https://github.com/llvm/llvm-project/commit/afe7d8c4d0dce76e0775cdea9e1ed3ee58b63146
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp

  Log Message:
  -----------
  [CSKY] Fix build (#207389)

After 0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22.


  Commit: ac47f992ffac0842891a7fb6f412bff49b12f364
      https://github.com/llvm/llvm-project/commit/ac47f992ffac0842891a7fb6f412bff49b12f364
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/TokenKinds.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseMapInfo.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/include/llvm/Support/JSON.h

  Log Message:
  -----------
  [ADT][NFC] Remove unused includes in DenseMap/DenseSet headers (#207282)

Remove unused includes in DenseMap/DenseSet headers.
`llvm/Support/AlignOf.h` was transitively included in
`llvm/Support/JSON.h`


  Commit: 4cdb0335647089e12cb7b8d675871bb7086ed189
      https://github.com/llvm/llvm-project/commit/4cdb0335647089e12cb7b8d675871bb7086ed189
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-tail-folding.ll

  Log Message:
  -----------
  [VPlan] Optimize pre-increment IV latch users with tail folding (#206499)

This was noticed after #204089 caused IndVarsSimplify to convert some
live out IV users to use the pre-incremented IV, not the
post-incremented.

Tail folded live-outs don't have the `(extract-last-lane
(extract-last-part foo))` form, but instead have the form `(extract-lane
(last-active-lane header-mask), foo)`.
For post-incremented IVs in tail folding, these are converted to
VPInstruction::ExitingIVValue which are handled separately. But
ExitingIVValue can't be used for the pre-incremented IV. So this teaches
optimizeLatchExitInductionUser to detect the last-active-lane of the
header mask form.


  Commit: a4e51ff84f7eae35f2b1e5e6b53ba0cd3d2e3089
      https://github.com/llvm/llvm-project/commit/a4e51ff84f7eae35f2b1e5e6b53ba0cd3d2e3089
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [VPlan] Introduce m_Branch matcher (NFC) (#207383)


  Commit: c1a016708ee305c72db55b613b8c036ca6dfb84e
      https://github.com/llvm/llvm-project/commit/c1a016708ee305c72db55b613b8c036ca6dfb84e
  Author: Barbara Mitic <bmitic at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll

  Log Message:
  -----------
  [AMDGPU] Accept sext addresses when folding image ops to a16 (#203189)

canSafelyConvertTo16Bit() only accepts a zext when narrowing image
address coordinates to 16 bits. Add an opt-in AllowI16SExt flag so a
sext from i16 is accepted too, and enable it for sampler-less image
instructions.
Coordinates of sampler-less loads/stores are unsigned, so sext and zext
only disagree for a negative i16 (>= 0x8000), which is already out of
bounds since the maximum image dimension is <= 0x8000. Accepting the
sext therefore lets such coordinates fold to the a16 form, reducing VGPR
pressure.

Co-authored-by: Barbara Mitic <Barbara.Mitic at amd.com>


  Commit: 7a3ed4d252ff06161f73d68f3f31bc9aac50aa22
      https://github.com/llvm/llvm-project/commit/7a3ed4d252ff06161f73d68f3f31bc9aac50aa22
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge.def
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_set_neonq.c

  Log Message:
  -----------
  [Clang][SVE ACLE] Remove +bf16 requirement from neon-sve bridge builtins. (#205332)

These builtins only care about the size of the element type and do not
require bfloat specific instructions.


  Commit: 1d577d28b2d259e99795d4f523d527335b04075d
      https://github.com/llvm/llvm-project/commit/1d577d28b2d259e99795d4f523d527335b04075d
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/ClangStaticAnalyzer.md
    M clang/docs/ScalableStaticAnalysis/index.md

  Log Message:
  -----------
  [analyzer][docs] Fix invalid MyST toctree 'numbered' option after Markdown migration (#207217)

The RST-to-Markdown migration (#206181) converted the RST flag
`:numbered:` into `:numbered: true`.

MyST parses the toctree `numbered` option as `int_or_nothing`, so the
string `true` fails with:

```
'toctree': Invalid option value for 'numbered': true:
invalid literal for int() with base 10: 'true'
```

This breaks the `-W` (warnings-as-errors) `docs-clang-html` build.
Make `numbered` a valueless flag, which MyST accepts (equivalent to the
original RST behavior of numbering all levels).

Assisted-By: claude


  Commit: c87a57fcce04d38e23ec5c16ef9b80a4cfbb1c3c
      https://github.com/llvm/llvm-project/commit/c87a57fcce04d38e23ec5c16ef9b80a4cfbb1c3c
  Author: Cyrus Ding <91178148+dingcyrus at users.noreply.github.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/lib/Basic/IdentifierTable.cpp

  Log Message:
  -----------
  [Clang] Remove unused TokenKey::KEYNOZOS (#207132)

[Clang] Remove unused TokenKey::KEYNOZOS

  KEYNOZOS was defined as a TokenKey flag to mark keywords not supported
  on z/OS, but no keyword in TokenKinds.def actually uses it. This patch
  removes the unused enum value and its associated handling code.

  Build: `ninja clang` succeeded (2923/2923 targets).
  Tests: `ninja check-clang` passed — 51180 passed, 0 failed.

AI assistance was used for code review analysis and CI failure
debugging.

  Fixes #206877

Co-authored-by: Chenguang Ding <dingchenguang at kylinos.cn>


  Commit: 624781038c030f8311664e847efda83a2754d5bc
      https://github.com/llvm/llvm-project/commit/624781038c030f8311664e847efda83a2754d5bc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll

  Log Message:
  -----------
  [X86] haddsub-undef.ll - update remaining tests to match IR generated by middle-end (#207391)

Last prep for #143000


  Commit: ccfab9ee84ae4f7da776d5022e86c62b0960ee4a
      https://github.com/llvm/llvm-project/commit/ccfab9ee84ae4f7da776d5022e86c62b0960ee4a
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/build-vector-reconstructshuffle.ll

  Log Message:
  -----------
  [AArch64] Fix ReconstructShuffle for known vscale>1 (#205099)

The code at AArch64TargetLowering::ReconstructShuffle expects
NEON-compatible types. But for e.g. vscale_range = {2}, we can get legal
fixed-length vectors that are wider than 128 bits.


  Commit: ee82fc0ca6d276c5fe8b19b7f8c24b8a64550193
      https://github.com/llvm/llvm-project/commit/ee82fc0ca6d276c5fe8b19b7f8c24b8a64550193
  Author: Qixi <tjx2361869673 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/Sema/matrix-type-operators.c

  Log Message:
  -----------
  [Clang] Fix crash on subscripting a complete matrix subscript expression (#207317)

Subscripting a complete MatrixSubscriptExpr (which has scalar type)
caused an assertion failure in ActOnArraySubscriptExpr because the code
unconditionally asserted isIncomplete() on any MatrixSubscriptExpr base.

Fix by guarding the matrix subscript path with an isIncomplete() check,
allowing complete matrix subscript expressions to fall through to the
standard subscript handling, which emits an appropriate diagnostic.

Fixes #203163


  Commit: 62f8a7b95711baf3b53bf37c4b6e124547902fee
      https://github.com/llvm/llvm-project/commit/62f8a7b95711baf3b53bf37c4b6e124547902fee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [VectorCombine] isExtractExtractCheap - add dbg message showing OldCost vs NewCost (#207386)

Add missing dbs message for VC fold costs decision


  Commit: d1c2d8650ab18c84459cbb6d787243bda595ff70
      https://github.com/llvm/llvm-project/commit/d1c2d8650ab18c84459cbb6d787243bda595ff70
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp
    M llvm/include/llvm/Support/TextEncoding.h
    M llvm/lib/Support/TextEncoding.cpp

  Log Message:
  -----------
  Forward declare TextEncodingConverter in TextEncoding.h, move config.h into TextEncoding.cpp (#207382)

This patch forward declares TextEncodingConverter in
clang/include/clang/Lex/TextEncoding.h, and moves config.h into
llvm/lib/Support/TextEncoding.cpp instead of the header.


  Commit: 2a951083b1fd3e2d221613f3f94f68b05111fefb
      https://github.com/llvm/llvm-project/commit/2a951083b1fd3e2d221613f3f94f68b05111fefb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/UnifyAliasedResourcePass.cpp
    M mlir/test/Dialect/SPIRV/Transforms/unify-aliased-resource.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Guard getSizeInBytes() optionals in UnifyAliasedResourcePass rewriters (#207325)


  Commit: fa0822a9dd7bc50ad61a0b19455ca1d26aafe3d5
      https://github.com/llvm/llvm-project/commit/fa0822a9dd7bc50ad61a0b19455ca1d26aafe3d5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Fix null deref in SpecConstantOperationOp::verifyRegions (#207328)


  Commit: e788a46f7311e49d8275116c7a634a04a43a9cef
      https://github.com/llvm/llvm-project/commit/e788a46f7311e49d8275116c7a634a04a43a9cef
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM lowering for GL Radians and Degrees ops (#205967)


  Commit: 6bc513523c7069ee7449a0025b6d1d7f06a44d63
      https://github.com/llvm/llvm-project/commit/6bc513523c7069ee7449a0025b6d1d7f06a44d63
  Author: firmiana402 <firmiana402 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    A llvm/test/DebugInfo/X86/implicit-value-truncated-integer.ll

  Log Message:
  -----------
  [DebugInfo] Truncate implicit value constants to source type width (#206671)

This is a follow-up to #204353.

mikaelholmen and bevin-hansson reported that the previous change could
assert downstream when emitting `DW_OP_implicit_value` for a source
integer type wider than the target generic DWARF stack type, if the
debug-value carrier integer contains bits outside the declared source
type width.

The fix is to construct the source-width `APInt` with explicit
truncation enabled before emitting the implicit value bytes. This
preserves the intended wrap/truncate behavior and avoids asserting on
otherwise recoverable debug-value input.

A regression test is added for an `unsigned _BitInt(48)` debug value on
i386, covering both an out-of-range positive carrier value and an
all-ones negative carrier value.


  Commit: 433eef6dea23c18d52c51218bb9d7f9bfbf47ecf
      https://github.com/llvm/llvm-project/commit/433eef6dea23c18d52c51218bb9d7f9bfbf47ecf
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    R llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    R llvm/test/Bitcode/module-asm.ll
    R llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    R llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    R llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    R llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  Revert "[IR] Explicitly specify target feature for module asm" (#207399)

Reverts llvm/llvm-project#204548

This is causing the runtimes build to fail with e.g.:

```
<inline asm>:11:5: error: 32 bit reloc applied to a field with a different size
   11 | jmp __interceptor_strlen at plt
      |     ^
```

See comments on the PR.


  Commit: 4ba692f421e0679676057b8bf880ff9728c90dd0
      https://github.com/llvm/llvm-project/commit/4ba692f421e0679676057b8bf880ff9728c90dd0
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp

  Log Message:
  -----------
  Change ToLiteralEncodingConverter to a unique_ptr (#207258)

This patch changes ToLiteralEncodingConverter from a raw pointer to a unique_ptr


  Commit: 1ffae54e7ed2143cd14057406882ff8a073ef3fe
      https://github.com/llvm/llvm-project/commit/1ffae54e7ed2143cd14057406882ff8a073ef3fe
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/alternate-shuffle-cost.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-select.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-single-src.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-stored.ll

  Log Message:
  -----------
  [CostModel][X86] Reduce cost of pre-SSE41 select shuffle (#207400)

The all-logic instructions have better throughput/latency than shuffles

Confirmed with uops.info, llvm-mca and agner


  Commit: 780298c4424514f0205df5e82c2a135717e6a723
      https://github.com/llvm/llvm-project/commit/780298c4424514f0205df5e82c2a135717e6a723
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/invalid-immarg5.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-invalid.ll
    M llvm/test/CodeGen/NVPTX/fence-proxy-tensormap-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-scale-d-invalid.ll
    M llvm/test/Verifier/AMDGPU/test-cvt-fp4f6f8-immarg-ranges.ll
    M llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
    M llvm/test/Verifier/NVPTX/setmaxnreg.ll
    M llvm/test/Verifier/intrinsic-immarg.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  [NFC][LLVM] Define range attribute for `llvm.prefetch` args (#207300)

Define valid range for `llvm.prefetch` immarg values and eliminate C++
verification code.

Additionally, change the range verification failure message to include
the argument number and simplify formatting using `formatv`.


  Commit: d2b5a1fabf98178713282658605f615ab14a5d68
      https://github.com/llvm/llvm-project/commit/d2b5a1fabf98178713282658605f615ab14a5d68
  Author: Björn Schäpers <bjoern at hazardy.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix annotating paren after in (#206810)

The y.in(foo) was considered a cast, and thus the following - annotated
as unary operator.

Fixes #206339


  Commit: e6cef24f6c5cbae725eeba3c0fffcb15380f9d27
      https://github.com/llvm/llvm-project/commit/e6cef24f6c5cbae725eeba3c0fffcb15380f9d27
  Author: Gustas Janušonis <janusonis.gustas at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Format/NumericLiteralInfo.cpp
    M clang/unittests/Format/NumericLiteralInfoTest.cpp

  Log Message:
  -----------
  [clang-format] Fix crash on numeric literals with an incomplete exponent (#206594)

NumericLiteralInfo could read into tokens out of bounds due to the token
processing assuming well-formed numeric literals and incrementing
pointers to read past them. The fix properly bounds the searches to the
token size via std::min and accounts for the new trimmed string size.

Fixes #206593

Used Claude Code for help with identifying the source of the bug and
checking correctness with fuzzing, wrote the solution myself


  Commit: 77cc8841df4f1ced13ff16e7338b0f5625ad3850
      https://github.com/llvm/llvm-project/commit/77cc8841df4f1ced13ff16e7338b0f5625ad3850
  Author: Viktoria Maximova <viktoria.maksimova at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_bfloat16_load_store_xchg.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_int16_load_store_xchg_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/load-atomic.ll
    M llvm/test/CodeGen/SPIRV/transcoding/store-atomic.ll

  Log Message:
  -----------
  [SPIRV] Preserve FP types in atomic load/store instead of casting to integer (#194583)

The default
`TargetLowering::shouldCastAtomicLoadInIR`/`shouldCastAtomicStoreInIR`
cast all FP atomics to integer, producing unnecessary bitcasts in SPIR-V
output. Override both to return None, matching the existing
`shouldCastAtomicRMWIInIR` behavior and letting
`OpAtomicLoad`/`OpAtomicStore` operate on FP types directly.

Also updated 16-bit atomics tests from #184312 to use native load/store
atomic instructions now that the SPIRV backend supports them (landed in
#185696).

AI-assisted: Claude Sonnet 4.6 (commercial SaaS)


  Commit: e56187575b740a182288244a2304d4ae1592b3ff
      https://github.com/llvm/llvm-project/commit/e56187575b740a182288244a2304d4ae1592b3ff
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  [ArrayRef] Make iterator_range constructor const-agnostic (#205183)

Make the enable_if guard const-agnostic to help some use-cases.


  Commit: 0fd9b71a397c77bc6671df3b0fbeb41fa8c73fed
      https://github.com/llvm/llvm-project/commit/0fd9b71a397c77bc6671df3b0fbeb41fa8c73fed
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [NFC][LLVM][Verifier] Use auto when assigning result of `dyn_cast` (#207343)


  Commit: 627b1645051f7b6b59aef446a43e59f6696e250f
      https://github.com/llvm/llvm-project/commit/627b1645051f7b6b59aef446a43e59f6696e250f
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll

  Log Message:
  -----------
  [AMDGPU] Remove obsolet __keep_alive declare in test (#207418)

__keep_alive doesn't exist anymore since
https://reviews.llvm.org/D151324


  Commit: 554e32395cd552dd36d3511d177f01735937d4f9
      https://github.com/llvm/llvm-project/commit/554e32395cd552dd36d3511d177f01735937d4f9
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [compiler-rt][sanitizer_common] Remove internal linkage from RegisterFlag (NFC) (#206308)

RegisterFlag is a static function template in a header, so every TU that
includes it without calling it trips `-Wunused-template`. Dropping
static gives it normal external linkage and clears the warning.

NFC. Part of #202945.


  Commit: d24f20ab649a28dd48b09c0bebc1f255e7ebf909
      https://github.com/llvm/llvm-project/commit/d24f20ab649a28dd48b09c0bebc1f255e7ebf909
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/utils/TableGen/DisassemblerEmitter.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.h

  Log Message:
  -----------
  [X86] Pool sparse disassembler opcode rows (#202666)

The XOP, 3DNow, and VEX/EVEX map 4-7 decoder tables contain 1,760
context rows but only 266 distinct values. Keep the four common opcode
maps as direct tables and intern rows only for these eight sparse maps.

This reduces fully stripped arm64 llvm-mc from 8,333,344 to 6,797,728
bytes, saving 1,535,616 bytes (18.43%). X86Disassembler.cpp.o decreases
by 1,525,328 bytes (52.36%); constant data falls by 1,526,328 bytes
while text grows by 848 bytes. The stripped all-tools multicall binary
decreases from 145,103,200 to 143,567,584 bytes, saving 1,535,616 bytes
(1.058%).

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 11d2e989db34fb2a94ff6574f43d1fb3f9a84fa5
      https://github.com/llvm/llvm-project/commit/11d2e989db34fb2a94ff6574f43d1fb3f9a84fa5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [X86] known-pow2.ll - regenerate checks to reduce diff in a future patch (#207425)


  Commit: 80f2ae4b5681f9324795691bcad0e81c06fba69b
      https://github.com/llvm/llvm-project/commit/80f2ae4b5681f9324795691bcad0e81c06fba69b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll

  Log Message:
  -----------
  [X86] zero_extend_vector_inreg.ll - regenerate checks to reduce diff in a future patch (#207424)


  Commit: 4f64218c2aee2d0a74838d4b5adf3bbb1fbffea5
      https://github.com/llvm/llvm-project/commit/4f64218c2aee2d0a74838d4b5adf3bbb1fbffea5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [VPlan] Add m_VScale() pattern matcher. (NFC) (#207394)

Add a dedicated m_VScale() matcher for VPInstruction::VScale, in line
with other VPInstruction matchers.


  Commit: 14d98081a574c3c5f342e2d2e958a514369fa2f2
      https://github.com/llvm/llvm-project/commit/14d98081a574c3c5f342e2d2e958a514369fa2f2
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan_checks.h

  Log Message:
  -----------
  [compiler-rt][hwasan] Remove internal linkage from check templates (NFC) (#207430)

`SigTrap`, `CheckAddress`, and `CheckAddressSized` are static function
templates in `hwasan_checks.h`, so any TU that includes the header
without instantiating them trips -Wunused-template. Dropping static
clears the warning.
Part of #202945


  Commit: 210834279ac6c3c47fdbe8dfe112c625f429e869
      https://github.com/llvm/llvm-project/commit/210834279ac6c3c47fdbe8dfe112c625f429e869
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/injected-class-name-crash.cpp

  Log Message:
  -----------
  [clang] fix redeclarations of the injected class name (#207301)

The declaration used to represent an injected class name should never be
part of any redeclaration chain.

Fixes #202320


  Commit: b6976d223eeb40091685e3b20e9c41f42f6bd6e0
      https://github.com/llvm/llvm-project/commit/b6976d223eeb40091685e3b20e9c41f42f6bd6e0
  Author: Neil Nair <neilnair4 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/support/CMakeLists.txt
    A clang-tools-extra/clang-doc/support/Markdown.cpp
    A clang-tools-extra/clang-doc/support/Markdown.h
    M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
    A clang-tools-extra/unittests/clang-doc/MarkdownParserTest.cpp

  Log Message:
  -----------
  [clang-doc] Add Markdown AST node type definitions (#205609)

Markdown AST node hierarchy for clang-doc/support. Separate Block and
Inline node hierarchies using llvm::ilist_node and llvm::simple_ilist.
Virtual print() in base classes with LLVM_DUMP_METHOD dump() inherited
by subclasses. clangDocMarkdown is its own CMake target. Unit tests
exercise node construction, accessors, and children. Assisted-by: Claude


  Commit: 297261502dcf30ad06f45edd4a250f4f3af27014
      https://github.com/llvm/llvm-project/commit/297261502dcf30ad06f45edd4a250f4f3af27014
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/fmaddsub-combine.ll

  Log Message:
  -----------
  [X86] fmaddsub-combine.ll - remove 128/256-bit buildvector tests (#207436)

These are covered by PhaseOrdering/X86/fmaddsub.ll which outputs the
vectorized shuffle patterns already tested for in fmaddsub-combine.ll
and fmsubadd-combine.ll

Minor cleanup for #144489


  Commit: 320a8a4db8720ac54ee37eedeb92dbe452a86dcb
      https://github.com/llvm/llvm-project/commit/320a8a4db8720ac54ee37eedeb92dbe452a86dcb
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/fptrunc.ll

  Log Message:
  -----------
  [InstCombine] Don't blindly copy ninf when narrowing fptrunc(binop(fpext, fpext)) (#202489)

The fold narrows fptrunc(BO(fpext x, fpext y)) -> BO(x, y) for
fadd/fsub/fmul/fdiv, recomputing the binop directly in the narrower
type.

Even if the original BO returns a finite result, the fptrunc may produce
inf. Therefore even if the original BO has ninf, we have to drop it on
the new BO unless the original fptrunc *also* has ninf.


  Commit: 63b19740e0bc4a145ed9b4dd4273123a0ed2247d
      https://github.com/llvm/llvm-project/commit/63b19740e0bc4a145ed9b4dd4273123a0ed2247d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/known-range-frexp-exp.ll

  Log Message:
  -----------
  [ValueTracking] Fix frexp exponent range for nan/inf inputs (#202447)

computeConstantRange() returns a bounded range for the exponent result of
llvm.frexp.

frexp's exponent is unspecified when the argument is nan or inf,
so we can assign such a range only if we know the argument is
not nan or inf.


  Commit: cbb277a718bd9a8ee28df177f42313cda00cb3f6
      https://github.com/llvm/llvm-project/commit/cbb277a718bd9a8ee28df177f42313cda00cb3f6
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxxabi/src/private_typeinfo.cpp

  Log Message:
  -----------
  [libc++abi][NFC] Avoid out parameter in dyn_cast_get_derived_info (#207326)

Returning the object is much more idiomatic than having an out
parameter.


  Commit: 3f724494ef0f0bd7d6e74fee7c526567910e6f87
      https://github.com/llvm/llvm-project/commit/3f724494ef0f0bd7d6e74fee7c526567910e6f87
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Add VPBuilder::createVScale (NFC) (#207401)

Add a VPBuilder::createVScale helper (mirroring IRBuilder::CreateVScale)
and use it at the existing sites that create a VScale VPInstruction.


  Commit: 796dc153395846413591e6c35324f738d214e32f
      https://github.com/llvm/llvm-project/commit/796dc153395846413591e6c35324f738d214e32f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [gn] Fix mistake from 4df00678d86fe (#207451)


  Commit: 07ef930cd2aa519f78f2542122a7911a210f02a0
      https://github.com/llvm/llvm-project/commit/07ef930cd2aa519f78f2542122a7911a210f02a0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 24476abfac20 (#207452)


  Commit: e96a42daca51802041eb795aa7da95e273885c52
      https://github.com/llvm/llvm-project/commit/e96a42daca51802041eb795aa7da95e273885c52
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/test/benchmarks/spec.gen.py
    M libcxx/utils/run-spec-benchmark

  Log Message:
  -----------
  [libc++] Fix SPEC benchmarks not producing a .lnt result file (#207450)

The refactoring in 471e8f7f94e7 removed the output of a .lnt file, which
is necessary for interoperation with consolidate-benchmarks.


  Commit: fbbf5df32b42dc8fa5dd6ed03b28f366734c2778
      https://github.com/llvm/llvm-project/commit/fbbf5df32b42dc8fa5dd6ed03b28f366734c2778
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 282416b6d457 (#207453)


  Commit: 0576c32331eaf12d2cd4cfbed9baec01cb205091
      https://github.com/llvm/llvm-project/commit/0576c32331eaf12d2cd4cfbed9baec01cb205091
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port bd338806e423 (#207455)


  Commit: a6f54816073f0c275c8710a6281d156a94133322
      https://github.com/llvm/llvm-project/commit/a6f54816073f0c275c8710a6281d156a94133322
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/support/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port b6976d223eeb (#207454)


  Commit: 296ab5b036138914851839bf9632ce82a12192d4
      https://github.com/llvm/llvm-project/commit/296ab5b036138914851839bf9632ce82a12192d4
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port e69038f9c2b1 (#207457)


  Commit: 66ae5b8f699a31240a738311e4acc81ef3ce700b
      https://github.com/llvm/llvm-project/commit/66ae5b8f699a31240a738311e4acc81ef3ce700b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [gn build] Port f1aeaa7bd552 (#207458)


  Commit: 0418a88ae67165a2f7af0e25ad34fdaa84df3b21
      https://github.com/llvm/llvm-project/commit/0418a88ae67165a2f7af0e25ad34fdaa84df3b21
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/zos_wrappers/grp.h
    A clang/lib/Headers/zos_wrappers/locale.h
    A clang/lib/Headers/zos_wrappers/math.h
    A clang/lib/Headers/zos_wrappers/poll.h
    A clang/lib/Headers/zos_wrappers/string.h
    A clang/lib/Headers/zos_wrappers/time.h
    A clang/lib/Headers/zos_wrappers/variant.h
    A clang/test/Headers/Inputs/zos/usr/include/grp.h
    A clang/test/Headers/Inputs/zos/usr/include/locale.h
    A clang/test/Headers/Inputs/zos/usr/include/math.h
    A clang/test/Headers/Inputs/zos/usr/include/poll.h
    A clang/test/Headers/Inputs/zos/usr/include/string.h
    A clang/test/Headers/Inputs/zos/usr/include/time.h
    A clang/test/Headers/Inputs/zos/usr/include/variant.h
    A clang/test/Headers/zos-guard.c

  Log Message:
  -----------
  [z/OS][Clang] Reland Add wrapper headers to avoid macro name conflicts (#204472) (#207420)

Some z/OS system headers define macros (e.g. __time, __math) that
conflict with user identifiers and break compilation. These wrappers
include the system headers and neutralize the problematic macros.

Reland of 04079deb547c91eff6c6e2b820dbe6937c72fcf5.
Add systemz-registered-target requirement to zos-guard.c.


  Commit: e0289ad97908460c5dadbc4aefb3ad22cd8ac054
      https://github.com/llvm/llvm-project/commit/e0289ad97908460c5dadbc4aefb3ad22cd8ac054
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    A llvm/test/CodeGen/RISCV/rvp-bitreverse-zbkb.ll

  Log Message:
  -----------
  [RISCV][P-ext] Use brev8 for bitreverse with Zbkb (#207338)

Resolves the FIXME.


  Commit: 4fd535388e1b52122259db6686bf7f5c2468edf0
      https://github.com/llvm/llvm-project/commit/4fd535388e1b52122259db6686bf7f5c2468edf0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [gn build] Port 0418a88ae671 (#207463)


  Commit: a9c5602da71ada68dfebd5bbe311f88baa8a72c5
      https://github.com/llvm/llvm-project/commit/a9c5602da71ada68dfebd5bbe311f88baa8a72c5
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    A llvm/test/CodeGen/PowerPC/abdu-neg.ll
    A llvm/test/CodeGen/PowerPC/abdu.ll
    M llvm/test/CodeGen/PowerPC/misched.ll

  Log Message:
  -----------
  [PowerPC] Custom Lower ABDU using branchless carry (#182704)

In normal abs, we already do this but with asr 31 instead of sbc, which
we can get directly from the subtraction.


  Commit: 37fa9c4b74e93ce3055804f51caa1ca2c11219c8
      https://github.com/llvm/llvm-project/commit/37fa9c4b74e93ce3055804f51caa1ca2c11219c8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clmul.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/runtime-check-trip-count-decisions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
    M llvm/test/Transforms/LoopVectorize/X86/clmul.ll
    M llvm/test/Transforms/LoopVectorize/X86/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/nondetermisitic-widening-cost.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
    M llvm/test/Transforms/LoopVectorize/fpsat.ll
    M llvm/test/Transforms/LoopVectorize/hoist-and-sink-mem-ops-with-invariant-pointers.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads.ll
    M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/pointer-select-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll
    M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
    M llvm/test/Transforms/LoopVectorize/replace-first-order-recurrence-by-versioned-iv.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-bounded-ranges.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-constant-trip-counts.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll

  Log Message:
  -----------
  [LAA] Use (Diff - 1) <u (Threshold - 1) for diff checks. (#188462)

Update diff checks to use (Diff - 1) <u (Threshold - 1), equivalent to 0
< Diff <u Threshold, to exclude Diff == 0, equal pointers are a safe
loop-independent dependence.

Alive2 proofs https://alive2.llvm.org/ce/z/_ss9QG
 * (Diff - 1) <u (Threshold - 1) => 0 < Diff <u Threshold
 * Old and new check are equivalent, if diff > 0: 

On some platforms, this adds an extra instruction to compute the diff
check, but allows to handle the case where both pointers are equal.

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


  Commit: 5de2fb5112d03e319035e3c147e08c0db506cce8
      https://github.com/llvm/llvm-project/commit/5de2fb5112d03e319035e3c147e08c0db506cce8
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanCFG.h

  Log Message:
  -----------
  [VPlan] Simplify VPHierarchicalChildrenIterator::operator*. NFC (#207464)

This is like a pointer-valued iterator, whose constness should not
qualify the pointee ( `vector<T*>::const_iterator` yields `T*`, not
`const T*`), so collapse the two overloads into a single `BlockPtrTy
operator*() const`.


  Commit: 1381ef49fc5cc8c5bd76aa9b86fdf2507312d78d
      https://github.com/llvm/llvm-project/commit/1381ef49fc5cc8c5bd76aa9b86fdf2507312d78d
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ReleaseNotes.md
    M clang/docs/ReleaseNotesTemplate.txt
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/Diagnostic.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Testing/TestLanguage.def
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/unknown-std.cpp
    M clang/test/Preprocessor/init.c
    M clang/unittests/Basic/LangOptionsTest.cpp
    M clang/www/OpenProjects.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [Clang] Add flags and lang option for C++2d (#203992)

This adds diagnostic groups, command-line options, a language option,
and various other things required to support `-std=c++2d`. I haven’t
touched e.g. clang-tidy or clang-format, as I’m not really familiar w/
either. This is only meant to add the most necessary parts to support
C++29 mode.

I grepped for `CPlusPlus26`/`C++26`/`C++2c` and updated all places I
could find where we need to handle every language mode in some way or
another.

This patch is roughly based on b763d6a4ed4650c74c6846d743156468563b0e31.


  Commit: bf68b4165c419f1893d0668bb05630e33c2efe8c
      https://github.com/llvm/llvm-project/commit/bf68b4165c419f1893d0668bb05630e33c2efe8c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h

  Log Message:
  -----------
  [LV] Implement VPBuilder::createPtrAdd with createNoWrapPtrAdd (NFC) (#207467)

createPtrAdd is exactly createNoWrapPtrAdd with GEPNoWrapFlags::none().
Forward to it instead of duplicating the VPInstruction construction.


  Commit: 76357610925cbc76f3a084dea730f97db8fe7464
      https://github.com/llvm/llvm-project/commit/76357610925cbc76f3a084dea730f97db8fe7464
  Author: David Tenty <daltenty at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Object/ObjectFile.cpp
    M llvm/unittests/Object/GOFFObjectFileTest.cpp

  Log Message:
  -----------
  [llvm][object] handle GOFF in createObjectFile (#206636)

`ObjectFile::createObjectFile` doesn't handle GOFF and returns an error,
even though the requisite GOFF support is present (i.e.
`createGOFFObjectFile`). This change corrects this, and adds a simple
test for `createObjectFile` on a GOFF type object.


  Commit: 0f1f456263b5889935514ecf81440d0909d06dc7
      https://github.com/llvm/llvm-project/commit/0f1f456263b5889935514ecf81440d0909d06dc7
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/FileCheck/FileCheckImpl.h
    M llvm/test/FileCheck/match-time-error-propagation/matched-excluded-pattern.txt
    M llvm/test/FileCheck/match-time-error-propagation/matched-expected-pattern.txt
    A llvm/test/FileCheck/unmatched-substs-captures.txt

  Log Message:
  -----------
  [FileCheck] Call out var captures on unmatched patterns (#206303)

This patch is motivated by an #llvm IRC chat in 2019 with @AaronBallman,
where he pointed out an example similar to following:

```
$ cat input
[[clang::optnone]] void foo() {

$ cat check
CHECK: [[clang::optnone]] void foo() {

$ FileCheck check < input |& tail -7
Input was:
<<<<<<
           1: [[clang::optnone]] void foo() {
check:1'0    {                                } search range (exclusive bounds)
check:1'1                                       error: no match found
check:1'2            ?                          possible intended match
>>>>>>
```

It is very easy to miss why that fails. This patch adds one more note
that hopefully clears up the confusion:

```
$ FileCheck check < input |& tail -8
Input was:
<<<<<<
           1: [[clang::optnone]] void foo() {
check:1'0    {                                } search range (exclusive bounds)
check:1'1                                       error: no match found
check:1'2                                       pattern attempts to capture variables: "clang"
check:1'3            ?                          possible intended match
>>>>>>
```

That is, where matching patterns print successful variable captures,
this patch makes unmatching patterns print attempted variable captures.


  Commit: 951a60861a9998c429f833364480265a0c5dd052
      https://github.com/llvm/llvm-project/commit/951a60861a9998c429f833364480265a0c5dd052
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpStack.cpp
    M clang/lib/AST/ByteCode/InterpStack.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Source.h
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode] Move the program counter into `InterpState` (#207393)

Instead of using a local variable for the PC, save it in `InterpState`.
Only comparatively few opcodes care about it, but with exceptions, all
calls ops can change the PC. Saving it in the `InterpState` makes it
easier to have opcode implementation jump around in bytecode.


  Commit: 5b53190d1209bca676ca60797a30bdd3593edbb1
      https://github.com/llvm/llvm-project/commit/5b53190d1209bca676ca60797a30bdd3593edbb1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp

  Log Message:
  -----------
  [clang][bytecode] Remove unused local variable (#207480)

It's unnecessary and broke a builder:
https://lab.llvm.org/buildbot/#/builders/228/builds/3735


  Commit: 238dbdce63b41b4da1f808b78e3d143f1635642b
      https://github.com/llvm/llvm-project/commit/238dbdce63b41b4da1f808b78e3d143f1635642b
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Bytecode/BytecodeImplementation.h
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/include/mlir/IR/BytecodeBase.td
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp

  Log Message:
  -----------
  [mlirbc] Add IntegerSetAttr (#207482)

Serialize IntegerSetAttr using VarInt for numDims and numSymbols and
arrays for contraints and eqFlags. Add ArrayWithKnownSize` an Array
variant that omits the length prefix when the size is known from a
previously serialized member. This avoids encoding redundant array
lengths when, for example, two arrays are always the same size.

Assisted-By: Gemini


  Commit: db0f427a25a4caae97679a4a0caf05aed5dd47f5
      https://github.com/llvm/llvm-project/commit/db0f427a25a4caae97679a4a0caf05aed5dd47f5
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp

  Log Message:
  -----------
  [compiler-rt][nsan] Remove unused checkValueConsistency template (NFC) (#207441)

checkValueConsistency is a static function template in nsan.cpp with no
callers, so it trips -Wunused-template. Remove the dead code.

Part of #202945


  Commit: 99c1a8c36e9f5d9d448c377edc0f10e6bea7e6e9
      https://github.com/llvm/llvm-project/commit/99c1a8c36e9f5d9d448c377edc0f10e6bea7e6e9
  Author: Daniel Cederman <cederman at gaisler.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/LeonPasses.cpp
    M llvm/lib/Target/Sparc/LeonPasses.h
    A llvm/test/CodeGen/SPARC/tn0010.ll
    M llvm/test/CodeGen/SPARC/tn0010.mir

  Log Message:
  -----------
  [Sparc] Handle two new cases in the GRLIB-TN-0010 workaround pass (#205780)

Handle the case of an empty block or an indirect branch.


  Commit: c874b1b4b2bd3cefb3479c9fc82af67883b20d28
      https://github.com/llvm/llvm-project/commit/c874b1b4b2bd3cefb3479c9fc82af67883b20d28
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
    M mlir/test/Dialect/Builtin/Bytecode/types.mlir

  Log Message:
  -----------
  [mlirbc] Address remaining missing encodings for builtin dialect. (#207488)

Simple ones that got missed (graph & strided layout), and add some
additional tests. Also update the fixed test.

Assisted-By: Gemini


  Commit: b2755364764f0159a0e74a7111c3fc2140ec43ee
      https://github.com/llvm/llvm-project/commit/b2755364764f0159a0e74a7111c3fc2140ec43ee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [X86] Remove LowerToHorizontalOp vectorization lowering code (#207406)

Thanks to improvements to SLP, InstCombine and VectorCombine - we should
no longer see any of the scalar code hadd/sub patterns in the backend.

This allows to remove the old
build_vector(x[0]+x[1],x[2]+x[3],y[0]+y[1],y[2]+y[3]) lowering entirely,
and just rely on the combineToHorizontalAddSub folds from
add(shuffle(x,y),shuffle(x,y)) patterns.

Fixes #143000


  Commit: 0649b2e7b39c7f0614b0a8862ec0097ea6f497d7
      https://github.com/llvm/llvm-project/commit/0649b2e7b39c7f0614b0a8862ec0097ea6f497d7
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp

  Log Message:
  -----------
  [clang-tidy] Fix FP in misc-const-correctness (#206515)

`ExprPointeeResolve` now resolves through the `int*` to `void*` bitcast
when the destination pointee is non-const

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


  Commit: f78d4b083b462607b518db6fed5ac8204de95e13
      https://github.com/llvm/llvm-project/commit/f78d4b083b462607b518db6fed5ac8204de95e13
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [LV] Use findUserOf to improve addReductionResultComputation (NFC) (#207427)


  Commit: 38ecfd2c0d9acef2ea328fb88550a3846ac5c9fe
      https://github.com/llvm/llvm-project/commit/38ecfd2c0d9acef2ea328fb88550a3846ac5c9fe
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    A lldb/test/API/functionalities/fork/stop/Makefile
    A lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py
    A lldb/test/API/functionalities/fork/stop/main.c
    A lldb/test/Shell/Subprocess/stop-on-fork.test
    A lldb/test/Shell/Subprocess/stop-on-vfork.test

  Log Message:
  -----------
  [lldb] Add stop-on-fork and stop-on-vfork settings (#188710)

Added support for new `target.process.stop-on-fork` and
`target.process.stop-on-vfork` settings. GDB already has ability to set
[catchpoints](https://www.sourceware.org/gdb/current/onlinedocs/gdb.html/Set-Catchpoints.html)
on `fork` and `vfork`, so having this feature in LLDB might be useful
(e.g. use it to get pid of new process and attach to the new process
from different console).


  Commit: e173245deeaa234064c23f4185998f06f0778a86
      https://github.com/llvm/llvm-project/commit/e173245deeaa234064c23f4185998f06f0778a86
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-chained.ll

  Log Message:
  -----------
  [LV] Add test with BuildVector select condition. (NFC) (#207506)

Add test case causing revert 638d71403 (revert of #206774).


  Commit: 645e02b88248103e8cce0c9ab605e6eaa70c0f07
      https://github.com/llvm/llvm-project/commit/645e02b88248103e8cce0c9ab605e6eaa70c0f07
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py

  Log Message:
  -----------
  [lldb] Disable TestStopOnForkAndVFork on remote targets (#207509)

Fix CI after merge of #188710


  Commit: bf09114d6164f522508ae80921a63c5a080c183d
      https://github.com/llvm/llvm-project/commit/bf09114d6164f522508ae80921a63c5a080c183d
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  [mlir][cmake][NFC] Remove duplicate `tablegen_compile_commands.yml` append (#207510)

The append-logic of the compile command is already performed by the
`tablegen` function, there is no need to replicate the logic twice.


  Commit: 72070deb4d811cce31154257a1acfca74d738130
      https://github.com/llvm/llvm-project/commit/72070deb4d811cce31154257a1acfca74d738130
  Author: janr-bay <jrehders at baylibre.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [APFloat] Extend fltSemantics with field for explicit integer bit (#204860)

This is one more step towards being able to make APFloat extensible with
custom formats in the future.

fltSemantics gained a new flag to indicate the presence of an explicit
integer bit as specified by the x86 double extended precision format.

The special case implementation for initFromF80LongDoubleAPInt has been
merged into initFromIEEEAPInt.

Also adding tests for x87DoubleExtended bit conversion.
initFromF80LongDoubleAPInt was called only twice during in all APFloat
unit tests together. Testing common cases, boundary conditions, and the
special cases documented in IEEEFloat::initFromF80LongDoubleAPInt.


  Commit: b3e8d7ebed1dc50bce3348d1508316cc6a493133
      https://github.com/llvm/llvm-project/commit/b3e8d7ebed1dc50bce3348d1508316cc6a493133
  Author: Kim Gräsman <kim.grasman at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/Headers/avx512vp2intersectintrin.h

  Log Message:
  -----------
  [X86] Update #error to mention the right header name (#207507)

Practically every internal intrinsics header has a little public/private
check to force users to use public *intrin.h header names.

avx512vp2intersectintrin.h is the only one with a discrepancy between
the #error directive and the actual filename.

Fix them to agree. No functional change expected.


  Commit: 06554227c7005f90fee66925d9acbe249329b005
      https://github.com/llvm/llvm-project/commit/06554227c7005f90fee66925d9acbe249329b005
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll

  Log Message:
  -----------
  Reapply "[VPlan] Replace first-lane uses of BuildVector." (#206774) (#207512)

This reverts commit 638d71403a8598bb061b874ab39b8f9c6f0a97f0.

Recommit with fix for root cause of the revert:
VPWidenRecipe::onlyFirstLaneUsed was incorrectly assuming all operands
defined outside loop region are invariant, which is not true (e.g.
BuildVector). Test added in e173245deeaa2340.

Original message:
Replace uses of the first lane of a BuildVector with the first operand.


  Commit: 6ae9fe5e285847107ca47ace4368ca0cde894108
      https://github.com/llvm/llvm-project/commit/6ae9fe5e285847107ca47ace4368ca0cde894108
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/CIR/Dialect/CMakeLists.txt
    M clang/include/clang/Parse/CMakeLists.txt
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Serialization/CMakeLists.txt
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/Headers/CMakeLists.txt
    M llvm/include/llvm/TargetParser/CMakeLists.txt
    M offload/plugins-nextgen/common/CMakeLists.txt

  Log Message:
  -----------
  [cmake][NFC] Use `EXTRA_INCLUDES` in `tablegen` commands (#207514)

Not only is it more declarative than using the `-I` directory, it
additionally adds the given directory to the
`tablegen_compile_commands.yml` which allows the LSP and IDE tooling to
also be aware of the extra include directories used to compile that
TableGen file


  Commit: b105f35c2d0befe65545092894a2a2d292192582
      https://github.com/llvm/llvm-project/commit/b105f35c2d0befe65545092894a2a2d292192582
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Unify "this pointer" naming in interp::Function (#207410)


  Commit: 103f170a390e69a032fcb4333e6ed68e6112a3a5
      https://github.com/llvm/llvm-project/commit/103f170a390e69a032fcb4333e6ed68e6112a3a5
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    A llvm/test/tools/llvm-pdbutil/opt-docnum.test
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  [llvm-pdbutil] Support `--docnum` for yaml2pdb (#207058)

I saw that yaml2obj has this option to select the nth yaml document.
This makes it easy to group multiple outputs together. For example a
COFF yaml + PDB yaml in one file.

As a semi-related change, I also declared the yaml2pdb options in
`llvm-pdbutil.h`. clang-tidy complains about them being only in the
source file (could be static in that case).


  Commit: 64f834271e07350a921f6abe925e5a11cd7da562
      https://github.com/llvm/llvm-project/commit/64f834271e07350a921f6abe925e5a11cd7da562
  Author: disservin <disservin.social at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp

  Log Message:
  -----------
  [clang] Remove always false comparisons (#207504)

```
llvm-project/clang/lib/Sema/SemaTemplateVariadic.cpp:1371:16: warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]
 1371 |     if (*Index < 0 || *Index >= ExpandedExprs.size()) {
      |         ~~~~~~~^~~

llvm-project/clang/lib/Sema/SemaType.cpp:10130:32: warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]
10130 |     if (FullySubstituted && (V < 0 || V >= Expansions.size())) {
```


https://github.com/llvm/llvm-project/commit/9b132a2ff80dac4bc8e78b242bebb97551c292c7
changed the types from int64_t to uint64_t so those comparisons are
always false now


  Commit: 4a2ad970c6fe783f026be47292be93b6cdfe7d9b
      https://github.com/llvm/llvm-project/commit/4a2ad970c6fe783f026be47292be93b6cdfe7d9b
  Author: satyanarayana reddy janga <satyajanga at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp

  Log Message:
  -----------
  [lldb] Add AMD GPU architectures to ArchSpec (#206369)

## Summary
Teach ArchSpec and ObjectFileELF about AMD (R600 and GCN/amdgcn) GPU
architectures so GPU ELF object files and triples resolve to a precise
architecture.

## Tests: 
unit-test the ELF-header -> architecture mapping in ArchSpecTest and an
end-to-end AMDGPU ELF in TestObjectFileELF.

The processor list, e_flags machine values, OSABI and ABI versions
follow llvm/include/llvm/BinaryFormat/ELF.h (AMDGPU_MACH_LIST) and the
AMDGPU code-object spec documented at
https://llvm.org/docs/AMDGPUUsage.html.


  Commit: e395479d5cf45246f8bd6636a72274df8f225be5
      https://github.com/llvm/llvm-project/commit/e395479d5cf45246f8bd6636a72274df8f225be5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Speed up Semi-NCA construction (#207474)

Run the immediate-dominator step in DFS-number space instead of chasing
NodePtr IDom through getNodeInfo()/getNumber(), and drop the redundant
NumToInfo[Semi]->DFSNum lookup. Use an inline capacity 32 (sqlite3's p90
is ~29 blocks), with no measurable gain from a larger inline buffer.
NumToInfo and IDoms are filled with resize_for_overwrite: index 0 is an
unused sentinel (DFS numbering is 1-based) and every other slot is
written before it is read, so the value-init and push_back bookkeeping
are dead.

Make getChildren return a lazy filtered range and iterate it directly in
runDFS's common case, instead of materializing a SmallVector per node
just to push its successors onto the worklist.

clang::CFGBlock::AdjacentBlock still needs special handling: it is a
proxy convertible to CFGBlock* that can be null for unreachable edges
(also see commit 7ea0ee30588e), and it is not easy to migrate off.


  Commit: 580fac02f4ca7be5a04062c19044d261152c42fd
      https://github.com/llvm/llvm-project/commit/580fac02f4ca7be5a04062c19044d261152c42fd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-shuffle.ll

  Log Message:
  -----------
  [SLP][NFC]Remove undefs, NFC



Reviewers: 

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


  Commit: 1ceada6b6466d09c73c367ea8c664df47570efb8
      https://github.com/llvm/llvm-project/commit/1ceada6b6466d09c73c367ea8c664df47570efb8
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/docs/PDB/CodeViewSymbols.rst

  Log Message:
  -----------
  [Docs][CodeView] Document `S_LOCAL` and `S_DEFRANGE*` (#190156)

As suggested in
https://github.com/llvm/llvm-project/pull/187709#issuecomment-4120922355,
this adds documentation for both `S_LOCAL` and the known `S_DEFRANGE*`
records.

In all descriptions, I put struct definition with comments, because it
describes both the layout and the function of each member. Some comments
are from the original PDB repo
(https://github.com/microsoft/microsoft-pdb/blob/805655a28bd8198004be2ac27e6e0290121a5e89/include/cvinfo.h#L4209-L4291).

Many structs in LLVM itself don't have these comments. I think we should
also add them there.


  Commit: 33be7999a363dd6a870baaebf5cd871309b668b0
      https://github.com/llvm/llvm-project/commit/33be7999a363dd6a870baaebf5cd871309b668b0
  Author: 8051Enthusiast <8051Enthusiast at protonmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/DemandedBits.cpp
    M llvm/test/Analysis/DemandedBits/intrinsics.ll

  Log Message:
  -----------
  [DemandedBits] Track demanded bits for clmul instrinsics (#202415)

Similar to regular multiplication, carryless multiplication does not
depend on bits in positions higher than the output bits.


  Commit: 143e5bf1935cc5a5f94f27ea2a17969100a5ca5b
      https://github.com/llvm/llvm-project/commit/143e5bf1935cc5a5f94f27ea2a17969100a5ca5b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [VPlan] Remove redundant VPIRValue cast in ::computeCost (NFC) (#207525)

We can directly cast o VPConstantInt.


  Commit: 5b23e226ed8a38b725253748e623ad9bf27ac4a4
      https://github.com/llvm/llvm-project/commit/5b23e226ed8a38b725253748e623ad9bf27ac4a4
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/test/Sema/LifetimeSafety/lifetime-facts.cpp

  Log Message:
  -----------
  [LifetimeSafety][NFC] Support printing propagated loans in Fact::dump (#207526)

This patch updates Fact::dump to accept an optional
LoanPropagationAnalysis parameter.
If provided, OriginFlowFact::dump will query it to print the loans held
by the destination origin.

This enables richer debug output for LifetimeFacts.


  Commit: 7a3767e361cc0d6acc8e1568727a54d9b0d0b525
      https://github.com/llvm/llvm-project/commit/7a3767e361cc0d6acc8e1568727a54d9b0d0b525
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode] Only pass OpPC if needed (#207479)

Quite a few opcode implementations don't ever report a diagnostic, so
they don't need the `OpPC` at all. Add a tablegen bit to disable passing
`OpPC` altogether.


  Commit: fa7d2a86bfb22f8ff5961ab1b1bcda42c5da49ff
      https://github.com/llvm/llvm-project/commit/fa7d2a86bfb22f8ff5961ab1b1bcda42c5da49ff
  Author: Kazu Hirata <kazu at google.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfWriter.h
    M llvm/lib/ProfileData/SampleProf.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/ProfileData/SampleProfWriter.cpp

  Log Message:
  -----------
  [ProfileData] Fix formatting (#207442)

I've been working in this area, and I keep running into some of the
formatting issues fixed in this patch.


  Commit: 725051d69b733910226687a99dacc6ffc8805aab
      https://github.com/llvm/llvm-project/commit/725051d69b733910226687a99dacc6ffc8805aab
  Author: Douglas Yung <douglas.yung at sony.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang-tools-extra/test/clang-doc/html/long-name.cpp

  Log Message:
  -----------
  Mark test introduced in #205586 as unsupported on Windows because it creates paths that are too long (#207476)


  Commit: 3eb53013dca38fc0fa0c0e11de9fef1a7a14b9c7
      https://github.com/llvm/llvm-project/commit/3eb53013dca38fc0fa0c0e11de9fef1a7a14b9c7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Make VPRegionValue a subclass of VPSymbolicValue. (NFC) (#196753)

Turn VPRegionValue into a subclass of VPSymbolicValue, ensuring we also
guard against premature RAUW of region values.

Split off from approved https://github.com/llvm/llvm-project/pull/196199

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


  Commit: 2925ca216d5a3d87697484a085dd63d6bfd3a655
      https://github.com/llvm/llvm-project/commit/2925ca216d5a3d87697484a085dd63d6bfd3a655
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/test/Analysis/AssumptionCache/basic.ll
    M llvm/test/Transforms/InstCombine/assume-cache-update.ll

  Log Message:
  -----------
  [AssumptionCache] Properly print assume operand bundles. (#207501)

Update AssumptionCache printing to print operand bundles, instead of
just printing true which does not provide any useful information.


  Commit: eaa33893a5d45031f2f5f180b897aeaaa25aab42
      https://github.com/llvm/llvm-project/commit/eaa33893a5d45031f2f5f180b897aeaaa25aab42
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll

  Log Message:
  -----------
  [VPlan] Add additional memory decision tests. (NFC) (#207537)

Add extra tests showing additional cases where no VPlan-based decisions
are made yet.


  Commit: c98a157d7d76f982d3e1a12db23b47196ac358d4
      https://github.com/llvm/llvm-project/commit/c98a157d7d76f982d3e1a12db23b47196ac358d4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/debug-info-salvage.ll

  Log Message:
  -----------
  [SLP][NFC]Update test to avoid instructions folding, NFC



Reviewers: 

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


  Commit: 7f449d38cd9d203af2be106210f3ef9c30597ebe
      https://github.com/llvm/llvm-project/commit/7f449d38cd9d203af2be106210f3ef9c30597ebe
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll

  Log Message:
  -----------
  [SLP][NFC]Remove undef from the test, cleanup, NFC



Reviewers: 

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


  Commit: f33eb913f97734b97318a680f69d41d814201523
      https://github.com/llvm/llvm-project/commit/f33eb913f97734b97318a680f69d41d814201523
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Remove direct access to FeatureKV (#206231)

This is preparatory work for changing the representation of
FeatureKV/SubTypeKV, in which they will no longer be that easily
accessible as global variables. Therefore, get them from the subtarget
instead.


  Commit: 6b3433ae19000d0900126678388e30fe5b4eb721
      https://github.com/llvm/llvm-project/commit/6b3433ae19000d0900126678388e30fe5b4eb721
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCInstrInfo.h
    M llvm/lib/MC/MCInstrInfo.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [MC][NFC] Generate ComplexDeprecationInfos as function (#207496)

The only user of ComplexDeprecationInfos is ARM, where 19 instructions
are deprecated. Instead of emitting a ~36kiB function pointer table,
emit a single 201B (x86-64) function switching over the opcodes.


  Commit: 3aec6a40bb4e49f9ea181ac5c949b6c7c20a5465
      https://github.com/llvm/llvm-project/commit/3aec6a40bb4e49f9ea181ac5c949b6c7c20a5465
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M lldb/source/DataFormatters/FormatterBytecode.cpp
    M llvm/include/llvm/DebugInfo/CodeView/Formatters.h
    M llvm/include/llvm/DebugInfo/PDB/Native/FormatUtil.h
    M llvm/include/llvm/Support/FormatAdapters.h
    M llvm/include/llvm/Support/FormatCommon.h
    M llvm/include/llvm/Support/FormatProviders.h
    M llvm/include/llvm/Support/FormatVariadic.h
    M llvm/include/llvm/Support/FormatVariadicDetails.h
    M llvm/lib/Support/FormatVariadic.cpp
    M llvm/tools/llvm-xray/xray-stacks.cpp
    M llvm/unittests/ADT/TwineTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M mlir/include/mlir/TableGen/Format.h
    M mlir/lib/TableGen/Format.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp

  Log Message:
  -----------
  [Support] Remove virtual functions from formatv (#207516)

Currently, formatv erases types using a base class and calls the virtual
function format() to format the objects. To avoid these vtables,
refactor formatv to instead store function_refs to a functor (struct
with overloaded operator()). This saves ~5kiB in vtables.

Additionally, add a static assertion that a formatter is present instead
of relying on errors due to missing templates. This requires a little
change to MLIR's tgfmt to use a different name -- previously, the
substitution failure on ArrayRef<> would cause the variadic function to
be skipped, but a static assertion failure is not a substitution error.

Also, simplify the code in FormatVariadicDetails to use if constexpr
instead of template overloads with enable_if, making the code shorter
and easier to read.


  Commit: 5ec0eee3a67ec0f8aebccc6864c574ce73e2f937
      https://github.com/llvm/llvm-project/commit/5ec0eee3a67ec0f8aebccc6864c574ce73e2f937
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libc/src/__support/frac128.h

  Log Message:
  -----------
  [libc] Fix buildbot failure for bigint (#207534)

Fixes the buildbot failure in
https://github.com/llvm/llvm-project/pull/206277 by adding the missing
initialization


  Commit: 55669ac2f7df5e54561a3c36df6322a6318cb575
      https://github.com/llvm/llvm-project/commit/55669ac2f7df5e54561a3c36df6322a6318cb575
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Support][NFC] Use single predecessor array in DomTreeConstr (#207535)

Storing many small vectors of predecessors is bad for performance, as
each of these has to be non-trivially initialized when growing the
NodeInfos vector. Therefore, store all predecessors in a separate
vector, in which predecessors form a linked list.


  Commit: 5d13ff1e940b93d820928d078f994a3c376f54e6
      https://github.com/llvm/llvm-project/commit/5d13ff1e940b93d820928d078f994a3c376f54e6
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/test/TableGen/MacroFusion.td
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [MC] Generate FeatureKV with compact string table (#206331)

FeatureKV is responsible for a fair amount of .data.rel.ro size and
relocations; in an all-target build, this amounts to ~139 kiB that need
to be touched on every startup. Therefore, store strings adjacent to the
SubtargetFeatureKV in memory and reference the strings via relative
offsets to avoid dynamic relocations.


  Commit: b0a64cf46adcb6da2cef28bac25f910077277923
      https://github.com/llvm/llvm-project/commit/b0a64cf46adcb6da2cef28bac25f910077277923
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/test/std/utilities/memory/pointer.traits/pointer.traits.functions/pointer_to.pass.cpp

  Log Message:
  -----------
  [libc++] Mark LWG3454 as resolved (#207487)

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

LWG3454 has been implemented in
https://github.com/llvm/llvm-project/commit/98d3d5b5da66e3cf7807c23a0294280bb796466b.


  Commit: c4714e43dc36f4bcf047e0f4bb1f8757fe72e422
      https://github.com/llvm/llvm-project/commit/c4714e43dc36f4bcf047e0f4bb1f8757fe72e422
  Author: Sergey Subbotin <ssubbotin at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/lib/Format/Format.cpp
    M clang/unittests/Format/ConfigParseTest.cpp

  Log Message:
  -----------
  [clang-format] Fix BlockIndent compat mapping of AlignAfterOpenBracket (#207187)

be11e2b3d25 (#192283) replaced the `[[fallthrough]]` chain in the
`AlignAfterOpenBracket` backward-compatibility switch with explicit
per-case assignments. In the `BAS_BlockIndent` case the
`BreakBeforeCloseBracket{BracedList,Function,If} = true` assignments are
immediately overwritten with `false`, and
`BreakAfterOpenBracket{BracedList,Function,If}` (previously inherited
from the `BAS_AlwaysBreak` case via fallthrough) are never set. As a
result, `AlignAfterOpenBracket: BlockIndent` parses to the same flag set
as `Align`, silently dropping the block-indent style for existing
configurations.

Restore the pre-#192283 mapping and pin the full BlockIndent flag
mapping in ConfigParseTest so the compat shim cannot regress silently
again.

Fixes #207186.

Note for the release branch: if #205920 (backport of #192283 to
release/22.x) lands, this fix needs to be backported together with it.


  Commit: 758f0394c0158d7b4db7b7f1d5cd8174ab9812b7
      https://github.com/llvm/llvm-project/commit/758f0394c0158d7b4db7b7f1d5cd8174ab9812b7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp

  Log Message:
  -----------
  [VPlan] Move consecutive vector pointer construction to VPBuilder (NFC). (#207563)

Introduce VPBuilder::createConsecutiveVectorPointer to create vector
pointers for consecutive accesses. This enables re-use in follow-up
changes.


  Commit: 37f7fc7c05865e1c8ebcda915d379963b48c3e69
      https://github.com/llvm/llvm-project/commit/37f7fc7c05865e1c8ebcda915d379963b48c3e69
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-profiles.c
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/MC/RISCV/invalid-attribute.s
    A llvm/test/MC/RISCV/rvy-build-attributes.s
    A llvm/test/MC/RISCV/rvy-invalid-attributes.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISC-V][RVY] Initial ISAInfo support for RVY

RVY is a new base ISA, so the syntax to enable it is rv32y/rv64y.
Since the compressed instructions reuse the space for Zcf (RV32) and
Zcd (RV64), those are marked as incompatible and the logic for C/Zce
is updated as part of this PR.
RVY can also extend RVE instead of RVY (as is done for CHERIoT), but the
official arch string syntax for that has not been finalized yet.
Related discussion on that includes the "long base name" proposal:
https://lists.riscv.org/g/tech-unprivileged/message/1134

Reviewers: topperc, lenary, jrtc27

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


  Commit: a8b40e80344d09b9a1b2b14bde934494409db9df
      https://github.com/llvm/llvm-project/commit/a8b40e80344d09b9a1b2b14bde934494409db9df
  Author: Zhige Chen <zhige_chen at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    A llvm/test/tools/llubi/intr_experimental_vector.ll
    M llvm/tools/llubi/lib/Interpreter.cpp

  Log Message:
  -----------
  [llubi] Implement experimental vector intrinsics (#206899)

This PR implements experimental vector intrinsics.


  Commit: f26f3e659f4a4292f8cf311f351bcc231dc59c71
      https://github.com/llvm/llvm-project/commit/f26f3e659f4a4292f8cf311f351bcc231dc59c71
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-07-05 (Sun, 05 Jul 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
    A clang/test/CodeGen/AArch64/neon/rounding-v8.5.c
    M clang/test/CodeGen/AArch64/v8.5a-neon-frint3264-intrinsic.c

  Log Message:
  -----------
  [clang][CIR] Add lowering for Neon rounding builtins (#195021)

This PR adds CIR lowering for AArch64 NEON rounding builtins:

- vrnd (trunc), vrnda (round), vrndi (nearbyint), vrndm (floor),
  vrndn (roundeven), vrndp (ceil), vrndx (rint)
- vrnd32x, vrnd32z, vrnd64x, vrnd64z (v8.5-a FRINT variants)

The standard rounding builtins lower to the corresponding CIR ops
(cir.trunc, cir.round, etc.). The vrndi_v/vrndiq_v cases are handled
in the common NEON switch since they enter via AArch64SIMDIntrinsicMap
(NEONMAP0). The vrnd32/64 builtins use NEONMAP1 entries with their
aarch64.neon.frint* intrinsic names.

The lowering follows the existing implementation in
CodeGen/TargetBuiltins/ARM.cpp.

Prior to this patch, the original neon-intrinsics.c had zero f32
standard rounding tests :
I had added 15 test cases to cover f32 standard rounding tests
(vrnd_f32, vrnda_f32, etc.) in
clang/test/CodeGen/AArch64/neon/intrinsics.c

For this reasons, 30 num-of-new-tests > 15 num-of-deleted-tests.

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


  Commit: 4fb7bf3323ea54d929f3846e6cd28d9dda1b891c
      https://github.com/llvm/llvm-project/commit/4fb7bf3323ea54d929f3846e6cd28d9dda1b891c
  Author: Yuan Suo <suoyuan666 at s5n.xyz>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/test/Sema/LifetimeSafety/safety-c.c
    M clang/test/Sema/LifetimeSafety/safety.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add multi-block support to buildOriginFlowChain (#204592)

After introducing `buildOriginFlowChain` to use-after-scope diagnostics,
it should support multi-block analysis. This also allows it to be reused
by other diagnostics.

In some loops, `UseFact` may appear before `OriginFlowFact`:

```cpp
void for_loop_use_before_loop_body(MyObj safe) {
  MyObj* p = &safe;
  for (int i = 0; i < 1; ++i) {
    (void)*p;
    MyObj s;
    p = &s;
  }
  (void)*p;
}
```

So I no longer use `StartPoint` as the initial search starting point; it
is only used to locate the corresponding block.

---------

Signed-off-by: Yuan Suo <suoyuan666 at s5n.xyz>


  Commit: f2342e84e66c015a43437620f825fe884c8bdd4e
      https://github.com/llvm/llvm-project/commit/f2342e84e66c015a43437620f825fe884c8bdd4e
  Author: Koakuma <koachan at protonmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/bswap.ll

  Log Message:
  -----------
  [SPARC] Don't combine misaligned memory ops with BSWAP (#206345)

Doing it will result in a misaligned LD*A/ST*A instruction, which will
raise a bus error.

This should fix the failure in `clamscan` test.


  Commit: d832bfe3c99ac8251258b5a965d4418db503e38c
      https://github.com/llvm/llvm-project/commit/d832bfe3c99ac8251258b5a965d4418db503e38c
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv

  Log Message:
  -----------
  [libc++] Mark LWG4098 as resolved (#206295)

Already implemented and tested in the scope of the full implementation
for `adjacent_view` (1e15dbe311eb08462e7a68fcb8b5850632e24aff).

Closes #105353


  Commit: 9a858b68628a37a36d82b076425c1e5ce902cb6f
      https://github.com/llvm/llvm-project/commit/9a858b68628a37a36d82b076425c1e5ce902cb6f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp

  Log Message:
  -----------
  [DirectX] Fix format override in DXILPrettyPrinter.cpp (#207588)


  Commit: ecbadb43064ad4f9dbc5bf8c1e232ce3582779f7
      https://github.com/llvm/llvm-project/commit/ecbadb43064ad4f9dbc5bf8c1e232ce3582779f7
  Author: Vicky Nguyen <vicky.trucviennguyen at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/AArch64CodeGenUtils.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/subtraction.c

  Log Message:
  -----------
  [CIR][AArch64] Upstream narrowing-subtraction NEON builtins (#207115)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for
- narrowing-subtraction intrinsics
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#narrowing-subtraction)

Port tests:
- `clang/test/CodeGen/AArch64/neon_intrinsics.c` to
`clang/test/CodeGen/AArch64/neon/subtraction.c`


  Commit: 67d9abb916acc2b501ae08297de95c22e99d7218
      https://github.com/llvm/llvm-project/commit/67d9abb916acc2b501ae08297de95c22e99d7218
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Use 0-based DFS numbering (#207524)

Number DFS-visited nodes from 0 and drop the unused index-0 sentinel
from NumToNode/NumToInfo/IDoms.

`Unvisited = 0` marks unvisited nodes by DFS. 0 is now the DFS root, or
the virtual root for postdominators.

Decrease the inline capacity for NumToNode/NodeInfos, which doesn't seem
to matter. sqlite3's p90 block count is 29.


  Commit: 2ac46a3b86ba92408f6503986f518da6cbd1d224
      https://github.com/llvm/llvm-project/commit/2ac46a3b86ba92408f6503986f518da6cbd1d224
  Author: David Green <david.green at arm.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith.ll
    M llvm/test/Analysis/CostModel/AArch64/mul.ll

  Log Message:
  -----------
  [AArch64] Update some arith and mul tests. NFC (#207589)


  Commit: bfca639ab943b4b2e16178797ebb01c84675ee65
      https://github.com/llvm/llvm-project/commit/bfca639ab943b4b2e16178797ebb01c84675ee65
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/Target/AArch64/AArch64InstPrinterTest.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Store CPU model index in SubTypeKV (#207351)

Instead of storing the pointer to the CPU model, store all CPU models in
an array and store the index. This is preliminary work for moving
SubTypeKV to .rodata.

NB: the scheduling models also take a fair amount of space in
.data.rel.ro, with SchedModels ~13kiB, ModelProcResources ~57kiB.


  Commit: 9cd1001509c89f468ab262194a77f5e191ca9040
      https://github.com/llvm/llvm-project/commit/9cd1001509c89f468ab262194a77f5e191ca9040
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir

  Log Message:
  -----------
  [GlobalISel] Add or_and_and pattern from SelectionDAG (#204618)

This PR adds the `fold or (xor x, y), (x and/or y) --> or x, y` pattern
from SelectionDAG to GlobalISel.


  Commit: 5bc19784053eb8904dbe81215301de16ed54f499
      https://github.com/llvm/llvm-project/commit/5bc19784053eb8904dbe81215301de16ed54f499
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/Target/AArch64/AArch64InstPrinterTest.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [MC][NFC] Store SubTypeKV names as string table (#207580)

This moves the large SubTypeKV arrays to .rodata, as they no longer
contain the key pointers that need to be relocated.

Additionally, remove the largely redundant CPUNames arrays and integrate
the AArch64 aliases into the sorted string table. There was really no
need to introduce these 17 kiB arrays solely for including AArch64
aliases in help output.... (added in b6c22a4)


  Commit: e3c881815ea25acdf9a5f485b23a60c2eae8481c
      https://github.com/llvm/llvm-project/commit/e3c881815ea25acdf9a5f485b23a60c2eae8481c
  Author: Igor Shevlyakov <igor at tachyum.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add4.ll

  Log Message:
  -----------
  [InstCombine] Fold commuted add of udiv/urem by two (#206272) (#207462)

Fixes #206272.

`SimplifyAddWithRemainder` folds `(X / C0) * C1 + (X % C0) * C2`,
treating `and X, lowmask` as a remainder and `lshr X, N` as a division.
The commuted form `add (and X, C), (lshr X, N)` was missed because the
operand-order swap only recognized a real `urem`/`srem`.

Now the fold is tried with both operand orders instead of relying on
that swap. Verified with Alive2.

Supersedes #207249 (re-opened from the correct account; already
incorporates the both-operand-orders refactor suggested there by
nikic).

Prepared with AI assistance per the [LLVM AI Tool
Policy](https://llvm.org/docs/AIToolPolicy.html); not a "good first
issue".

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: d8b223292490e9abdbce87278044de406e0242f3
      https://github.com/llvm/llvm-project/commit/d8b223292490e9abdbce87278044de406e0242f3
  Author: Sungbin Jo <goranmoomin at daum.net>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    A llvm/test/Transforms/InstCombine/fptoui-of-fdiv.ll

  Log Message:
  -----------
  [InstCombine] Fold fpto{u,s}i of int-cast fdiv into {u,s}div (#205853)

Fixes #205305.

Adds an InstCombine fold for the pattern `fpto{u,s}i (fdiv ({u,s}itofp
X), C)` to `{u,s}div X, C`.

Safe when
- Unsigned: C > 0 and the integer width N <= the FP mantissa width p.
- Signed:  C != 0 and N - 1 <= p, excluding (X == INT_MIN, C == -1). 

See linked issue for detailed reasoning.


  Commit: 4a02e116e58d162335cf18b4f1f28c7d34d6d3ac
      https://github.com/llvm/llvm-project/commit/4a02e116e58d162335cf18b4f1f28c7d34d6d3ac
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxxabi/test/thread_local_destruction_order.pass.cpp

  Log Message:
  -----------
  [libcxxabi] Re-enable `thread_local_destruction_order.pass.cpp‎` on FreeBSD (#186129)

The underlying bug has been fixed in https://reviews.freebsd.org/D55826.


  Commit: a68147f0f05652d50937ab178f7ac21069562028
      https://github.com/llvm/llvm-project/commit/a68147f0f05652d50937ab178f7ac21069562028
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__thread/formatter.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/future
    M libcxx/include/module.modulemap.in
    M libcxx/include/thread
    A libcxx/test/libcxx/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp

  Log Message:
  -----------
  [libc++] Use std::to_chars to format thread::id and canonicalize the representation across platforms (#181624)

This makes printing `thread::id` faster, since we avoid a bunch of
boilerplate code that isn't optimized away. It also avoids including
`<sstream>` and `<__locale>`, cutting the time to parse `<thread>` in
half.

This also changes the output when printing the id on a platform that
uses a pointer as the underlying type. I don't think that's a problem,
since the thread id isn't in any way stable. It also makes the output
consistent across all platforms we support.


  Commit: 925f4f27b724446572c644a23d20a8a8ecd5dd90
      https://github.com/llvm/llvm-project/commit/925f4f27b724446572c644a23d20a8a8ecd5dd90
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__random/mersenne_twister_engine.h
    M libcxx/test/benchmarks/random.bench.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_sseq.pass.cpp
    M libcxx/utils/libcxx/test/features/libcxx_macros.py

  Log Message:
  -----------
  [libc++] Add an ABI flag to optimize mersenne_twister_engine (#206423)

Instead of updating the status array every time `operator()` is called,
we can instead update it once every time the entire array has been read.
That allows the compiler to vectorize the updating code, improving
performance.

Apple M4:
```
Benchmark                                     old      new    Difference    % Difference
----------------------------------------  -------  -------  ------------  --------------
std::mt19937::operator()                     1.39     0.65         -0.74         -53.26%
std::mt19937::operator()_(into_array)      172.92    80.69        -92.23         -53.34%
std::mt19937_64::operator()                  1.46     0.99         -0.47         -31.99%
std::mt19937_64::operator()_(into_array)   187.31   108.10        -79.21         -42.29%
```

Fixes #197221


  Commit: 076af822d2bfba95e5d62e15d0f11216956b1cb4
      https://github.com/llvm/llvm-project/commit/076af822d2bfba95e5d62e15d0f11216956b1cb4
  Author: David Green <david.green at arm.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/docs/GlobalISel/Legalizer.rst
    R llvm/include/llvm/CodeGen/GlobalISel/LegacyLegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    R llvm/lib/CodeGen/GlobalISel/LegacyLegalizerInfo.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/lib/Target/BPF/GISel/BPFLegalizerInfo.cpp
    M llvm/lib/Target/M68k/GISel/M68kLegalizerInfo.cpp
    M llvm/lib/Target/Mips/MipsLegalizerInfo.cpp
    M llvm/lib/Target/PowerPC/GISel/PPCLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn

  Log Message:
  -----------
  [GlobalISel] Remove LegacyLegalizerInfo (#197308)

After #197238, #197370, #197371, #197374, #197375, #197377, #197378 and
#197379, this removes the legacy rules from global isel.

The above patches attempt to make all _tested_ operations legal, but
have only gone through the operations that have llvm tests. If more
fallbacks are now found to be happening, the other operations from
#197238 might be needed.


  Commit: 3be67c72f5d5b9f459c0b11fce2c92c2cac5a984
      https://github.com/llvm/llvm-project/commit/3be67c72f5d5b9f459c0b11fce2c92c2cac5a984
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M lld/ELF/Arch/SPARCV9.cpp

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for SPARCV9 (#206284)

Implement SPARCV9::scanSectionImpl, following the pattern established
for x86 and other targets. This merges the getRelExpr and TLS handling
for SHF_ALLOC sections into the target-specific scanner, enabling
devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC for PC-relative relocations and processR_PLT_PC for
  PLT relocations.
- Handle TLS LE relocations directly with checkTlsLe.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and preprocessRelocs.


  Commit: 051bcefe0efe0d157e6dc72e89c38b7840e9836a
      https://github.com/llvm/llvm-project/commit/051bcefe0efe0d157e6dc72e89c38b7840e9836a
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Store the semidominator value in Label (#207603)

runSemiNCA's eval() stores the vertex with the minimal semidominator in
Label and dereferences NumToInfo[Label]->Semi to compare it. Store the
semidominator (Semi) value directly in Label instead, so eval compares
by number with no NumToInfo lookup.


  Commit: ecdd6403fd213f90243a3d354d4db3483b89471f
      https://github.com/llvm/llvm-project/commit/ecdd6403fd213f90243a3d354d4db3483b89471f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericLoopInfoImpl.h

  Log Message:
  -----------
  [LoopInfo] Avoid a throwaway vector in getLoopsInPreorder. NFC (#207607)

We can append each root and walk its inner loops directly into the
result.


  Commit: f1d1746c4df9401667574c14a66cdfcb428b2cb6
      https://github.com/llvm/llvm-project/commit/f1d1746c4df9401667574c14a66cdfcb428b2cb6
  Author: David Green <david.green at arm.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/M68k/GISel/M68kLegalizerInfo.cpp

  Log Message:
  -----------
  [M68K][GlobalISel] Remove dependency on legal ruleset (#207614)

This fills in always legal rules, to remove the dependency on the legacy
ruleset. This is not guaranteed to be all the rules, just the ones that
appear
in tests.

See #197308


  Commit: bb639a128559172e8b3067ea267b8f37895ae1f8
      https://github.com/llvm/llvm-project/commit/bb639a128559172e8b3067ea267b8f37895ae1f8
  Author: xys-syx <xuyuansui at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll

  Log Message:
  -----------
  [MLIR][NVVM]Import llvm intrinsics for nvvm.barrier (#202862)

This PR adds LLVM IR import support for the `bar.sync` intrinsic family,
lifting the four variants into `nvvm.barrier` with the appropriate
`aligned` attribute and optional thread-count operand.

`LLVM_IntrOpBase` and its auto-generated import is one to one, but four
`bar.sync` variants are many-to-one, where they all lift into
`nvvm.barrier`, differing only in `aligned` and the optional
`numberOfThreads` operand.

An alternative implementation would extend mlir-tblgen with many-to-one
intrinsic-to-op mapping support so the conversion could live in
`NVVMOps.td`. But the change is bigger than manually import `bar.sync`
intrinsic family.


  Commit: 434e4e15f6a3217b4bbb8dafe68084222067e9ce
      https://github.com/llvm/llvm-project/commit/434e4e15f6a3217b4bbb8dafe68084222067e9ce
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/test/CodeGen/RISCV/make-compressible-for-store-address.mir
    M llvm/test/CodeGen/RISCV/make-compressible-rv64.mir
    M llvm/test/CodeGen/RISCV/make-compressible-xqci.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc-zhinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zfinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir
    M llvm/test/CodeGen/RISCV/make-compressible.mir

  Log Message:
  -----------
  [RISCV] Run MakeCompresible at Os as well (#207172)


  Commit: 319c1f1c1132e54a2135ffe1d7c58ed7e47b5e51
      https://github.com/llvm/llvm-project/commit/319c1f1c1132e54a2135ffe1d7c58ed7e47b5e51
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
    M llvm/lib/Analysis/StaticDataProfileInfo.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h

  Log Message:
  -----------
  [NewPM] Port StaticDataProfileInfo and wire into x86 AsmPrinter

Ports the analysis to the NewPM and wires it into the NewPM x86
AsmPrinter where we are currently just returning nullptr.

Reviewers: mingmingl-llvm, teresajohnson, arsenm, RKSimon

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


  Commit: 29fa6a82476b92c8bc5168118151675b6ab940d1
      https://github.com/llvm/llvm-project/commit/29fa6a82476b92c8bc5168118151675b6ab940d1
  Author: TelGome <93700071+TelGome at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    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 Merge. (#207110)


  Commit: deecf8dce7dd6df5ce82bf273f7bfb75a783160a
      https://github.com/llvm/llvm-project/commit/deecf8dce7dd6df5ce82bf273f7bfb75a783160a
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUAsyncOperations.rst
    A llvm/docs/AMDGPUDMAOperations.md
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/UserGuides.md

  Log Message:
  -----------
  [docs][AMDGPU] move DMA operations to a separate file (#206917)

This includes the various `.async` and `.tensor` operations. Various
scattered bits of information are now in one place. Also added the
missing documentation for tensor intrinsics.


  Commit: 9b2d44a51252891b4612330c485fa11464866455
      https://github.com/llvm/llvm-project/commit/9b2d44a51252891b4612330c485fa11464866455
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/include/llvm/ObjectYAML/ContiguousBlobAccumulator.h
    M llvm/lib/ObjectYAML/CMakeLists.txt
    A llvm/lib/ObjectYAML/ContiguousBlobAccumulator.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp

  Log Message:
  -----------
  [ObjectYAML][NFC] Hoist ContiguousBlobAccumulator into a shared header (#207306)

Move ContiguousBlobAccumulator out of ELFEmitter.cpp's anonymous
namespace so other yaml2obj emitters can reuse it.


  Commit: 224b9d2ac05d808aa4b08c27ba37149260310e4b
      https://github.com/llvm/llvm-project/commit/224b9d2ac05d808aa4b08c27ba37149260310e4b
  Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/set
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.associative.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/multiset/clear.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/empty.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/find.pass.cpp
    M libcxx/test/std/containers/associative/multiset/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/multiset/max_size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/merge.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/upper_bound.pass.cpp

  Log Message:
  -----------
  [libc++] Make `<set>` `std::multiset` constexpr as part of P3372R3 (#206257)


  Commit: dc56f7104e036bdbf5b48d4d16dd3cf41c44e78f
      https://github.com/llvm/llvm-project/commit/dc56f7104e036bdbf5b48d4d16dd3cf41c44e78f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    A llvm/include/llvm/CodeGen/StaticDataSplitter.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/StaticDataSplitter.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp

  Log Message:
  -----------
  [NewPM] Port StaticDataSplitter

Standard pass porting. Remove the MBPI member given it was unused.

Reviewers: arsenm, teresajohnson, mingmingl-llvm

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


  Commit: 311c3cee0c6c6d7f192b58ec02dd381539ccb0a2
      https://github.com/llvm/llvm-project/commit/311c3cee0c6c6d7f192b58ec02dd381539ccb0a2
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    A llvm/include/llvm/CodeGen/StaticDataAnnotator.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/StaticDataAnnotator.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [NewPM] Port StaticDataAnnotator

Standard NewPM pass porting. The PassBuilder wireup/test coverage will
come in the next PR.

Reviewers: arsenm, teresajohnson, mingmingl-llvm

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


  Commit: f7d75024bf194e660aa56714e7f0fdb56b92de69
      https://github.com/llvm/llvm-project/commit/f7d75024bf194e660aa56714e7f0fdb56b92de69
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M llvm/include/llvm/BinaryFormat/DynamicTags.def
    M llvm/lib/Object/ELF.cpp

  Log Message:
  -----------
  [SPARC] Make SPARC_REGISTER Sparc specific in llvm-readobj and LLDB (#206316)

The commit 4418a8e5 failed to limit SPARC_REGISTER to Sparc targets
only, which causes conflict when adding new dynamic tags for other
targets.


  Commit: 774f8a0b868cf526ffbd8af0a7e83c6b70d1b4fb
      https://github.com/llvm/llvm-project/commit/774f8a0b868cf526ffbd8af0a7e83c6b70d1b4fb
  Author: jinge90 <ge.jin at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/complex.rst
    M libc/include/complex.yaml
    M libc/src/complex/CMakeLists.txt
    A libc/src/complex/cabs.h
    A libc/src/complex/cabsf.h
    M libc/src/complex/generic/CMakeLists.txt
    A libc/src/complex/generic/cabs.cpp
    A libc/src/complex/generic/cabsf.cpp
    A libc/test/src/complex/CAbsTest.h
    M libc/test/src/complex/CMakeLists.txt
    A libc/test/src/complex/cabs_test.cpp
    A libc/test/src/complex/cabsf_test.cpp
    M libc/utils/MPCWrapper/MPCUtils.cpp

  Log Message:
  -----------
  [libc][complex] Enable cabs and cabsf in libc (#206677)

This PR adds basic implementation for cabs and cabsf in LLVM libc and
also extend current MPC infrastructure to support cabs operation.

---------

Signed-off-by: jinge90 <ge.jin at intel.com>


  Commit: 4d7b4fd9879fb0599b4e0a2a0c60394f64015c5a
      https://github.com/llvm/llvm-project/commit/4d7b4fd9879fb0599b4e0a2a0c60394f64015c5a
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/test-suite.yml

  Log Message:
  -----------
  [GitHub] Build llvm-size for test-suite.yml workflow (#207642)

This is also needed by llvm-test-suite


  Commit: 4eb56cf497aaee55dc1346a7e1319dff33864601
      https://github.com/llvm/llvm-project/commit/4eb56cf497aaee55dc1346a7e1319dff33864601
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
    M llvm/test/Transforms/InstSimplify/cast.ll

  Log Message:
  -----------
  [InstSimplify] Fold value-preserving zext/sext of trunc (#204089)

Fold a value-preserving `zext (trunc nuw X)` / `sext (trunc nsw X)` back
to
`X` in `simplifyCastInst` (when the trunc source type equals the extend
result type and the no-wrap flag guarantees the round-trip is identity).

After indvars canonicalizes a min-index loop, the running-index select
has a
`trunc nuw nsw i64 %iv to i32` on its true side while `arr[i]` is
addressed
directly with the i64 `%iv`. When PHI-translating the select-dependent
address along the backedge (see #203863), the true side becomes
`gep base, zext nneg (trunc nuw %iv)`, which has no matching instruction
in
the loop, so the select dependency is never formed and the redundant
load
survives.

Teaching `simplifyCastInst` to collapse the value-preserving
extend-of-trunc
makes the translated address fold back to `gep base, %iv`, matching the
existing `arr[i]` address, so the load through the select index is
eliminated. This fixes the integer min-index variant of

https://github.com/llvm/llvm-project/issues/58569#issuecomment-2788365047
(e.g. returning `minloc` instead of the value).

Alive2: https://alive2.llvm.org/ce/z/T5kMG8

Assisted-by: TraeCli (AI assistant)


  Commit: 45574a58a0298cf64264022cb108818d84c3d6fd
      https://github.com/llvm/llvm-project/commit/45574a58a0298cf64264022cb108818d84c3d6fd
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/test/Analysis/CostModel/RISCV/fca-load-store.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-scatter.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-select.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lmul-max.ll
    M llvm/test/CodeGen/RISCV/rvv/pr52475.ll

  Log Message:
  -----------
  [RISCV] Remove -riscv-v-fixed-length-vector-lmul-max option (#207312)

Whilst reviewing https://github.com/llvm/llvm-project/pull/207254, I
threw claude at it and it found a crash when passing in a non-default
-riscv-v-fixed-length-vector-lmul-max flag.

This option was added 5 years ago around the time initial fixed vector
support was being added in a719b667a9794, and IIUC it was added so that
support for more LMULs could be added over time.

We don't have any substantial codegen testing for it and I couldn't find
any downstream users either. So rather than trying to fix
https://github.com/llvm/llvm-project/pull/207254 to handle it it seems
easier just to remove it now that fixed vector support for RVV has
matured.


  Commit: 467390e7c08a5067355aa72d6262ff965d7fc9b4
      https://github.com/llvm/llvm-project/commit/467390e7c08a5067355aa72d6262ff965d7fc9b4
  Author: Chengjun <chengjunp at Nvidia.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll

  Log Message:
  -----------
  [InstCombine] Skip redundant demanded element queries in insert chains (#205948)

Avoid re-running `SimplifyDemandedVectorElts` on intermediate
`insertelement` chain nodes when a bounded scan proves the top-level
all-lanes query cannot change the IR.

The skip is implemented inside the `InsertElement` case of
`SimplifyDemandedVectorElts` and is limited to the top-level all-lanes
query (`Depth == 0 && DemandedElts.isAllOnes()`). The bounded scan
matches the existing SDVE depth window and only skips chains with
distinct in-range constant insert indices. This keeps the normal SDVE
path for duplicate indices, variable indices, out-of-range indices,
multi-use chains, and the final chain root.

This was motivated by a cutile matmul compile-time case where loop
unrolling produced 128-lane vector insert/extract chains. Before this
change, InstCombine repeatedly invoked SDVE on intermediate
`insertelement` nodes in those chains. On the representative IR, the
affected InstCombine pass time went from about `44.9 ms` to `29.8 ms`,
and total `opt` compile time was reduced by about 20%.

AI disclosure: This patch was developed with assistance from
@openai-codex using GPT-5.5 via [Codex](https://openai.com/codex/). I
reviewed and tested the final changes before submission.


  Commit: a929f649b490103ee15e2b71b4666d52b997b877
      https://github.com/llvm/llvm-project/commit/a929f649b490103ee15e2b71b4666d52b997b877
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll

  Log Message:
  -----------
  [AMDGPU][NPM] Complete AsmPrinter support (#203509)


  Commit: aae9f9ed88eda733e46e308351ba5cd68091806f
      https://github.com/llvm/llvm-project/commit/aae9f9ed88eda733e46e308351ba5cd68091806f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Move Scope classes to source file (#207647)


  Commit: 0ac6b4bd5b49b0615d420fb03c59024a4e360a31
      https://github.com/llvm/llvm-project/commit/0ac6b4bd5b49b0615d420fb03c59024a4e360a31
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Remove unnecessary loop variable (#207649)

No reason to have the extra `N`.


  Commit: a280b1b4f84186255c41a989312ab01ee4c30b88
      https://github.com/llvm/llvm-project/commit/a280b1b4f84186255c41a989312ab01ee4c30b88
  Author: Santanu Das <santdas at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    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/test/CodeGen/Hexagon/reserved-regs.ll

  Log Message:
  -----------
  [Hexagon] Allow reservation of caller saved registers via -ffixed-rXX (#205733)

Previously, hexagon allowed only callee saved registers to be reserved
since reserving caller saved regs can create problems, since it cannot
be sure that the callee (from a different module) also reserves the
register.

The responsibility of reserving register and managing it is now on the
user. However, a warning will be displayed if the user tries to reserve a
caller saved register.

---------

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


  Commit: f44ec21260a193a197727962326f07d4a3150af9
      https://github.com/llvm/llvm-project/commit/f44ec21260a193a197727962326f07d4a3150af9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Move float->ap cast ops to the source file (#207592)

And deduplicate the code.


  Commit: ae3d310fa38febc0fd52421ed1e12c621757204c
      https://github.com/llvm/llvm-project/commit/ae3d310fa38febc0fd52421ed1e12c621757204c
  Author: ingoneuse <ingo.neuse at sap.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp

  Log Message:
  -----------
  [clangd] Null-check AutoTypeLoc in CollectExtraHighlightings::VisitDeclaratorDecl (#207323)

A Decl's getType() can have a getContainedAutoType() without
its TypeSourceInfo's type having one, because the two types
can differ in type sugar such as DecltypeType which
getContainedAutoType[Loc]() deliberately does not look through.

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


  Commit: 7bdca287b102ee935e982613dba2264cbc7a32ad
      https://github.com/llvm/llvm-project/commit/7bdca287b102ee935e982613dba2264cbc7a32ad
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Analysis/InlineCost.cpp
    A llvm/test/Transforms/Inline/X86/always-inline-features.ll

  Log Message:
  -----------
  [InlineCost] Never inline functions with incompatible target features (#205113)

If inlining is unsound due to incompatible target feature attributes, we
should not inline the call even if alwaysinline is set. This will likely
result in a crash during instruction selection.

We tried this previously in
https://github.com/llvm/llvm-project/commit/d6f994acb3d545b80161e24ab742c9c69d4bbf33,
but the change had to be reverted because the quality of our
areInlineCompatible() hooks was very bad at the time, which resulted in
inlining not happening in many cases where it was safe.

I think we're in a much better position now. Most notably, we now have a
default areInlineCompatible() implementation that actually does
something sensible (https://github.com/llvm/llvm-project/pull/117493),
inlining compatibility for target features is now specified in TableGen
(https://github.com/llvm/llvm-project/pull/205348). Various
target-specific issues have been fixed as well, e.g. ARM's overly strict
feature whitelist (https://github.com/llvm/llvm-project/pull/205763) and
X86's overly conservative ABI compatibility checks
(https://github.com/llvm/llvm-project/pull/205106).


  Commit: 1b2efd2e079a7fe86888cb7da12a5efa84b131fc
      https://github.com/llvm/llvm-project/commit/1b2efd2e079a7fe86888cb7da12a5efa84b131fc
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    A libcxx/include/__memory/uninitialized_multidimensional_algorithms.h
    M libcxx/include/module.modulemap.in

  Log Message:
  -----------
  [libc++] Split the multidimensional algorithms out of uninitialized_algorithms.h (#207447)

While these algorithms are conceptually related to other
`uninitialized_*` algorithms, they're likely only ever going to be used
by `shared_ptr`. `uninitialized_algorithms.h` itself is also getting
rather large, so it makes sense to split the multidimensional versions
into their own header.

Fixes #207417


  Commit: acafa250fd7abd22c20584ad615e9727fa5d1ed5
      https://github.com/llvm/llvm-project/commit/acafa250fd7abd22c20584ad615e9727fa5d1ed5
  Author: lrzlin <linrunze at loongson.cn>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sitofp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uitofp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sitofp.ll

  Log Message:
  -----------
  [LoongArch] Remove inaccurate LASX conversion pattern and use [X]VFFINT.S.L instead (#207107)

Original LASX signed/unsigned 64-bit integer & floating point will
suffer from double rounding issue, due to it implements such logic: `i64
-> double -> float` that will lead to precision loss. So delete it and
introduce the `[X]VFFINT.S.L` instruction, which could convert 4 or 8
signed 64-bit integer into float in one instrunction.

Also, create the `MergeBlocksConvert` helper function to reuse the logic
about merge two blocks into one, avoid unnecessary code size bloat.


  Commit: cb942d009a5ed029ce20d9b75b3604f551f0cb56
      https://github.com/llvm/llvm-project/commit/cb942d009a5ed029ce20d9b75b3604f551f0cb56
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Always enable -fvisibility=hidden (#207333)

Building with `-fvisibility=hidden` is generally a good idea, since it
avoids unnecessary relocations when loading a dylib. For libc++abi this
should be a no-op, since most things are annotated explicitly. By
enabling `-fvisibility=hidden` we can remove these explicit annotations
however.


  Commit: 46aa983d0990692e9aab6917435faab8a6395aa0
      https://github.com/llvm/llvm-project/commit/46aa983d0990692e9aab6917435faab8a6395aa0
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst

  Log Message:
  -----------
  [clang][analyzer] Add documentation for unix modeling checker options (NFC) (#207225)


  Commit: 4341c0c9b8b88aac576ce55211ea9db032b74124
      https://github.com/llvm/llvm-project/commit/4341c0c9b8b88aac576ce55211ea9db032b74124
  Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  [mlir][memref] Implement ValueBoundsOpInterface for memref.extract_strided_metadata/assume_alignment (#206466)

Add ValueBoundsOpInterface external models for memref.assume_alignment
and memref.extract_strided_metadata, so dimension and metadata bounds
can be propagated through these view-like ops during value-bounds
analysis.


  Commit: e9e37211456e54b2e57f4b32cf4306012355601b
      https://github.com/llvm/llvm-project/commit/e9e37211456e54b2e57f4b32cf4306012355601b
  Author: David Green <david.green at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    R llvm/test/CodeGen/AArch64/GlobalISel/combine-max-min.ll

  Log Message:
  -----------
  [AArch64] Remove duplicate combine-max-min.ll test. NFC (#207679)


  Commit: d180df7d2d54b8460e2e20e46e69d617bbebff2f
      https://github.com/llvm/llvm-project/commit/d180df7d2d54b8460e2e20e46e69d617bbebff2f
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll

  Log Message:
  -----------
  [SPIR-V] Support i64 smul.fix/umul.fix via SPV_ALTERA_arbitrary_precision_integers (#207405)


  Commit: 61679c3a299b2a858642feb805a5b383ae7d0902
      https://github.com/llvm/llvm-project/commit/61679c3a299b2a858642feb805a5b383ae7d0902
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/linux/sys-socket-macros.h

  Log Message:
  -----------
  [libc] Add protocol family constants (#206911)

These aren't in POSIX, but are in 4.2BSD and they're still widely used.


  Commit: d93dfabfba1b2450e2571b72e7344def2703b0b1
      https://github.com/llvm/llvm-project/commit/d93dfabfba1b2450e2571b72e7344def2703b0b1
  Author: Yunqing Yu <yunqingy at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    A llvm/test/Verifier/NVPTX/tensormap-replace.ll

  Log Message:
  -----------
  [NVPTX] Add missing Range attr to tensormap.replace intrinsics. (#207099)

Add missing `Range=[0, 5)` for `%ord imm` operand in
`nvvm.tensormap.replace` intrinsics.


  Commit: 0c38875e1ae414695265f82bb91643c3d1ebcb9f
      https://github.com/llvm/llvm-project/commit/0c38875e1ae414695265f82bb91643c3d1ebcb9f
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    R lldb/test/API/functionalities/fork/stop/Makefile
    R lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py
    R lldb/test/API/functionalities/fork/stop/main.c
    R lldb/test/Shell/Subprocess/stop-on-fork.test
    R lldb/test/Shell/Subprocess/stop-on-vfork.test

  Log Message:
  -----------
  [lldb] Revert stop-on-fork and stop-on-vfork (#207663)

This was causing failures on green dragon


  Commit: bf74249b5ecd651ca99043bea11a8b64301557d3
      https://github.com/llvm/llvm-project/commit/bf74249b5ecd651ca99043bea11a8b64301557d3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/CodeGenCoroutines/coro-elide.cpp
    M clang/test/CodeGenCoroutines/coro-halo.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp

  Log Message:
  -----------
  [Clang] Require X86 backend for some coroutine tests (#207681)

The wrapper functions are generated without target features.
They can still be inlined based on target-specific logic, but this
requires the target to be available.

We should fix this by properly generating the target features,
but for now add a REQUIRES to unbreak the tests.


  Commit: 2866d2333c477dead9a37248316e8d172e3b612a
      https://github.com/llvm/llvm-project/commit/2866d2333c477dead9a37248316e8d172e3b612a
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    A llvm/test/Bitcode/Inputs/aarch64-memory-attribute-upgrade.bc
    A llvm/test/Bitcode/Inputs/x86-memory-attribute-upgrade.bc
    A llvm/test/Bitcode/target-memory-attribute.ll
    A llvm/test/Transforms/LICM/AArch64/sme-fp8-hoist.ll

  Log Message:
  -----------
  [AArch64][Bitcode] Use target memory for SME state (#205829)

Model AArch64 ZA and ZT0 intrinsic state using target_mem instead of
inaccessiblemem.

Bump the bitcode memory-attribute encoding and upgrade old AArch64
bitcode so prior inaccessiblemem effects are preserved on the new target
memory locations. Non-AArch64 bitcode keeps the old interpretation.


  Commit: b30c365833b2d9d06c9de28551302acf524a2b04
      https://github.com/llvm/llvm-project/commit/b30c365833b2d9d06c9de28551302acf524a2b04
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h

  Log Message:
  -----------
  [clang-format][NFC] Refactor UnwrappedLineParser::parseLabel (#207674)

See
https://github.com/llvm/llvm-project/pull/196815#issuecomment-4470006692


  Commit: 753ceecfdcdf43d626ddd9534cdf470572a8deda
      https://github.com/llvm/llvm-project/commit/753ceecfdcdf43d626ddd9534cdf470572a8deda
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/sys/socket.yaml
    M libc/src/sys/socket/CMakeLists.txt
    M libc/src/sys/socket/linux/CMakeLists.txt
    A libc/src/sys/socket/linux/sockatmark.cpp
    A libc/src/sys/socket/sockatmark.h
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    A libc/test/src/sys/socket/linux/sockatmark_test.cpp

  Log Message:
  -----------
  [libc] Implement sockatmark (#205400)

This patch implements sockatmark as a simple wrapper around
ioctl(SIOCATMARK).

I don't test it with actual out of band data, as that requires a TCP
connection, which is more complicated to set up.

Assisted by Gemini.


  Commit: 74eebbe02b85b28e4c6519062d82c146987b5d8e
      https://github.com/llvm/llvm-project/commit/74eebbe02b85b28e4c6519062d82c146987b5d8e
  Author: Ádám Kallai <kadam at inf.u-szeged.hu>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M bolt/unittests/Profile/PerfScripts.cpp

  Log Message:
  -----------
  [BOLT] Fixed PerfScript unittest for X86 (#207408)

The test was not prepared to run on X86 target.
This change parameterized the test function to ensure proper
initialization for different targets.


  Commit: 40d671f85d28a683fd5820b2e0a356f2d1cc58e3
      https://github.com/llvm/llvm-project/commit/40d671f85d28a683fd5820b2e0a356f2d1cc58e3
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/benchmarks/ImmutableSetIteratorBM.cpp
    M llvm/include/llvm/ADT/ImmutableSet.h

  Log Message:
  -----------
  [ADT][NFC] Use isEqual for ImmutableSet/Map tree canonicalization (#207596)

`ImutAVLFactory::getCanonicalTree` deduplicates a newly built tree
against the trees already in its cache. On a digest collision it
confirmed structural equality with `compareTreeWithSection`, a plain
element-by-element in-order walk that is always linear in the tree size.

`ImutAVLTree` already provides `isEqual`, which performs the same
structural comparison but skips subtrees that are shared by pointer.
These persistent trees are heavily structurally shared -- a tree
produced by `add`/`remove` shares everything but the mutated spine with
its predecessor -- so switching `getCanonicalTree` to `isEqual` reduces
the confirmation from `O(tree size)` to `O(number of differing nodes)`
in the common case, and is never asymptotically worse. The comparison is
exact, so canonicalization behavior is unchanged.

This builds on the recent iterator rewrite in #205552 ("Rewrite
ImmutableSet/Map in-order iterator without per-node state"), which made
in-order traversal and `skipSubTree` ~2x faster. That change is a
constant-factor speedup of the iterator primitive and it deliberately
preserved `skipSubTree`/`isEqual` semantics; this patch is complementary
and algorithmic: it routes canonicalization through the pointer-skipping
`isEqual`, cutting the number of nodes visited rather than the per-node
cost. The two compose -- the remaining traversal here runs on the faster
iterator from #205552.

This confirmation is the dominant cost of `ExplodedGraph`
canonicalization in the Clang Static Analyzer whenever many equivalent
`ProgramState`s are kept live and re-derived on different paths (for
example with node reclamation disabled): each re-derivation of an
already-cached `Environment`/`Store` map paid a full in-order walk to
confirm the match. On several large reproducers the analyzer's
`ImutAVLFactory` node comparisons dropped by ~26-36x with identical
diagnostics and identical `ExplodedGraph` node/step counts. (These
measurements already include #205552, so this speedup is on top of that
iterator win.)

`compareTreeWithSection` had no other callers and is removed.

## Analyzer wall-clock

Measured on the three reproducers from

https://github.com/llvm/llvm-project/issues/105512#issuecomment-2389083480,
best-of-3 wall-clock, `RelWithDebInfo` on an Apple M-series host. "ON"
is the default; "OFF" disables node reclamation (`-analyzer-config
graph-trim-interval=0`), the configuration that exposes the cost:

| Reproducer   | Config | Before   | After   | Speedup |
| ------------ | ------ | -------- | ------- | ------- |
| ruby-unicode | ON     |  2.18 s  | 2.06 s  | ~1.0x   |
| ruby-unicode | OFF    | 11.97 s  | 2.28 s  | ~5.2x   |
| linux-topro  | ON     |  5.26 s  | 5.08 s  | ~1.0x   |
| linux-topro  | OFF    | 11.16 s  | 5.21 s  | ~2.1x   |
| MSP430       | ON     |  2.71 s  | 2.65 s  | ~1.0x   |
| MSP430       | OFF    |  7.58 s  | 2.71 s  | ~2.8x   |

The default (ON) path is unchanged within noise; the OFF path drops from
2.1-5.5x slower than ON to parity.

## Microbenchmark

Add a `CanonicalizeSharedEqual` case to `ImmutableSetIteratorBM`
covering `getCanonicalTree`/`isEqual`. It re-canonicalizes a freshly
built tree that is equal to, and shares subtrees with, a cached tree
(`RelWithDebInfo`, same host):

| Set size `N` | Before    | After   | Speedup |
| ------------ | --------- | ------- | ------- |
| 16           |    212 ns |  186 ns | ~1.1x   |
| 256          |   1354 ns |  347 ns | ~3.9x   |
| 4096         |  21603 ns |  547 ns | ~40x    |
| 65536        | 677240 ns | 1015 ns | ~667x   |

The existing `Iterate`/`Skip`/`CompareSamePos` cases are unchanged; this
does not touch the iterator.

Assisted by: Claude Opus 4.8


  Commit: 672342f104a17a49f1286e5852fd0a9799c457fb
      https://github.com/llvm/llvm-project/commit/672342f104a17a49f1286e5852fd0a9799c457fb
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/Verifier/NVPTX/tensormap-replace.ll

  Log Message:
  -----------
  [NVPTX] Regenerate check lines (NFC) (#207684)

llvm-nvptx-nvidia-ubuntu buildbots were previously failing, appeared
after https://github.com/llvm/llvm-project/pull/207099.


  Commit: 46367bb4fbc2617582227c2ceb468e8de44fef81
      https://github.com/llvm/llvm-project/commit/46367bb4fbc2617582227c2ceb468e8de44fef81
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/divrem-by-select.ll
    M llvm/test/CodeGen/X86/insertelement-zero.ll
    M llvm/test/CodeGen/X86/legalize-vec-assertzext.ll
    M llvm/test/CodeGen/X86/psadbw.ll
    M llvm/test/CodeGen/X86/sad_variations.ll
    M llvm/test/CodeGen/X86/trunc-subvector.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv_fix.ll
    M llvm/test/CodeGen/X86/udiv_fix_sat.ll
    M llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
    M llvm/test/CodeGen/X86/vector-reduce-ctpop.ll

  Log Message:
  -----------
  [X86] Attempt to narrow XMM->i64 (v)movq -> (v)movd if the upper 32-bits are known to be zero (#207615)

Add a custom 'X86upperzero' tablegen pattern to match vectors where the
upper half bits of every element is known zero.

Saves 1 byte by using (V)MOVD instead of (V)MOVQ - and avoids
differences in X86/X64 codegen that was bloating diffs in some upcoming
VECREDUCE_ADD work.

I've added an extra psadbw.ll test to ensure that the extractstore
pattern isn't being affected.

Cleanup for the upcoming VECREDUCE_ADD handling which will be using
PSADBW more aggressively (v2i64 result type but only 16 active bits for
element).


  Commit: b81a4c10c8736e5c2bfec4cc091713e4cb7b5b3a
      https://github.com/llvm/llvm-project/commit/b81a4c10c8736e5c2bfec4cc091713e4cb7b5b3a
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll

  Log Message:
  -----------
  [AMDGPU] Fix s.barrier.init/signal.var member count mask (#207660)

The count was shifted before masking, so bits above the low 6 could leak
past the member count field in M0


  Commit: 831ad2ee6af862965c21d7b785b0b00ed7bb7d9d
      https://github.com/llvm/llvm-project/commit/831ad2ee6af862965c21d7b785b0b00ed7bb7d9d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_ipv6_mreq.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/netinet-in-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_ipv6_mreq.h
    M libc/include/netinet/in.yaml
    M libc/test/src/netinet/CMakeLists.txt
    M libc/test/src/netinet/in_test.cpp

  Log Message:
  -----------
  [libc] Add struct ipv6_mreq and IPv6 socket options (#206448)

This patch adds struct ipv6_mreq and defines various IPv6 socket option
macros in <netinet/in.h>. I've also moved the existing option
definitions to the yaml file.

Assisted by Gemini.


  Commit: 334eb772a25d700feb1f6c64b872cc693731b0b3
      https://github.com/llvm/llvm-project/commit/334eb772a25d700feb1f6c64b872cc693731b0b3
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/cl-ops-to-llvm.mlir
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversions for GL.FMix and CL.mix (#206935)


  Commit: 65bbeff0bdcfa53e72517ed59ab510ab6ebd32bf
      https://github.com/llvm/llvm-project/commit/65bbeff0bdcfa53e72517ed59ab510ab6ebd32bf
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversion for GL.FClamp/SClamp/UClamp (#203831)

Lower the GLSL clamp ops as nested min/max following `min(max(x, y), z)`

---------

Co-authored-by: Igor Wodiany <dev at wodiany.com>


  Commit: 8470dfb1e6190cc42c3eb151884533b8b4aba7e6
      https://github.com/llvm/llvm-project/commit/8470dfb1e6190cc42c3eb151884533b8b4aba7e6
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  [lldb] Guard DW_OP_convert against null DWARF unit and empty stack (#207008)

`Evaluate_DW_OP_convert` dereferenced `eval_ctx.dwarf_cu` (the
`DWARFExpression` Delegate) whenever the operand DIE offset was
non-zero,
and unconditionally read `eval_ctx.stack.back()`.  When a DWARF
expression is evaluated without a DWARF unit (as the
lldb-dwarf-expression-fuzzer does), two operand shapes crash:

- `DW_OP_convert` with a non-zero offset calls
  `dwarf_cu->GetDIEBitSizeAndSign(...)` on a null Delegate.
- `DW_OP_convert` with nothing on the stack reads the back of an empty
  vector.

The unit test feeds both with `dwarf_cu == nullptr` and crashes:

```
[ RUN      ] DWARFExpression.DW_OP_convert
 #2 SignalHandler(int, __siginfo*, void*)
 #4 DWARFExpression::Evaluate(...)
 #5 Evaluate(ArrayRef<unsigned char>, ...)
```

(SIGSEGV, the process aborts.)

Bail out with an error when the stack is empty, and when a non-zero DIE
offset is requested without a DWARF unit, instead of crashing.

Extends `DWARFExpression.DW_OP_convert` with these two cases, which
crash
without the fix.

---------

Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>


  Commit: 8e85d1f3d458ae91d8838ccde75c1488dd514794
      https://github.com/llvm/llvm-project/commit/8e85d1f3d458ae91d8838ccde75c1488dd514794
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    A lldb/test/API/macosx/expedited-stack-memory/Makefile
    A lldb/test/API/macosx/expedited-stack-memory/TestExpeditedStackMemory.py
    A lldb/test/API/macosx/expedited-stack-memory/main.c

  Log Message:
  -----------
  [lldb][test] Add expedited-stack-memory backtrace/locals packet test (#205897)

Add a Darwin API test that checks which gdb-remote packets lldb sends
while
inspecting the stack at a public stop, using the gdb-remote packet log
(the
same approach as TestExpeditedThreadPCs.py).

debugserver expedites the frame-pointer backchain in the `jThreadsInfo`
reply
at a public stop and lldb caches it, so:

- A backtrace (`GetNumFrames` + `GetFrameAtIndex` over every frame)
sends no
packets at all. With the memory cache disabled it must read the
backchain
frame by frame, which confirms the test exercises the unwinder's memory
    reads.

- Examining frame locals is not covered by the expedite, so it reads
value
memory. The reads are classified as stack vs heap using the variables'
    own addresses (known from main.c).

Locals are examined two ways, modeling how an IDE inspects values at a
stop:
walking the whole stack but examining only the selected frame's locals
(frame 0, as a variables view does on a stop), and examining every
frame's
locals (a "view all frames" mode). The stopped frame (`func_e`) carries
scalar,
aggregate, and pointer-to-heap locals so frame 0 alone reads both stack
and
heap memory; the outer frames keep locals so the all-frames case reads
the
same variety across several frames.  Values are read with
`use_dynamic=eDynamicCanRunTarget` to match how an IDE reads them.


  Commit: 4ffcfdfac177a7e7b3d9be20f73dd9d2890da006
      https://github.com/llvm/llvm-project/commit/4ffcfdfac177a7e7b3d9be20f73dd9d2890da006
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
    M lldb/unittests/ScriptInterpreter/Python/PythonDataObjectsTests.cpp

  Log Message:
  -----------
  [lldb] Reject NULL key in PythonDictionary::GetItem (#205753)

A `breakpoint set -P <class>` with an invalid-UTF-8 class name crashes
lldb with `EXC_BAD_ACCESS`.  The class name is passed through
unmodified, so the byte sequence `\xd0p` (an incomplete two-byte UTF-8
sequence) reaches the Python layer:

```
 ./bin/lldb -b -o $'breakpoint set -P \xd0p -f main.cpp' ./bin/lldb
...
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/
Stack dump:
 #4 PythonDictionary::GetItem(PythonObject const&) const
 #6 PythonDictionary::GetItemForKey(PythonObject const&) const
 #7 PythonObject::ResolveNameWithDictionary(StringRef, PythonDictionary const&)
 #9 ScriptedPythonInterface::CreatePluginObject<...>(...)
```

`ResolveNameWithDictionary` builds a `PythonString` from the class name
and looks it up in the module dictionary.  When the name is not valid
UTF-8, `PyUnicode_FromStringAndSize` returns `NULL`, so the
`PythonString` is left with `m_py_obj == NULL`. `GetItemForKey` forwards
that object to `GetItem`, which passed the `NULL` `PyObject *` straight
to `PyDict_GetItemWithError`.

Debugging the crashing lldb under lldb shows the `NULL` key arriving in
`GetItem`:

```
(lldb) break set -n lldb_private::python::PythonDictionary::GetItem
(lldb) run --no-use-colors -b -s /tmp/bp_cmds.txt
* stop reason = breakpoint 1.1
(lldb) up
(lldb) frame variable key.m_py_obj
(PyObject *) key.m_py_obj = nullptr
```

Continuing lands on the dereference of that `NULL` inside CPython:

```
(lldb) continue
* stop reason = EXC_BAD_ACCESS (code=1, address=0x8)
    frame #0: PyDict_GetItemWithError + 40
->  ldr    x8, [x1, #0x8]
```

`x1` holds the key argument, which is `NULL`, so reading the type field
at offset `0x8` faults at address `0x8`.

`GetItem` already guards against an invalid dictionary (`!IsValid()`);
extend that guard to reject an invalid key as well and return
`nullDeref()`.  `GetItemForKey` consumes the error and returns an empty
`PythonObject`, so existing callers such as `ResolveNameWithDictionary`
keep working and the breakpoint command now fails cleanly instead of
crashing.

This was found by `lldb-commandinterpreter-fuzzer`.

Adds `PythonDataObjectsTest.TestPythonDictionaryGetItemWithInvalidKey`,
which feeds an invalid-UTF-8 key to `GetItem`.  Without the fix the test
dereferences the `NULL` key and crashes (`SIGSEGV`).


  Commit: fcfc9167b628a2fae8fe1d662989ff7752d905ad
      https://github.com/llvm/llvm-project/commit/fcfc9167b628a2fae8fe1d662989ff7752d905ad
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    A llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    A llvm/test/Bitcode/module-asm.ll
    A llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    A llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    A llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    A llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  Reapply [IR] Explicitly specify target feature for module asm (#204548) (#207677)

Reapply with a use-after-free fix. The MC subtarget used for inline
assembly has to stay alive until finalization, not only during the
emitInlineAsm() call.

-----

Support specifying additional properties on module-level inline
assembly. In particular, the target features and target CPU can now be
specified as follows:

    module asm(target_features: "+foo", target_cpu: "bar")
        "asm line 1"
        "asm line 2"

There may be multiple module inline assembly blocks with different
properties.

This is intended to fix the long standing issue where in LTO scenarios
we don't know what target features to use for parsing the module-level
inline assembly. Now they can be faithfully preserved, even when merging
inline assembly from different modules with different features.

If target_features and target_cpu are empty, we fall back to the old
behavior (which, in the backend, would be to use the default subtarget
of the TargetMachine).

Fixes https://github.com/llvm/llvm-project/issues/61991.
Fixes https://github.com/llvm/llvm-project/issues/67698.


  Commit: 58bc8dff332e0d4d7609b6dbda62200355bbc75f
      https://github.com/llvm/llvm-project/commit/58bc8dff332e0d4d7609b6dbda62200355bbc75f
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  [mlir][x86] AMX memref source check (#206785)

Adds extra checks to AMX lowering to ensure data is read from memrefs as
tensors are not supported by x86 dialect ops.


  Commit: 9de8a97a9e3551a97e342823a9b30960e4186212
      https://github.com/llvm/llvm-project/commit/9de8a97a9e3551a97e342823a9b30960e4186212
  Author: Valery Dmitriev <valeryd at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir
    M llvm/test/CodeGen/PowerPC/mcp-elim-eviction-chain.mir

  Log Message:
  -----------
  [MCP] Fix bug in spill copy elimination folding chain across a call. (#206858)

findLastSeenDefInCopy interface does not check for possible register
clobbering between the def and current instruction. That may lead to not
having a caller preserved register being preserved across a call.
Replaced with findAvailCopy that also does checks for a regmask operand
between the def and current instruction.


  Commit: f9f11eb515a81d0afe0c81c242aa93c40cff66f4
      https://github.com/llvm/llvm-project/commit/f9f11eb515a81d0afe0c81c242aa93c40cff66f4
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-cmpne.ll

  Log Message:
  -----------
  [AArch64][InstCombine] xor(cmpne) -> cmpeq (#207007)

Fold xor(cmpne(pg, v, 0), pg) into cmpeq(pv, v, 0)

Created after initially trying as a DAGCombine in #206931.


  Commit: 57b1519e491498996ecb8599f6bbbf511a3146e8
      https://github.com/llvm/llvm-project/commit/57b1519e491498996ecb8599f6bbbf511a3146e8
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.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/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV][NFC] Remove unnecessary ZIP/VISNI checks (#207683)

We should remove them when removing `XRivosVizip` and `XRivosVisni`
but it seems UTC failed to do that.


  Commit: 335a584e9d95db0c12b3f99d7c5ae19be2712128
      https://github.com/llvm/llvm-project/commit/335a584e9d95db0c12b3f99d7c5ae19be2712128
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_DAPConnection.py
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_EventHistory.py
    A lldb/test/API/tools/lldb-dap/utils/sample_dap_log.json

  Log Message:
  -----------
  [lldb-dap] Add tests for DAPConnection and EventHistory (#207037)

Add tests for DAPConnection and EventHistory


  Commit: 18c0f3a20c46b79d5a1023372982bc73b39b6627
      https://github.com/llvm/llvm-project/commit/18c0f3a20c46b79d5a1023372982bc73b39b6627
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/future

  Log Message:
  -----------
  [libc++] Use _LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 in <future> (#207668)

`_LIBCPP_REMOVE_TRANSITIVE_INCLUDES` was used accidentally.


  Commit: c196103a5b61087792bf1e6970f19b7b1f3e7f09
      https://github.com/llvm/llvm-project/commit/c196103a5b61087792bf1e6970f19b7b1f3e7f09
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Utility/ConstString.h
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Utility/ConstString.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py

  Log Message:
  -----------
  [lldb] Reintroduce ConstString stats (#207694)

These stats were removed in ca59c69132eef55cc42bf8854706590dfddf5584 .
This patch restores the stats in their original form by tracking the
removed value in our own LLDB-specific counter.


  Commit: 3ce39bb78b9c1cc3ca65b8a62ae798fcf7fe44ee
      https://github.com/llvm/llvm-project/commit/3ce39bb78b9c1cc3ca65b8a62ae798fcf7fe44ee
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp

  Log Message:
  -----------
  [offload] Fix duplicate __llvm_write_custom_profile on Windows PGO builds (#207366)

MSVC/clang-cl lack __attribute__((weak)), so GlobalHandler.cpp provided
a strong stub for __llvm_write_custom_profile. When clang_rt.profile is
linked (e.g. instrumented/PGO builds) lld-link rejects the duplicate
strong symbol.

Replace the stub + CMake workaround with the /alternatename linker
pragma, which is the standard Windows weak-symbol equivalent used by
compiler-rt itself. The linker picks compiler-rt's strong definition
when present.

Fix the guard: use _WIN32 && !__MINGW32__ (not _MSC_VER) so the stub and
/alternatename pragma apply to plain clang-on-Windows too, while MinGW
(which supports __attribute__((weak)) natively) continues to use the
real weak declaration.

Also fix the stub signature from 8 to 10 parameters to match the header.

Assisted-by: Claude


  Commit: dc9edeb0453bd54b7461dae7feb5b35b784914fa
      https://github.com/llvm/llvm-project/commit/dc9edeb0453bd54b7461dae7feb5b35b784914fa
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/lib/Analysis/AssumeBundleQueries.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp

  Log Message:
  -----------
  [AssumeBundleQueries] Remove unused code (#203927)

Some of the utilities in AssumeBundleQueris was only ever used in tests
for them, so there isn't much point in keeping the code around.


  Commit: 07e98388aea4a6696598556500c0f3efac16497a
      https://github.com/llvm/llvm-project/commit/07e98388aea4a6696598556500c0f3efac16497a
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    A llvm/test/CodeGen/RISCV/rvp-reverse.ll

  Log Message:
  -----------
  [RISCV][P-ext] Support packed reverse intrinsics (#207574)

Following X86, this patch uses general shuffles for packed reverse
intrinsics.


  Commit: eac4725ef0b505176af3d9bcca00688f53d911f1
      https://github.com/llvm/llvm-project/commit/eac4725ef0b505176af3d9bcca00688f53d911f1
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/early_exit_with_stores_vplan.ll
    A llvm/test/Transforms/LoopVectorize/early_exit_combined_exits.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/countable-and-uncountable-exits-combined.ll

  Log Message:
  -----------
  [LV] Tests for combined exit conditions (#205104)

Some initial tests for loops where earlier scalar transforms have
combined a countable exit with an uncountable one.


  Commit: 292c99c02eba6b5d2a8a6799636550494cdf7a88
      https://github.com/llvm/llvm-project/commit/292c99c02eba6b5d2a8a6799636550494cdf7a88
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/lds-link-time-codegen-named-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll

  Log Message:
  -----------
  [AMDGPU] Improve SelectionDAG codegen around barrier intrinsics (#207688)

When lowering some intrinsics use generic AND/OR nodes instead of
specific machine instructions. This allows DAG combines and ISel to
select better instructions like S_BFE_U32.


  Commit: 5f4940efe9c121fb84ada13be9001f24cbef4a4c
      https://github.com/llvm/llvm-project/commit/5f4940efe9c121fb84ada13be9001f24cbef4a4c
  Author: unexpectedlydefined <91391114+unexpectedlydefined at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  [llvm-dwarfdump][LineCov 3/3] Add IR analysis for variable coverage (#195342)

Patch 3 of 3 to add to llvm-dwarfdump the ability to measure DWARF
coverage of local variables in terms of source lines, as discussed in
this RFC:
https://discourse.llvm.org/t/rfc-debug-info-coverage-tool-v2/83266

This patch adds an IR-level analysis in order to more accurately compute
the defined ranges for each variable. This avoids the problem of the
more naïve approach relying on source scopes, which overcounts as
coverable those lines where the variable is not yet defined (e.g. stack
variables).

The IR analysis requires IR to be provided to llvm-dwarfdump as a
separate `--variable-coverage-bitcode-file` argument (either textual IR
or bitcode; can be produced by various means e.g. `--save-temps
--emit-llvm`, `-ffat-lto-objects`,
[wllvm](https://github.com/travitch/whole-program-llvm)). The
recommended way to obtain a whole-program bitcode file is to use wllvm
as follows:
```sh
$ export LLVM_COMPILER=clang
$ CC=wllvm make  # build as usual, but replace clang/clang++ with wllvm/wllvm++
$ extract-bc binfile  # produces binfile.bc, which can be passed to llvm-dwarfdump
```


  Commit: 4226a8c4a2708b71ce7e7e35494f17345c44d1f7
      https://github.com/llvm/llvm-project/commit/4226a8c4a2708b71ce7e7e35494f17345c44d1f7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  Revert "[llvm-dwarfdump][LineCov 3/3] Add IR analysis for variable coverage" (#207703)

Reverts llvm/llvm-project#195342

Change resulted in build errors resulting from not finding the
parseIRFile symbol while linking, example:
https://lab.llvm.org/buildbot/#/builders/67/builds/7988


  Commit: 1dd849b006fe20560af01cfb0ccd64832e04f178
      https://github.com/llvm/llvm-project/commit/1dd849b006fe20560af01cfb0ccd64832e04f178
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - add DemandedElts + OrZero handling to ISD::ZERO_EXTEND cases (#207697)

Fixes #181648


  Commit: b9347e0f1bcfa92387fdb57954a081196c655601
      https://github.com/llvm/llvm-project/commit/b9347e0f1bcfa92387fdb57954a081196c655601
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll

  Log Message:
  -----------
  [RISCV] Fold vp.reverse of vp.load through binary ops (#205529)

InstCombine canonicalizes reverses, including vp.reverses, by pulling
them through binary ops: https://godbolt.org/z/cs4M1TsE3

We have a combine that converts vp.reverses of vp.loads into
vp.strided.loads with a stride of -1, but it only matches the pattern
`vp.reverse(vp.load)` directly.

This PR teaches the combine to look through binary ops for vp.loads so
it can match the canonicalized form when there's a binary op that uses
the vp.reverse.

All leaves must be either a vp.load or a splat, but it still will only
convert one vp.load at a time. This combine isn't always profitable so
we should eventually remove it when it's done somewhere that's cost
model driven like the loop vectorizer or vector combine.


  Commit: 3264e4eba83027a0f84eaca8e91569701d6611aa
      https://github.com/llvm/llvm-project/commit/3264e4eba83027a0f84eaca8e91569701d6611aa
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/test/CodeGen/SPIRV/instructions/scalar-integer-arithmetic.ll

  Log Message:
  -----------
  [SPIR-V] Fix invalid OpIMul emitted for i1 multiplication (#207388)

OpIMul requires integer scalar/vector operands

OpTypeBool is not considered an integer type and causes spirv-val
failure


  Commit: fb1de34e8db8d11c764c7ff422879f923554cbd9
      https://github.com/llvm/llvm-project/commit/fb1de34e8db8d11c764c7ff422879f923554cbd9
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
    M clang/test/SemaCXX/condition.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp
    M clang/test/SemaCXX/warn-tautological-compare.cpp

  Log Message:
  -----------
  [Clang][Sema] Warn on a function reference compared/converted to null (#204944)

Look through a reference-to-function in `DiagnoseAlwaysNonNullPointer`
so `-Wtautological-pointer-compare` and `-Wpointer-bool-conversion` fire
for it, as they already do for a bare function name.

Fixes #46362


  Commit: 1df080a267eeda318f6abb9791f098d870e622fd
      https://github.com/llvm/llvm-project/commit/1df080a267eeda318f6abb9791f098d870e622fd
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/x86-inst-tuning.mir

  Log Message:
  -----------
  [X86] Add test for VPBLENDW Tuning (#179906)

In PR https://github.com/llvm/llvm-project/pull/178883 we fixed tuning
for VPBLENDW with negative masked. Current test adds more cover for
masks for both unsigned and signed case.

We are adding explicit mir test to cover scenarios for tuning which are
hard to cover from IR and provides coverage to code under x86 tuning
pass.


  Commit: cb740ebaae9eec758d689388411f3b633be06569
      https://github.com/llvm/llvm-project/commit/cb740ebaae9eec758d689388411f3b633be06569
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MergeICmps.cpp
    A llvm/test/Transforms/MergeICmps/X86/dbgloc-branches.ll

  Log Message:
  -----------
  [MergeICmps][DebugInfo] Preserve debug locations in mergeComparisons (#205796)

The mergeComparisons function in MergeICmps merges a chain of comparison
blocks, generating new instructions inside of the merged block(s) to
memcmp the contiguous blocks of memory being compared and perform a
single branch based on the result. Some of the generated instructions
take their debug locations directly from the first block in the
comparison chain, but the icmp/memcmp and branch instructions generated
are not assigned any debug location.

This patch assigns a debug location to the comparison instructions from
the merged location of all merged comparison instructions, and similarly
assigns the branch instruction from the merged branch instructions.


  Commit: b0623c024c2d3a2c26be1778c224c1678f925976
      https://github.com/llvm/llvm-project/commit/b0623c024c2d3a2c26be1778c224c1678f925976
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp

  Log Message:
  -----------
  [SPIR-V] Replace isPipeOrAddressSpaceCastBI hardcoded list with table lookup (#207147)


  Commit: 5c243188cf637c91f09a66986a1c0d90b92c33bb
      https://github.com/llvm/llvm-project/commit/5c243188cf637c91f09a66986a1c0d90b92c33bb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/store-to-read-only-addrspace.ll

  Log Message:
  -----------
  [SPIR-V] Diagnose stores into read-only storage classes (#207331)


  Commit: e1ecc759dfc4e8dcbb249d4ec22946648cc9ee10
      https://github.com/llvm/llvm-project/commit/e1ecc759dfc4e8dcbb249d4ec22946648cc9ee10
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/SimplePackedSerialization.h
    M orc-rt/unittests/SimplePackedSerializationTest.cpp

  Log Message:
  -----------
  [orc-rt] Add SPSSequence serialization from iterator_range. (#207715)

Adds an SPSSerializationTraits specialization that serializes an
iterator_range<IteratorT> as an SPSSequence<SPSElementTagT>, matching
the wire format of the existing container and span sequence serializers.
The element type is deduced via std::iterator_traits, so both class-type
iterators and raw pointers are supported.

This lets callers serialize an arbitrary [begin, end) sub-range
directly, without first copying the elements into a temporary container.
Only serialization is provided: a bare iterator pair has no meaningful
deserialization target, so decode into a std::vector (or other sequence
type) as usual.

Please enter the commit message for your changes. Lines starting


  Commit: 592acb361000290a2a1502181b0b335a14d303fe
      https://github.com/llvm/llvm-project/commit/592acb361000290a2a1502181b0b335a14d303fe
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/docs/UsersManual.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [Clang] Add `std:c++26preview` for MSVC compat (#207693)

As discussed here
https://github.com/llvm/llvm-project/pull/203992#discussion_r3438454092


  Commit: 04a26a032ac770c981fc4aba0a30bf20517e71fc
      https://github.com/llvm/llvm-project/commit/04a26a032ac770c981fc4aba0a30bf20517e71fc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll

  Log Message:
  -----------
  [X86] Add ISD::VECREDUCE_MUL lowering instead of matching in DAG (#207593)

Add X86 support for ISD::VECREDUCE_MUL and remove it from
combineArithReduction - most of the change is refactoring the custom
promotion of vXi8 -> vXi16.

Another part of #194621


  Commit: ed2b1d7920365a59e2f6c01f732157f1144d0a00
      https://github.com/llvm/llvm-project/commit/ed2b1d7920365a59e2f6c01f732157f1144d0a00
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-attach-target.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add new block-scaled tensor type and support for MXFP CAST (#203583)

This commit adds a new compound-block scaled tensor type and uses this
type to implement support for MXFP in the CAST operation, as per the
following specification changes:
https://github.com/arm/tosa-specification/pull/50,
https://github.com/arm/tosa-specification/pull/53.

The new block-scaled type is closely modelled after the `quant` dialect
type and supports the following parameters:
- block shape - The size and axis of each block. Support for specifying
constant scale values has not been added in this commit, but will be
added in a later one.
- scale type - The type of the scale value associated with each block.
- value type - The type of the data values in each block.

Example syntax for the new block-scaled type:
```
tensor<160x!tosa.block_scaled<BLOCK_SHAPE_32:f8E8M0FNU:f8E5M2>>
```

As a pre-requisite for supporting MXFP CAST, the commit also adds new
extensions intended to split the existing EXT-MXFP extension into
separate extensions for each block-scaled type. This allows for more
fine-grained control over which block-scaled types are supported by a
given target. See specification change
https://github.com/arm/tosa-specification/pull/26 for details.

Finally, support for casting to/from the new block-scaled type has been
added, aligning with the behaviour specified in the CAST operation
specification.


  Commit: 25becf2006208b0d31e4af6cab3b642891f17604
      https://github.com/llvm/llvm-project/commit/25becf2006208b0d31e4af6cab3b642891f17604
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmStreamer.h
    M llvm/lib/MC/MCAsmStreamer.cpp

  Log Message:
  -----------
  [MC] Move addEncodingComment() into new base class MCAsmBaseStreamer (#188585)

This is in preparation to use this functionality in the
SystemZHLASMAsmStreamer. No functional change.


  Commit: 7f8dcfacbbcd77a8ddf512fa31589af1bf1f6ef4
      https://github.com/llvm/llvm-project/commit/7f8dcfacbbcd77a8ddf512fa31589af1bf1f6ef4
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll

  Log Message:
  -----------
  [LVI] Do not walk past cross-lane ops while determining value range (#207711)

While walking the one-use chain to find a constraining select
in `getValueAtUse`, do not look through cross-lane operations,
as they may move wrapping lanes into positions where the select
condition is true, and inferring nowrap flags would be unsound.

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


  Commit: 6840e6042cf5cb92eb3ebe06cf781d6458958b69
      https://github.com/llvm/llvm-project/commit/6840e6042cf5cb92eb3ebe06cf781d6458958b69
  Author: yaohuihan-iluvatar <yaohui.han at iluvatar.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/Sema/aux-target-builtin-constexpr.cpp

  Log Message:
  -----------
  [Clang][ExprConstant] Normalize aux target builtin IDs before dispatch (#201805)

When compiling for a device target that has an auxiliary host target
(for example OpenMP or CUDA offload), builtins of the auxiliary target
are registered with IDs shifted past the primary target's builtins. The
constant evaluator passed the raw ID straight into the target-specific
evaluation switches in the Pointer/Int/Vector/Float expression
evaluators, so a shifted auxiliary ID could fall through to an unrelated
builtin's case (or miss its case entirely) and fail to fold.

Add a getConstantEvaluatedBuiltinID() helper that translates auxiliary
builtin IDs back to their canonical target IDs via
BuiltinInfo::getAuxBuiltinID(), and use it before dispatching in each of
those evaluators.


  Commit: 9d59248664dd8356fe0614950b567a4a1e6429a9
      https://github.com/llvm/llvm-project/commit/9d59248664dd8356fe0614950b567a4a1e6429a9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll

  Log Message:
  -----------
  [AMDGPU] Do not copy the range attribute onto a widened kernarg load (#207655)

Sub-dword args (e.g. i8) are loaded as a full i32 and truncated. Copying
the i8 range onto the i32 load is invalid IR, and its bounds are wrong
since the upper bytes hold other args

Only copy the range when the load type matches the argument type


  Commit: bed625b42eeeb854c297508e46d822b96693c671
      https://github.com/llvm/llvm-project/commit/bed625b42eeeb854c297508e46d822b96693c671
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    A llvm/test/Transforms/InstCombine/insert-element-shuffle-vector-debugloc.ll

  Log Message:
  -----------
  [InstCombine] Propagate debuglocs when replacing insert->extract elts (#206026)

InstCombine may replace an extractelement->insertelement chain, where
the insert vector is wider than the extract vector, with a pair of
shufflevectors - one to widen the extract vector, and one to perform the
extract+insert simultaneously. Currently the second shufflevector
correctly adopts the insertelement's debug location, since it replaces
the chain of instructions that culminates with the insert. The first
shufflevector however takes its debug location from its insert position,
if the extract vector was a PHI or non-instruction, and otherwise
receives no location.

Since the first shufflevector is really adapting the extract vector for
use by one or more other instructions, we can consider it an extension
of the extractvector. If the extract vector is an instruction, its debug
location should be used (even if it is a PHI - this likely defaults to a
CompilerGenerated debug location); otherwise, the extract vector is a
constant, and so the shufflevector represents a constant materialization
- so should receive a CompilerGenerated location.


  Commit: 6eb0dac37aa409390bd96a91a99f216c35a0b8cb
      https://github.com/llvm/llvm-project/commit/6eb0dac37aa409390bd96a91a99f216c35a0b8cb
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    M flang/test/Fir/CUDA/cuda-device-global.f90

  Log Message:
  -----------
  [flang][cuda] Only strip internal linkage for device globals (#207521)

Stripping all linkage was too much. Only strip internal linkage so the
symbol is visible to CUDA API.


  Commit: c827c9011f81ef8b74143dd0ef40db5950aaec81
      https://github.com/llvm/llvm-project/commit/c827c9011f81ef8b74143dd0ef40db5950aaec81
  Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  Improving MinUI and MaxUI implementation in valuebounds (#207701)

Previously, the valuebounds implementation for MinUI and MaxUI was too
conservative.
We can already make correct assumptions even when we know only one
operand is provably not negative.


  Commit: a3624cb45f2a3902e59f78eafd005357d2b72688
      https://github.com/llvm/llvm-project/commit/a3624cb45f2a3902e59f78eafd005357d2b72688
  Author: Emery Conrad <conrade.ctc at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A clang/test/Interpreter/emulated-tls.cpp
    M llvm/lib/ExecutionEngine/Orc/Layer.cpp

  Log Message:
  -----------
  [ORC] Track __emutls_t definitions in IRMaterializationUnit (#207161)

When emulated TLS is enabled, `IRMaterializationUnit`'s constructor
emits an `__emutls_t.<var>` symbol for each non-zero-initialized
`thread_local` global and records it in `SymbolFlags`, but never adds it
to `SymbolToDefinition`.

If the same weak (`linkonce_odr`) definition is materialized by more
than one module — e.g. an `inline` function that odr-uses such a
`thread_local`, pulled into two `PartialTranslationUnit`s by clang-repl
— `JITDylib::defineImpl` discards the duplicate via
`IRMaterializationUnit::discard()`. `discard()` looks the symbol up in
`SymbolToDefinition` and, finding nothing, dereferences `end()`: an
assertion failure in `+Asserts` builds and heap corruption otherwise.

Register `__emutls_t.<var>` in `SymbolToDefinition` alongside its flags,
mirroring the `__emutls_v.<var>` handling just above.

### Test

`clang/test/Interpreter/emulated-tls.cpp` reproduces the crash through
clang-repl: two PTUs each odr-use one `inline worker()` that reads a
non-zero `thread_local`, so each re-emits the same weak emulated-TLS
set; defining the second module runs `discard()` over the duplicate. The
test aborts on the unfixed path and prints the expected value with the
fix.

🤖 Done with the help of [Claude Code](https://claude.com/claude-code)
(Claude Opus 4.8, human in the loop)

Co-authored-by: Emery Conrad <emery.conrad at chicagotrading.com>


  Commit: 7cb7f074b71e62d33b22ced07d860947fac08480
      https://github.com/llvm/llvm-project/commit/7cb7f074b71e62d33b22ced07d860947fac08480
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_mutex_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h

  Log Message:
  -----------
  [compiler-rt][sanitizer_common] Fix -Wunused-template in test helpers… (#207706)

`Ident` is a static function template in a test header, so any test TU
that never calls it trips `-Wunused-template`. Drop static.

`check_locked` in `sanitizer_mutex_test.cpp` has no callers.

Part of #202945.


  Commit: 3fbe826e3707540c9b7f942c573fbcb2d51b6bcc
      https://github.com/llvm/llvm-project/commit/3fbe826e3707540c9b7f942c573fbcb2d51b6bcc
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Prevent openmp-device attribute being added to the host (#207719)

This attribute is only intended for an OpenMP target device but a recent
patch started causing it to appear on the host. This causes the
OpenMPOpt pass to treat the LLVM IR module as an OpenMP offloading
target, potentially introducing invalid modifications.

Fixes #207423.


  Commit: 62708d1030229006b70bf1b5a46dbb56d2d058ec
      https://github.com/llvm/llvm-project/commit/62708d1030229006b70bf1b5a46dbb56d2d058ec
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/CostTable.h

  Log Message:
  -----------
  [CodeGen] Compact cost table entries (#202836)

ISD and CostType can both be shrunk to uint16_t, which reduces the
binary by 16KB.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: dcf969eaf2c25048542d13946ca5ff65be5bc7ab
      https://github.com/llvm/llvm-project/commit/dcf969eaf2c25048542d13946ca5ff65be5bc7ab
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Remove internal linkage from LargeBlock header helpers (NFC) (#207708)

`addHeaderTag` and `getHeader` are static function templates in
`secondary.h,` so any TU that includes the header without using them
trips `-Wunused-template`. Dropping static fixes the warning.

Part of #202945.


  Commit: 5f66b69933540b9602ba1e2106d1a4397c058a6e
      https://github.com/llvm/llvm-project/commit/5f66b69933540b9602ba1e2106d1a4397c058a6e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/SemaTemplate/member-specialization.cpp

  Log Message:
  -----------
  [clang] accept member specializations declared in class scope (#207256)

Explicit specializations are not restricted to namespace scope since
CWG727 was accepted as a DR.

Also fixes a crash upon error recovery in this case which was a recent
unreleased regression.

Fixes #206866


  Commit: 4c6e5788851421e9382452e147a9427cb77b23d9
      https://github.com/llvm/llvm-project/commit/4c6e5788851421e9382452e147a9427cb77b23d9
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/test/CodeGen/SystemZ/call-zos-02.ll
    M llvm/test/MC/SystemZ/insn-good-zos-pcrel.s

  Log Message:
  -----------
  [SystemZ][z/OS] Show instruction encoding in HLASM output (#181904)

This change adds the support to show instruction encoding as a comment
when emitting HLASM text. With this, the last 2 LIT tests migrate to
HLASM syntax.


  Commit: 5ddd08310373371d416f148727c707beeffc1b8a
      https://github.com/llvm/llvm-project/commit/5ddd08310373371d416f148727c707beeffc1b8a
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h

  Log Message:
  -----------
  [clang][AST] Outline constant-interpreter shift diagnostics (#202633)

CheckShift is instantiated for each primitive left-hand and right-hand
type
and for both shift directions. Its four diagnostic paths are cold, but
each
instantiation currently emits the diagnostic construction and undefined
behavior handling.

Move those paths to the non-template, noinline diagnoseShiftFailure
function.
Valid shifts retain the existing checks and do not call the outlined
function.
Invalid shifts preserve the same diagnostic arguments and call
noteUndefinedBehavior exactly once.

On arm64 macOS with a Release build of standalone Clang, this changes:

  linked binary:  222,173,192 -> 221,924,960 bytes (-248,232)
  stripped binary: 128,407,464 -> 128,291,224 bytes (-116,240)
  __TEXT,__text:   98,369,916 -> 98,255,864 bytes (-114,052)

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 6dd93e338442f070f55691e5374aac966287ee3c
      https://github.com/llvm/llvm-project/commit/6dd93e338442f070f55691e5374aac966287ee3c
  Author: Hocky Yudhiono <hocky.yudhiono at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix TosaNarrowTypes conversion order to prevent rollback crash (#207372)

Fix #206952 by doing `convertRegionTypes` before moving and unlinking
the blocks when handling `tosa.cond_if` ops. This will cause a crash
when doing rollback.


  Commit: f1b7f9758f4a1c9bb80c0becb1a39b3b651ef670
      https://github.com/llvm/llvm-project/commit/f1b7f9758f4a1c9bb80c0becb1a39b3b651ef670
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp

  Log Message:
  -----------
  [clang-tidy] Compact the confusable identifier table (#202626)

Encode confusable replacement strings once in a shared UTF-8 byte array.
Each sorted mapping becomes an eight-byte code point, 16-bit offset, and
16-bit length entry instead of reserving nineteen UTF-32 code points for
every replacement.

ConfusableIdentifierCheck appends the UTF-8 slice directly after the
binary search, removing the per-identifier UTF-32 to UTF-8 conversion.
Add compile-time assertions for the eight-byte entry layout and the 64
KiB replacement-data limit, plus generator-side overflow checks.

The logical table shrinks from 508,400 to 63,327 bytes, saving 445,073
bytes. A stripped standalone clang-tidy shrinks from 91,116,608 to
90,654,176 bytes, saving 462,432 bytes (0.508%).

A lookup microbenchmark improves from 79.9 to 40.4 ns median. A
100,000-identifier clang-tidy benchmark improves from 0.343 to 0.314
seconds mean.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 6dcadef39ffd3a25f4d4cd82cf35943e4c374304
      https://github.com/llvm/llvm-project/commit/6dcadef39ffd3a25f4d4cd82cf35943e4c374304
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    A llvm/test/Transforms/JumpTableToSwitch/callee-type-mismatch.ll

  Log Message:
  -----------
  [JumpTableToSwitch] Bail out on function type mismatch (#207700)

If the function types of the functions in the jump table don't match the
function type of the call, we currently get an assertion failure. We
could avoid that by using a different API, but the usefulness of the
transform in this case is questionable (e.g. we wouldn't be able to
inline the call). For simplicity just bail out.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: 0b94c13b63406281ce5cef76fcbdc3e82fe5e494
      https://github.com/llvm/llvm-project/commit/0b94c13b63406281ce5cef76fcbdc3e82fe5e494
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    A clang/test/Lexer/char-escapes-delimited-invalid-utf8.c
    M clang/test/Lexer/char-escapes-delimited.c
    M clang/test/SemaCXX/static-assert-cxx26.cpp
    M clang/test/SemaCXX/static-assert.cpp
    M clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M llvm/include/llvm/Support/ConvertUTF.h
    M llvm/lib/Support/ConvertUTF.cpp

  Log Message:
  -----------
  [Clang] Reduce the number of ways we have to print a codepoint. (#206990)

In #206326, we introduced yet another way to format a codepoint, so we
try to claw back some consistency.

- When we display a single character we do so inside quotes
- Non-decodable code units are displayed as <0xYY>
- In strings
    - we render printable and format characters
    - we print <U+XXXX> for non printable, non-format characters

- In characters
    - we only render non-format print characters
    - we always print the codepoint as U+XXXX for non-ascii characters

This does not change `WriteCharValueForDiagnostic` which is deeply weird
and was contentious a while back.

So we still have 2 different formatting utilities. Which is better than
4!

I've also added a test for invalid utf-8 in \N{}


  Commit: 4109893350feeea69214d938864e200ca5eec7b5
      https://github.com/llvm/llvm-project/commit/4109893350feeea69214d938864e200ca5eec7b5
  Author: Qixi <tjx2361869673 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    A mlir/test/Conversion/ArithToAMDGPU/scaling-truncf-tensor.mlir

  Log Message:
  -----------
  [mlir][ArithToAMDGPU] Skip tensor scaling ops (#207327)

This fixes a crash in -convert-arith-to-amdgpu=chipset=gfx950 when the
input contains tensor arith.scaling_truncf operations.

The scaling rewrite patterns are written for scalar/vector values.
Tensor values should not be rewritten by these patterns, so this patch
returns failure for tensor operands and leaves those ops unchanged.

A regression test is added for the tensor reproducer from #207311.

Co-authored-by: tongjinxuan <tongjinxuan at longcheer.com>


  Commit: acfbfca988887d830a22fc9dd684ced437928cdb
      https://github.com/llvm/llvm-project/commit/acfbfca988887d830a22fc9dd684ced437928cdb
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    A flang/test/HLFIR/inline-elemental-multi-users.fir

  Log Message:
  -----------
  [flang][HLFIR] Relax InlineElementals to support more than two users (#186916)

This pr optimizes the lowering of MINLOC and MAXLOC when the MASK
argument is a simple equality comparison (e.g., MASK = A == X).

This patch introduces isEqualityMask to identify these patterns and
inline the comparison directly into the reduction loop.

This allows the SimplifyHLFIRIntrinsicscation pass to extract the
invariant
search target and bypasses the creation of a temporary logical mask
array
by inlining the equality comparison directly into the reduction loop.
optimization removes the 'hlfir.apply' to the mask's hlfir.elemental,
which
gets eliminated in bufferize-hlfir pass.
Simplifies the reduction state by removing the min/max value tracker,
as the target value is already known.
Implements a 'first-hit' locking mechanism.

---------

Co-authored-by: anoop.kumar6 at ibm.com <anoopk at b35lp63.lnxne.boe>


  Commit: c58675e91042e7052870675aeaf2aca963e11376
      https://github.com/llvm/llvm-project/commit/c58675e91042e7052870675aeaf2aca963e11376
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/src/atomic.cpp

  Log Message:
  -----------
  [libc++] Make atomic contention tables constinit (#207456)


  Commit: 750f3bf803251abacfd440dbd883ce660597a986
      https://github.com/llvm/llvm-project/commit/750f3bf803251abacfd440dbd883ce660597a986
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/lib/Target/Hexagon/HexagonPostRAHandleQFP.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-multi-conv.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-conv-double2.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-fakereg.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg2.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg3.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-warnings.ll

  Log Message:
  -----------
  [Hexagon] Add XQFloat post-RA compliance checker (#207082)

Introduce XqfPostRADiagnosis to verify qf use-def correctness after
register allocation. Acts as a diagnostic/debugger for XQFloat
implementation. Off by default, enabled with -enable-postra-xqf-check.

Co-authored-by: Santanu Das <quic_santdas at quicinc.com>


  Commit: 2c7d18c6ad5fdc4743673b6a5dd23d521ec9e810
      https://github.com/llvm/llvm-project/commit/2c7d18c6ad5fdc4743673b6a5dd23d521ec9e810
  Author: 311Volt <41923095+311Volt at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/program/olCreateProgram.cpp

  Log Message:
  -----------
  [offload] add unit tests for olCreateProgram (#206462)

Add tests for olCreateProgram param validation & fail on invalid program


  Commit: 1ac400e69f26946bf3c84a253e61d1d0ede0d680
      https://github.com/llvm/llvm-project/commit/1ac400e69f26946bf3c84a253e61d1d0ede0d680
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  [clang][Frontend] Batch LangOptions context hashing (#203162)

`CompilerInvocation::computeContextHash` currently expands 269
non-benign `LangOptions` into individual `HashBuilder::add` calls. This
collects the values in an `unsigned` array and passes the array to
`HashBuilder::addRangeElements`, which preserves the ordered
native-endian bytes without adding an element count.

In a Release arm64 build, clangd decreases by 16,528 bytes unstripped
and 16,544 bytes stripped.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 8b50847a31f927d258cf22953035db206d42fc5d
      https://github.com/llvm/llvm-project/commit/8b50847a31f927d258cf22953035db206d42fc5d
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/AST/StmtVisitor.h

  Log Message:
  -----------
  [clang][AST] Inline StmtVisitor fallback methods (#203125)

Mark the trivial `StmtVisitorBase` fallback methods `always_inline` so
each `VisitFoo`-to-`VisitParent` delegation is folded into its caller
instead of retained as an out-of-line template thunk.

In matched Release assertions-off Darwin arm64 builds, stripped clang
decreased by 266,656 bytes, stripped clangd decreased by 232,912 bytes,
and the stripped upstream `llvm-driver` multicall decreased by 266,336
bytes.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.

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


  Commit: 26380406c852574f79f3df58bc6ed2664c186ac9
      https://github.com/llvm/llvm-project/commit/26380406c852574f79f3df58bc6ed2664c186ac9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll

  Log Message:
  -----------
  [AMDGPU] Copy the nofpclass attribute onto a matching kernarg load (#207734)

Follow up for https://github.com/llvm/llvm-project/pull/207655


  Commit: 343197e8da2856fd357f64b4e3639f7c18e4935a
      https://github.com/llvm/llvm-project/commit/343197e8da2856fd357f64b4e3639f7c18e4935a
  Author: darkbuck <michael.hliao at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/inline-asm.c
    M clang/test/CIR/Lowering/module-asm.cir

  Log Message:
  -----------
  [CIR] Fix lit tests after explicit target feature for module asm (#207741)

- Fix lit tests after the module-level inline assembly is enhanced to
support specifying target features explicitly in
fcfc9167b628a2fae8fe1d662989ff7752d905ad.


  Commit: 6575e395e3f37f4bea17092f612b37649d319041
      https://github.com/llvm/llvm-project/commit/6575e395e3f37f4bea17092f612b37649d319041
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h

  Log Message:
  -----------
  [ELF] Reuse SHT_GROUP selection verdicts in initializeSections. NFC (#207437)

For each SHT_GROUP section, the parallel initializeSections re-derives
what the serial parse() already decided
(https://reviews.llvm.org/D130810).

Record the kept group section indices during parse() so that we can save
the work (xxh3 string hash and DenseMap lookup) in the parallel
initializeSections().

In a clang-relassert --threads=8 benchmark, "Initialize sections"
decreases from 39.0 to 30.6.


  Commit: 39505025e42479ebfde4600df00a80f2fe3625f7
      https://github.com/llvm/llvm-project/commit/39505025e42479ebfde4600df00a80f2fe3625f7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ClangLinkerWrapper.rst
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [ClangLinkerWrapper] Use discrete steps in verbose mode (#204186)

Summary:
One persistent problem with the linker wrapper flow is that it was more
difficult to reuse as a script than the previous flow. This is because
it did a lot of work internally. In the past we moved al ot of this into
dedicated LLVM tools, so now it's possible to simply use these tools
instead.

This PR changes the verbose mode handling to defer steps to tools rather
than doing it internally. This allows users to use verbose printing and
can copy/paste the results to re-run the steps.


  Commit: b8c1776668c217a3ddfa18a7668a75245d08b528
      https://github.com/llvm/llvm-project/commit/b8c1776668c217a3ddfa18a7668a75245d08b528
  Author: Mohsen Rahmati <mohsenrahmati at icloud.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avx512bwintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx2-builtins.c
    M clang/test/CodeGen/X86/avx512bw-builtins.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/builtins-x86.c

  Log Message:
  -----------
  [Clang] Add constant evaluation support for x86 psadbw (#169253)

This patch adds constant evaluation support for the  x86 PSADBW and PSADBW128 intrinsics in Clang’s constexpr interpreter.


  Commit: 3ed7f90ec978ce4670779adf30fac17e87cba4fb
      https://github.com/llvm/llvm-project/commit/3ed7f90ec978ce4670779adf30fac17e87cba4fb
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/elements_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.elements/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Applied [[nodiscard]] to `elements_view` (#206589)

[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.elements

Towards https://github.com/llvm/llvm-project/issues/172124

---------

Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: 0cb5782f7ae0e859d3a649327227a3119e69cc25
      https://github.com/llvm/llvm-project/commit/0cb5782f7ae0e859d3a649327227a3119e69cc25
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst

  Log Message:
  -----------
  [docs][AMDGPU] Correct spelling of DW_AT_LLVM_memory_space (#207745)


  Commit: d930a16182aee3a541173c58bd2061c5265ffd44
      https://github.com/llvm/llvm-project/commit/d930a16182aee3a541173c58bd2061c5265ffd44
  Author: 311Volt <41923095+311Volt at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/program/olCreateProgram.cpp

  Log Message:
  -----------
  [Offload] run clang-format on olCreateProgram unit tests (#207757)

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


  Commit: 3b57d53a792cd9e9ba848cfe6fef151a0cb6f5d9
      https://github.com/llvm/llvm-project/commit/3b57d53a792cd9e9ba848cfe6fef151a0cb6f5d9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/GenericLoopInfoImpl.h
    M llvm/unittests/IR/DominatorTreeTest.cpp

  Log Message:
  -----------
  [LoopInfo] Reuse DomTree's own DFS numbering in analyze() (#207650)

analyze() discovers loop headers with a post_order(DomRoot) walk, then
tests each back-edge candidate with DomTree.dominates(). Initial queries
use `dominatedBySlowTreeWalk` and then switch to `updateDFSNumbers`
(Euler tour technique), requiring two tree walks in total.

Optimize this with an upfront updateDFSNumbers to avoid the post-order
walk. Both post-order and reverse pre-order satisfy the
child-before-parent (bottom-up) property. This does change the order in
which siblings are visited (reverse preorder visits the last child
first; post-order visits it last), but that has no observable effect:
the sub-loop and block vectors are only populated by the separate
PopulateLoopsDFS traversal afterward, not by discovery order.

`post_order` (and `depth_first`) are also inefficient for tree
traversals:
DomTreeNodeBase doesn't expose graph numbers, so they fall back to
tracking visited nodes in a SmallPtrSet. For a tree this bookkeeping is
unnecessary, since by definition every node has exactly one parent and
can never be reached twice.

DFS numbers, of [0, 2*N), have many nullptr gaps. Simplify
updateDFSNumbers() so DFSNumOut no longer consumes its own counter tick:
DFSNumIn becomes a dense [0, N) preorder rank.


  Commit: b30e3c23a537ca99937181d03bb53a8fe1d54c36
      https://github.com/llvm/llvm-project/commit/b30e3c23a537ca99937181d03bb53a8fe1d54c36
  Author: Ron Green [NVIDIA] <rogreen at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.td
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Fir/CUDA/cuda-device-func-transform.mlir
    M flang/test/Lower/CUDA/cuda-proc-attribute.cuf
    M flang/test/Semantics/CUDA/cuf08.cuf
    A flang/test/Semantics/CUDA/cuf31.cuf

  Log Message:
  -----------
  [flang][cuda] Make the second LAUNCH_BOUNDS() operand optional (#207273)

The minimum-blocks-per-multiprocessor (second) and maximum-blocks-per-cluster
(third) operands of the CUDA Fortran `LAUNCH_BOUNDS()` prefix are optional, as in
CUDA C++ `__launch_bounds__`. A single-operand `LAUNCH_BOUNDS(N)` is now accepted;
1, 2, or 3 integer constants are valid.

Previously `LAUNCH_BOUNDS(N)` with a single operand was rejected, and the
diagnostic path dereferenced an empty `std::optional` (`currStmtSource()`). That
handler runs during the direct statement walk in `ResolveSpecificationParts`,
where the statement source is not set, so the dereference aborted the compiler.
The diagnostic source is now derived from the prefix, and the same fix is applied
to every diagnostic in the `LAUNCH_BOUNDS()` and `CLUSTER_DIMS()` handlers.

When only the maximum-threads-per-block operand is present, the 
`cuf.launch_bounds` attribute omits `minBPM` (now an optional parameter) and no
`nvvm.minctasm` attribute is generated.

Assisted-by: AI


  Commit: 6645153025367af4f3bd4020dc81700a4cbe9132
      https://github.com/llvm/llvm-project/commit/6645153025367af4f3bd4020dc81700a4cbe9132
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/ClangScanDeps/diagnostics.c
    M clang/test/ClangScanDeps/header-search-pruning-transitive.c
    M clang/test/ClangScanDeps/modules-context-hash-from-named-module.cpp
    M clang/test/ClangScanDeps/modules-context-hash-ignore-macros.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/ClangScanDeps/modules-context-hash-warnings.c
    M clang/test/ClangScanDeps/modules-context-hash.c
    M clang/test/ClangScanDeps/modules-dep-args.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-extern-unrelated.m
    M clang/test/ClangScanDeps/modules-fmodule-name-no-module-built.m
    M clang/test/ClangScanDeps/modules-full-named-modules.cppm
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-full.cpp
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-implementation-vfs.m
    M clang/test/ClangScanDeps/modules-implicit-dot-private.m
    M clang/test/ClangScanDeps/modules-incomplete-umbrella.c
    M clang/test/ClangScanDeps/modules-inferred.m
    M clang/test/ClangScanDeps/modules-no-undeclared-includes.c
    M clang/test/ClangScanDeps/modules-pch-common-stale.c
    M clang/test/ClangScanDeps/modules-pch-common-submodule.c
    M clang/test/ClangScanDeps/modules-pch-common-via-submodule.c
    M clang/test/ClangScanDeps/modules-pch.c
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    M clang/test/ClangScanDeps/multiple-commands.c
    M clang/test/ClangScanDeps/tu-buffer.c

  Log Message:
  -----------
  [clang-scan-deps] Migrate more tests through scan-deps-filter (#207283)

Migrate tests that would otherwise fail when the `-emit-visible-modules`
flag is removed.

* The tests now include a `scan-deps-filter` invocation that maintains
the same fields that are already checked, so there is no test coverage
lost.
* Also remove `command-line` fields that were not actually checked in
tests.

Assisted-by: Claude Opus 4.8


  Commit: ea165572a5e649b1ab8181322ff6d759ca8adceb
      https://github.com/llvm/llvm-project/commit/ea165572a5e649b1ab8181322ff6d759ca8adceb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  IR: Use switch in getFloatingPointType (#207750)


  Commit: 4ad89d11db9e4048328de408af5ae0503861fe4c
      https://github.com/llvm/llvm-project/commit/4ad89d11db9e4048328de408af5ae0503861fe4c
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Remove temporary gnu as output on z/OS (#181906)

On z/OS, there is only HLASM as system assembler available. Since all
LIT tests are migrated, the temporary option can now be removed.


  Commit: 60cccae52fda78a9cdc9323900e14952d71b2624
      https://github.com/llvm/llvm-project/commit/60cccae52fda78a9cdc9323900e14952d71b2624
  Author: Chris B <chris.bieneman at me.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp

  Log Message:
  -----------
  [NFC] Remove dead code to fix build (#207753)

LLVM changed the interfaces around inline assembly, and while we could
have updated this code, in practice DXIL doesn't allow inline assembly
so I removed it.


  Commit: d3d3fdd940d714af2ac060b9f3da3ed32bdbaa05
      https://github.com/llvm/llvm-project/commit/d3d3fdd940d714af2ac060b9f3da3ed32bdbaa05
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  Disable test not supported on MSVC (#207752)

Fixes an Incorrectly applied merge conflict resolution after landing
#206990


  Commit: f0bbde8630ed94d749b95624799659d6ccbb9418
      https://github.com/llvm/llvm-project/commit/f0bbde8630ed94d749b95624799659d6ccbb9418
  Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/i128-imm-compare-ccmp.ll
    M llvm/test/CodeGen/AArch64/isinf.ll
    M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll

  Log Message:
  -----------
  [AArch64] optimize lowering for icmp on i128 when RHS is an immediate (#181822)

Optimize cases including eq, ne, ult, ule, ugt, and uge. 

Closes #161273.


  Commit: 1aa74f6d98b357189d735c800510424035edb9d5
      https://github.com/llvm/llvm-project/commit/1aa74f6d98b357189d735c800510424035edb9d5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/Dominators.h
    M clang/include/clang/Analysis/CFG.h
    M llvm/include/llvm/Support/CFGDiff.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Analysis] Modernize CFGBlock GraphTraits; drop generic dominator tree special case (#207552)

Make clang analyzer's CFG behave like other graphs in the generic
dominator tree builder by teaching the CFGBlock GraphTraits two things.

* Node numbers: getNumber/getMaxNumber/getNumberEpoch backed by the
  dense, never-renumbered BlockIDs. GraphHasNodeNumbers<CFGBlock *>
  becomes true (#101706) so Semi-NCA indexes a SmallVector instead of a
  DenseMap and DominatorTreeBase drops its CFGBlock-to-index map.
* Plain `CFGBlock *` children: map through the reachable target and skip
`AB_Unreachable` (null) edges. This drops the
is_same_v/make_filter_range
fallback in getChildren() and the CFGBlock ChildrenGetterTy
specialization.

(Post)dominator and IDF results are unchanged.

Aided by Claude Opus 4.8


  Commit: 8e8e4e50f501bac04b9a00dd7305cf35549b5afc
      https://github.com/llvm/llvm-project/commit/8e8e4e50f501bac04b9a00dd7305cf35549b5afc
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP][NFC] Move variant-matching context to semantics (#207087)

Move FlangOMPContext from lowering into semantics as the
MLIR-independent OmpVariantMatchContext. This lets an upcoming semantic
check reuse the matcher to skip the loop-nest checks for a metadirective
variant that cannot be selected on the current target, such as a
`device={kind(nohost)}` variant in a host compilation. No functional
change to metadirective lowering.

Assisted with copilot.


  Commit: 902273247db1f8b62613f38fa1a6f93700de517b
      https://github.com/llvm/llvm-project/commit/902273247db1f8b62613f38fa1a6f93700de517b
  Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [clang][tablegen] Allow qualifiers on _Vector builtin types (#207091)

The builtin prototype parser accepts pointers to _Vector<> template
types but not const/volatile/restrict pointers. Currently, _Vector<>
types are parsed in a special way: first parsing the type itself,
consuming it, and saving the resulting type string. Then, the remaining
qualifiers are parsed while the type is removed from the input. For this
to work, parsing qualifiers must accept empty base type, which was the
case only for plain pointers and references.
This change extends this approach to const/volatile/restrict qualifiers.

Signed-off-by: Alexey Karyakin <akaryaki at qti.qualcomm.com>


  Commit: a913e893c3f3e820f413ccd3877f19eb4ab028f6
      https://github.com/llvm/llvm-project/commit/a913e893c3f3e820f413ccd3877f19eb4ab028f6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
    M llvm/test/Transforms/SLPVectorizer/X86/copyable-operands-reordering.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-node-with-in-order-parent.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-before-main.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.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/vect_copyable_in_binops.ll

  Log Message:
  -----------
  [SLP]Support Mul as the main copyable instruction

Added support for the missed Mul as a main copyable instruction opcode

Reviewers: RKSimon, hiraditya, bababuck

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


  Commit: b0d35497b666b3e0c0c4244c1f8c19f2cfdc1fb2
      https://github.com/llvm/llvm-project/commit/b0d35497b666b3e0c0c4244c1f8c19f2cfdc1fb2
  Author: Quentin Colombet <quentin.colombet at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MILexer.cpp
    M llvm/lib/CodeGen/MIRParser/MILexer.h
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/test/CodeGen/AArch64/nested-iv-regalloc.mir
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/dead_bundle.mir
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/greedy-global-heuristic.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-agpr-negative-tests.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av.mir
    M llvm/test/CodeGen/AMDGPU/inflated-reg-class-snippet-copy-use-after-free.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/ra-inserted-scalar-instructions.mir
    M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-fail-unsatisfiable-overlapping-tuple-hints.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-undef-copy-fold.mir
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-bundle.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-do-not-undo-subclass-split-with-remat.mir
    M llvm/test/CodeGen/AMDGPU/splitkit.mir
    M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
    A llvm/test/CodeGen/MIR/AMDGPU/lr-split-flag.mir
    M llvm/test/CodeGen/RISCV/pr176001.ll
    M llvm/test/CodeGen/X86/AMX/amx-greedy-ra-spill-shape.ll
    M llvm/test/CodeGen/X86/apx/foldmemory.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-movements.mir
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-stackptr.mir
    M llvm/utils/UpdateTestChecks/mir.py

  Log Message:
  -----------
  [MIR] Serialize/Deserialize MachineInstr::LRSplit flag (#197362)

The LRSplit MachineInstr flag is set by SplitKit on copies inserted for
live-range splitting.
Until now the flag had no MIR-text representation.

This patch fixes that so that it gets easier to reproduce/capture issues
that involves SplitKit.

Round-trip coverage in
llvm/test/CodeGen/MIR/AMDGPU/lr-split-flag.mir.


  Commit: c35cba42e67284a1b6b8609f20782f6d8c692a6c
      https://github.com/llvm/llvm-project/commit/c35cba42e67284a1b6b8609f20782f6d8c692a6c
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxIR] Fix pass pipeline parsing after aux arguments (#207237)

## Summary
- Fix `sandboxir::PassManager::setPassPipeline` to resume scanning pass
names after a pass aux argument when the next token is a delimiter.
- Add a unit test covering flat pipelines like `foo(aux1),bar`.

This fixes parsing of region pass pipelines such as
`bottom-up-vec(top-down),tr-accept` that will be used by the
SandboxVectorizer.

## Test plan
- [x] `ninja SandboxIRTests`
- [x] `./unittests/SandboxIR/SandboxIRTests
--gtest_filter=PassTest.SetPassPipeline`


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

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 20e12152f9b218c42791151f0bca93a5a1763b64
      https://github.com/llvm/llvm-project/commit/20e12152f9b218c42791151f0bca93a5a1763b64
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64CallingConvention.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/ARC/ARCISelLowering.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/CSKY/CSKYISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Lanai/LanaiISelLowering.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCCallingConv.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/X86/X86CallingConv.cpp
    M llvm/lib/Target/XCore/XCoreISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp

  Log Message:
  -----------
  [TableGen][CC][NFC] Emit idiomatic guards for CallingConv. (#207758)

Emit independent guards for the two existing sections rather than the
if-else done today. This is in preparation for adding other sections
that must be includable exclusive of the other sections.

This also eliminates the current asymmetry between the automatic
IfGuardEmitter for the "if" portion vs the manually emitted "else"
section.


  Commit: 78bc590bbc89aa868bcee35982dd3cf70cebea64
      https://github.com/llvm/llvm-project/commit/78bc590bbc89aa868bcee35982dd3cf70cebea64
  Author: Stefan Mada <smada at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp
    A llvm/test/CodeGen/NVPTX/intrinsic-immarg-print-mismatched-signature.ll

  Log Message:
  -----------
  [IR][NVVM] Fixed null pointer deference in AsmWriter pretty printer (#207223)

ASMWriter can deference a null pointer on intrinsics with pretty printed
args when those intrinsics are called with an invalid number of
arguments. This check avoids the null dereference and turns this into a
graceful failure.


  Commit: 9c823964dd43645162d361b16d2ddedc381f5d2d
      https://github.com/llvm/llvm-project/commit/9c823964dd43645162d361b16d2ddedc381f5d2d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp

  Log Message:
  -----------
  [NFC][LLVM][NVPTX] Initialize pass-ids to zero (#207547)

Initialize pass::ID values for various passes to canonical zero instead
of 1.


  Commit: 2e75acd861aa78755c7a57ab8eca63fde916497a
      https://github.com/llvm/llvm-project/commit/2e75acd861aa78755c7a57ab8eca63fde916497a
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/test/UnitTest/ErrnoSetterMatcher.h

  Log Message:
  -----------
  [libc][test] Remove internal linkage from ErrnoSetterMatcher helpers (NFC) (#207707)

`Succeeds`, `Fails`, and `returns` are static function templates in a
header, so any test TU that includes it without using all of them trips
`-Wunused-template`. Dropping static also matches the neighboring EQ/NE
helpers, which are already non-static.

Part of #202945.


  Commit: 42746081459775eb85879cc09361a316ac9e0ea2
      https://github.com/llvm/llvm-project/commit/42746081459775eb85879cc09361a316ac9e0ea2
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll

  Log Message:
  -----------
  [AMDGPU] Fix printf %s buffer slot oversized when strlen % 4 == 0 (#207772)

The metadata slot for a constant string %s used alignTo(strlen + 1, 4),
but the store loop only writes ceil(strlen / 4) dwords (no trailing
NUL), so every following argument was read from offset shifted by +4


  Commit: 0f0b1c76a4d84594fef4de8ae5c49aa565d8bab0
      https://github.com/llvm/llvm-project/commit/0f0b1c76a4d84594fef4de8ae5c49aa565d8bab0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Run the libcxx-run-benchmarks action on macOS in addition to Linux (#207780)

The libcxx-run-benchmarks action is triggered when a specially formatted
comment is posted on a PR, requesting benchmarks to be run against that
PR. This patch expands the Github action so it also runs benchmarks on
the macOS CI resources that were added recently.


  Commit: 804a081a797c953b86503ead745dfde96f1c61c9
      https://github.com/llvm/llvm-project/commit/804a081a797c953b86503ead745dfde96f1c61c9
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir

  Log Message:
  -----------
  [GlobalISel][AArch64] Legalize PHIs with vectors smaller than 64-bits (#207356)

New legalization rule added as the last to not change legalization of
small vectors in existing tests.


  Commit: 82d27f67b6aad3bf72e9db610ab5b6984cb02b76
      https://github.com/llvm/llvm-project/commit/82d27f67b6aad3bf72e9db610ab5b6984cb02b76
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    R clang/test/Interpreter/emulated-tls.cpp
    M llvm/lib/ExecutionEngine/Orc/Layer.cpp

  Log Message:
  -----------
  Revert "[ORC] Track __emutls_t definitions in IRMaterializationUnit" (#207775)


  Commit: 96904e83cf69b0a02a5fb7dece9b258f562205e0
      https://github.com/llvm/llvm-project/commit/96904e83cf69b0a02a5fb7dece9b258f562205e0
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp

  Log Message:
  -----------
  [scudo] Make death tests use SCUDO_XXX_DEATH_TEST. (#206196)

On Android, we want to disable the tombstone generation on expected
crashes to speed up running the tests. Also, this means that any
tombstone files will be real crashes and it's not necessary to search
for the right tombstone if one of the tests crashes unexpectedly.

In order to do the above, add SCUDO_EXPECT_DEATH_TEST and
SCUDO_ASSERT_DEATH_TEST that will disable tombstoned on Android but do
nothing on all other platforms.


  Commit: 69ee64790ed69555264a200a3ae95d644a649e42
      https://github.com/llvm/llvm-project/commit/69ee64790ed69555264a200a3ae95d644a649e42
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll

  Log Message:
  -----------
  InstCombine: Add baseline test for implied frexp exponent ranges (#206926)


  Commit: d1eae28e79d33a4f85bf16a09cbb90aa9b6848e4
      https://github.com/llvm/llvm-project/commit/d1eae28e79d33a4f85bf16a09cbb90aa9b6848e4
  Author: Kamlesh Kumar <kamleshbhalui at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    A llvm/test/Transforms/InstSimplify/vector-interleave-deinterleave.ll

  Log Message:
  -----------
  [InstSimplify] fold the identity interleave (#206646)

If all the extracvalue of deinterleave used in interleave in same order
then it is an identity.


  Commit: 5e265484030eb034a14f4e4fec5abb0209605787
      https://github.com/llvm/llvm-project/commit/5e265484030eb034a14f4e4fec5abb0209605787
  Author: Aliaksei Urbanski <aliaksei.urbanski at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-bind.rst
    M clang/include/clang/Lex/MultipleIncludeOpt.h
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/CodeGen/README.txt
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_aarch64.S
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_riscv64.S
    M flang/docs/Semantics.md
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M libc/src/string/memory_utils/arm/inline_memcpy.h
    M libcxx/docs/DesignDocs/FeatureTestMacros.rst
    M llvm/docs/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack.md
    M llvm/docs/LangRef.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/test/CodeGen/AArch64/regcoal-physreg.mir
    M llvm/test/CodeGen/PowerPC/pgo-ref-directive.ll
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/include/mlir/Dialect/NVGPU/IR/NVGPUOps.td
    M polly/lib/External/isl/isl_union_map.c

  Log Message:
  -----------
  [NFC] Fix "is is" typos (#206288)

These changes aim to fix common "is is" typos.


  Commit: 03c62ca40d19ba03c7d2b69dbedc95e498d46071
      https://github.com/llvm/llvm-project/commit/03c62ca40d19ba03c7d2b69dbedc95e498d46071
  Author: Alex Strelnikov <strel at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/docs/dev/printf_behavior.rst
    M libc/src/__support/float_to_string.h
    M libc/src/stdio/printf_core/converter_utils.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdio/printf_core/float_hex_converter.h
    M libc/src/stdio/printf_core/float_inf_nan_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/printf_config.h
    M libc/src/stdio/printf_core/write_int_converter.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/PrintfMatcher.cpp
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] Add Q length modifier to support float128 conversions in printf (#203077)

The spelling follows an existing pattern in e.g. libquadmath for format
printing `__float128` values.

A flag is added to disable float128 conversions and the "Q" length
modifier.


  Commit: a4107d67f91946a97d0acd0a70e2ae16513858b9
      https://github.com/llvm/llvm-project/commit/a4107d67f91946a97d0acd0a70e2ae16513858b9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Don't install custom Python on self-hosted macOS runners (#207794)

That shouldn't be necessary, since they already come with Python 3, and
it doesn't work anyway because it requires special setup that the macOS
runners don't currently perform.


  Commit: 7b9a58e6cfa0dab49ef417f731ee7a8dc5e3aab5
      https://github.com/llvm/llvm-project/commit/7b9a58e6cfa0dab49ef417f731ee7a8dc5e3aab5
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/dirent_overlay.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/DIR.h
    A libc/hdr/types/struct_dirent.h
    M libc/src/__support/File/dir.cpp
    M libc/src/__support/File/dir.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/syscall_wrappers/fcntl.h
    M libc/src/dirent/CMakeLists.txt
    A libc/src/dirent/fdopendir.cpp
    A libc/src/dirent/fdopendir.h
    M libc/test/src/dirent/CMakeLists.txt
    A libc/test/src/dirent/fdopendir_test.cpp

  Log Message:
  -----------
  [libc] Implement fdopendir (#206590)

The fdopendir function takes a file descriptor opened on a directory,
then opens a DIR* on it.

Needed for #191075

Assisted-by: Automated tooling, human reviewed.


  Commit: 2590272e5674c300c9438ef5c10a65358b0636e9
      https://github.com/llvm/llvm-project/commit/2590272e5674c300c9438ef5c10a65358b0636e9
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/EmulateInstruction.h
    M lldb/include/lldb/Core/Value.h
    M lldb/include/lldb/Expression/Materializer.h
    M lldb/include/lldb/Host/common/NativeRegisterContext.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/include/lldb/Target/RegisterContext.h
    A lldb/include/lldb/Utility/RegisterInfo.h
    M lldb/include/lldb/Utility/RegisterValue.h
    M lldb/include/lldb/lldb-private-types.h
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h

  Log Message:
  -----------
  [lldb] Move RegisterInfo and RegisterSet into their own header (#207286)

RegisterInfo holds onto a pointer to RegisterFlags which is in
lldbUtility. My understanding of lldb-private-types is that it contains
types used throughout LLDB but should generally stand on their own (i.e.
without dependencies on specific lldb types and headers). Thus I am
moving it to lldbUtility.

RegisterSet _does_ stand on its own but it is pretty strongly coupled to
RegisterInfo.


  Commit: b74512899707cfcf962ebfa21f9209378372e78b
      https://github.com/llvm/llvm-project/commit/b74512899707cfcf962ebfa21f9209378372e78b
  Author: Andrei Elovikov <andrei.elovikov at sifive.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h

  Log Message:
  -----------
  [NFC][PatternMatch] Simplify m_Intrinsic impl using variadic templates (#207211)

Updates both IR/VPlan pattern matchers.


  Commit: 76d253e2736c7da493a836c9c150772056dafd73
      https://github.com/llvm/llvm-project/commit/76d253e2736c7da493a836c9c150772056dafd73
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [docs][AMDGPU] Document amdgpu.buffer.oob.mode more, especially on fat pointers (#134734)

This commit expands the documentation of the amdgpu.buffer.oob.mode so
that fat buffer pointer users are more aware of its effects.


  Commit: c8c20662e036099b00469bf26324b93151acb00c
      https://github.com/llvm/llvm-project/commit/c8c20662e036099b00469bf26324b93151acb00c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-ldexp.ll
    M llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-ldexp.ll

  Log Message:
  -----------
  ValueTracking: Improve frexp known range from dominating conditions (#206927)

Try to restrict the known range of the exponent result of llvm.frexp
based on dominating conditions. Identify comparisons that imply the
incoming value cannot introduce an overflow in a downstream ldexp
use. This pattern appears in the implementation of some complex math
functions and allows finite only math to prune out more edge case
paths.

One attributor test for ldexp regresses due to the switch from
computeKnownBits to computeConstantRange. computeConstantRange
does not try to handle non-splat vector constants for the binary
operators.

As a side effect, this also improves knowing that ldexp can't
introduce overflow for the 0 case.


  Commit: dbd7511ad28819587fc9effc0086abf437279a84
      https://github.com/llvm/llvm-project/commit/dbd7511ad28819587fc9effc0086abf437279a84
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/test/CodeGen/AMDGPU/memset-pattern.ll

  Log Message:
  -----------
  [LowerBufferFatPointers] Correctly handle alignment modes (#134329)

Previously, AMDGPULowerBufferFatPointers would emit unaligned buffer
loads/stores, even when such unaligned accesses were disabled (that is,
on non-HSA platforms).

In addition, the lowering did not respect the newly-added
amdgpu.buffer.oob.mode module flag, which now must be enabled in order
to vectorize unaligned loads from buffers.

This commit fixes both issues and adds tests.


  Commit: 000f6bf9cb7ec4223ef1de829158d09d4bfa2946
      https://github.com/llvm/llvm-project/commit/000f6bf9cb7ec4223ef1de829158d09d4bfa2946
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/test/Fir/CUDA/cuda-function-rewrite.mlir

  Log Message:
  -----------
  [flang][cuda] Recognize on_device() by its Fortran leaf name in CUFFunctionRewrite (#207298)

CUFFunctionRewrite folds on_device() to a compile-time constant: true
inside a gpu.module (device), false on the host. Match on the callee's
Fortran leaf name, recovered independently of the external name-mangling
convention and of where the pass runs in the pipeline.


  Commit: 3ae61eb220dc8f1fa0dd551a9575237b84dae61d
      https://github.com/llvm/llvm-project/commit/3ae61eb220dc8f1fa0dd551a9575237b84dae61d
  Author: Ken Matsui <26405363+ken-matsui at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/pr53357.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  [InstCombine] Turn Add into Or even when undef (#171556)

Since 03d4a9d94da30590ebfc444cf13a8763f47b7bb9, Add is turned into
DisjointOr, and since 5c3496ff33ce8e4cc6f8c18edd7ae5fc65d23fdf, Add
isn't turned into DisjointOr when undef. However, Add can still be
turned into Or even when undef.

This patch restores the transformation behavior we had in LLVM 17, while
continuing to generate DisjointOr when possible.

Alive2: https://alive2.llvm.org/ce/z/ZT0ZFj


  Commit: 5e5490f2df9c9c329689929b62d51ee0fb95fb30
      https://github.com/llvm/llvm-project/commit/5e5490f2df9c9c329689929b62d51ee0fb95fb30
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] combineToHorizontalAddSub - use PostShuffleMask to determine undemanded subvectors (#207789)

For cases where the middle-end has created a 256-bit HADD/SUB pattern
with unused upper 128-bit subvectors, use the PostShuffleMask undefined
ranges to remove any unused 128-bit HADD/SUB ops.


  Commit: 3df6ca69c9e2b22687315a3074857383eefa93b8
      https://github.com/llvm/llvm-project/commit/3df6ca69c9e2b22687315a3074857383eefa93b8
  Author: Quentin Colombet <quentin.colombet at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.ll
    A llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.mir

  Log Message:
  -----------
  [AMDGPU][test] Use mir test for regalloc issue (#197363)

Use the newly introduced split-from flag to produce a more robust test
case for the hoistSpillInsideBB live-range update issue.

NFC


  Commit: 2e0c6a254c4a159726f0477bbe3723eafe33382c
      https://github.com/llvm/llvm-project/commit/2e0c6a254c4a159726f0477bbe3723eafe33382c
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py

  Log Message:
  -----------
  [lldb] Fix TestFrameProviderCircularDependency.py on Arm (#207804)

After #206987 this test started passing on Windows and 32-bit Linux on
Arm. Remove the expected failure annotation to fix lldb-arm-ubuntu
buildbot.


  Commit: 396354a3f7f627aaa5cbfffa2033e1ea8bc00e69
      https://github.com/llvm/llvm-project/commit/396354a3f7f627aaa5cbfffa2033e1ea8bc00e69
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Install missing dependencies for running benchmarks on macOS (#207810)

The macOS self-hosted runners don't come with Ninja and CMake installed
out of the box, so we need to install them with Homebrew.


  Commit: d2b6f83980ed0428d8342b378f01317acf4510de
      https://github.com/llvm/llvm-project/commit/d2b6f83980ed0428d8342b378f01317acf4510de
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CIR/CodeGen/fp16-native-args.c
    A clang/test/CIR/CodeGen/fp16.c
    M clang/test/CodeGen/builtin_float.c
    M clang/test/CodeGen/builtin_float_strictfp.c
    M clang/test/CodeGen/wasm-fp16.c

  Log Message:
  -----------
  clang: Remove useFP16ConversionIntrinsics target option (#207212)

Follow up to #174494. Remove the remnants of the control to
use llvm.convert.to.fp16/llvm.convert.from.fp16. Prefer
directly using the IR half type.

I did the first 80% of this a long time ago, and AI finished
the last bit and handled the recent rebases and test updates.

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>


  Commit: 4868f2c1edfede611994a621e8eb0adac46bca1a
      https://github.com/llvm/llvm-project/commit/4868f2c1edfede611994a621e8eb0adac46bca1a
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb] Modify test binaries that link against LLDB to use LLVM dylib (#207290)

When LLVM_LINK_LLVM_DYLIB is enabled and we build LLDB.framework, tests
that link against LLDB.framework will fail to load the LLVM dylib
because of a missing rpath.


  Commit: 2d0f294d1b272b8976ebd2d90a5252af1af8ca89
      https://github.com/llvm/llvm-project/commit/2d0f294d1b272b8976ebd2d90a5252af1af8ca89
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.offset-split.ll
    M llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.ptr.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load-exported.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU] Precommit for pulling NUW large buffer offsets into SOFFSET (#207795)

This commit adds tests with larger constant offsets [being added to
VGPRs] in raw.buffer.* instructions to show the movement of such offsets
to SOFFSET after rounding in a future commit if this won't cause errors
because of overflow.

This also necessitated adding gfx1250 tests (to show the different
offset sizes) and moving tests that ctalled "export" into a new file so
that the gfx1250 (which doesn't support that instruction) doesn't trip
ot those tests.

This also adds a few global-isel specific tests for handling `or
disjoint` like an add we can't just stick -global-isel in the normal
buffer intrinsic tests.

AI usage disclosure: AI wrote these, I skimmed them.

---------

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


  Commit: 5dfc35a50514aaa62a34cb17f5be5c6396caf4fb
      https://github.com/llvm/llvm-project/commit/5dfc35a50514aaa62a34cb17f5be5c6396caf4fb
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/VectorizationPlan.rst
    M llvm/docs/conf.py
    M utils/docs/llvm_sphinx/__init__.py

  Log Message:
  -----------
  [docs] Disable sphinx's numfig option (#207817)

Benchmarking shows a speedup of about 1.6x for a single file edit:

```bash

source .venv/bin/activate

hyperfine \
    --ignore-failure \
    --warmup 1 \
    --setup 'rm -rf /dev/shm/sphinx-build && cm c -b /dev/shm/sphinx-build' \
    --prepare 'touch llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst' \
    'cm b -b /dev/shm/sphinx-build docs-llvm-html'

 # main:
 # Benchmark 1: cm b -b /dev/shm/sphinx-build docs-llvm-html
 #   Time (mean ± σ):     41.424 s ±  1.652 s    [User: 39.534 s, System: 1.876 s]
 #   Range (min … max):   40.696 s … 46.110 s    10 runs

 # no-numfig:
 # Benchmark 1: cm b -b /dev/shm/sphinx-build docs-llvm-html
 #   Time (mean ± σ):     25.808 s ±  2.051 s    [User: 24.106 s, System: 1.692 s]
 #   Range (min … max):   24.287 s … 30.132 s    10 runs
```

There are only two uses of the feature, both in VectorizationPlan, and
the net result of disabling it just changes them from looking like this:

Refer to [Fig. 1] for an overview of the current transformation
pipeline.

To looking like this:

Refer to [VPlan Transformation Pipeline in 2024] for an overview of the
    current transformation pipeline.

Where "[...]" denotes the hyperlink to the figure.

See

https://github.com/zephyrproject-rtos/zephyr/pull/37572#discussion_r1102411281
for another project's discussion of the same issue.


  Commit: 2ef9c9d02409b02dc2289b4125397cbc40030c74
      https://github.com/llvm/llvm-project/commit/2ef9c9d02409b02dc2289b4125397cbc40030c74
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  [bazel][libc] Port 03c62ca40d (#207820)


  Commit: 642c9f69772dea930c8c035813430d325c96697c
      https://github.com/llvm/llvm-project/commit/642c9f69772dea930c8c035813430d325c96697c
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M utils/docs/llvm_sphinx/__init__.py

  Log Message:
  -----------
  [docs][NFC] Some small cleanup in llvm_sphinx (#207818)

Format the doc-comment suggested import to match what `black` prefers,
and isolate the `import` as the only statement in the `try` for
`myst_parser`.


  Commit: ddebfb9d1cbdf2988d118eae889b868024290856
      https://github.com/llvm/llvm-project/commit/ddebfb9d1cbdf2988d118eae889b868024290856
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll

  Log Message:
  -----------
  [VPlan] Add intrinsic constant folding test for replicate recipes. (NFC) (#207792)


  Commit: f348d964af441ec454e5fc12ab1b599cfc1e7d14
      https://github.com/llvm/llvm-project/commit/f348d964af441ec454e5fc12ab1b599cfc1e7d14
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/test/Misc/warning-wall.c
    M clang/test/SemaCXX/warn-func-not-needed.cpp
    M clang/test/SemaCXX/warn-variable-not-needed.cpp

  Log Message:
  -----------
  [Clang] Enable -Wunused-template under -Wall (#206123)

Uncomment `UnusedTemplate` in the `Unused` diagnostic group so
`-Wunused-template` becomes part of `-Wall`.

`-Wunused-template` flags unused function and variable templates with
internal linkage. In a header, such a template gives every translation
unit its own internal-linkage copy, which is a latent ODR violation
(ill-formed, no diagnostic required), so enabling this surfaces a real
class of bugs and keeps the pattern from reappearing.

### Depends on

The in-tree occurrences were cleaned up first in a series of NFC PRs
tracked by #202945. This change only builds clean once those land, so CI
will be red on any area whose cleanup is not yet merged. Remaining
prerequisites:

Approved
- #202969
- #202971
- #202973
- #202974
- #206309
- #206312

Needs to be reviewed 
- #202988
- #206308

Closes #202945

cc @AaronBallman @vgvassilev


  Commit: 2e1f347c38114f5e2e4fc4355fad9cdc0e1bb205
      https://github.com/llvm/llvm-project/commit/2e1f347c38114f5e2e4fc4355fad9cdc0e1bb205
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/zip_transform_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.zip.transform/nodiscard.verify.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
  [libc++][ranges] Applied `[[nodiscard]]` to `views::zip_transform` (#207120)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.zip.transform

Towards #172124

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 5a74b398d27ecba94fa0acf800af86039bf6a0f5
      https://github.com/llvm/llvm-project/commit/5a74b398d27ecba94fa0acf800af86039bf6a0f5
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Section.h
    M lldb/source/API/SBModule.cpp
    M lldb/source/API/SBSection.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Section.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/unittests/Core/ModuleTest.cpp
    M lldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp

  Log Message:
  -----------
  [lldb] Remove ConstString from SectionList::FindSectionByName (#207296)

By having ConstString in this interface, we are forcing callers to
create a ConstString in order to perform a lookup. In many cases,
`FindSectionByName` is a best-effort interface, meaning we're creating
ConstStrings speculatively. In other cases, we were creating a
ConstString at the call-site instead of computing it once and re-using
it.

I audited all the callsites and changed all the callsites that created a
ConstString for the purpose of calling `FindSectionByName`. Other
callsites will take more time to change.


  Commit: 09f2062da3b34b7db167268b05c9a9a5bd3c7e17
      https://github.com/llvm/llvm-project/commit/09f2062da3b34b7db167268b05c9a9a5bd3c7e17
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  clang: Use getFloatingPointType instead of reinventing it (#207213)


  Commit: e64a71f09b016edb834eb45e5c172d1337555803
      https://github.com/llvm/llvm-project/commit/e64a71f09b016edb834eb45e5c172d1337555803
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll

  Log Message:
  -----------
  [VPlan] Refine hasEarlyExit check. (#207791)

Currently hasEarlyExit misses cases where we have things like dead exit
blocks or simplified the middle block.

Update to check by counting the predecessors.

This fixes a case where we missed properly updating LoopInfo due to
incorrect results.

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


  Commit: b69ec1023d6604106cb64f9a6a6b04e9c3e5d533
      https://github.com/llvm/llvm-project/commit/b69ec1023d6604106cb64f9a6a6b04e9c3e5d533
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll

  Log Message:
  -----------
  Revert "[VPlan] Refine hasEarlyExit check." (#207838)

Reverts llvm/llvm-project#207791

This appears to break multiple build-bots


  Commit: f147395634dd21f9f2dfbdcc8c1a2f96c3228a24
      https://github.com/llvm/llvm-project/commit/f147395634dd21f9f2dfbdcc8c1a2f96c3228a24
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ObjectYAML/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#207839)

1b2efd2e079a
9b2d44a51252


  Commit: 23a01e949a55d4034dbbcad08c875a1d458464b1
      https://github.com/llvm/llvm-project/commit/23a01e949a55d4034dbbcad08c875a1d458464b1
  Author: Eli Friedman <efriedma at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/test/CodeGen/AArch64/stack-guard-width.ll

  Log Message:
  -----------
  [AArch64] Support 4-byte stack protector with large code model. (#205956)

This is a simple extension to existing code. We might need this in the
future.


  Commit: 61d766817b9ebe9804c84d71aa7a620962436dff
      https://github.com/llvm/llvm-project/commit/61d766817b9ebe9804c84d71aa7a620962436dff
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A clang/test/CodeGen/attr-counted-by-nested-structs.c

  Log Message:
  -----------
  [Clang][counted_by] Use the expr's RecordDecl that transitively contains the counter field (#205903)

The counted field could be in nested structs. This can happen when the
Expr is pointing to a field that has a struct type. The original code
didn't do a good job at finding the best RecordDecl to build the GEP off
of. It made too many assumptions about how structs' layouts.

This rewrite finds the RecordDecl that transitively contains the
__counted_by__'s counter field.

Fixes: #205652


  Commit: c9c7fdde03d04ab10960db156f832a276411e3b5
      https://github.com/llvm/llvm-project/commit/c9c7fdde03d04ab10960db156f832a276411e3b5
  Author: yebinchon <86588366+yebinchon at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/test/HLFIR/separate-allocatable-assign.fir

  Log Message:
  -----------
  [flang] keep runtime allocator for pinned allocations (#207822)

If an allocatable is pinned, use the flang runtime instead of lowering
to normal memcpy/free.

---------

Co-authored-by: Yebin Chon <ychon at nvidia.com>


  Commit: 8014a1d208f0f9e58cfeaf022517cf3d69257bff
      https://github.com/llvm/llvm-project/commit/8014a1d208f0f9e58cfeaf022517cf3d69257bff
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/LEB128.h
    M llvm/unittests/Support/LEB128Test.cpp

  Log Message:
  -----------
  [Support] Fix undefined shift in decodeULEB128/decodeSLEB128 for overlong encodings (#205907)

When a (signed or unsigned) LEB128 value is encoded with extra trailing
bytes that only carry zero- or sign-extension, the decode loop could
keep
running with the shift amount at 64 or beyond and then evaluate
`Slice << Shift`, which is undefined behavior for a 64-bit type.

The DWARF expression parser feeds attacker-controlled LEB128 operands
(such as `DW_OP_bregN` / `DW_OP_constu`) through
`DataExtractor::getULEB128` / `getSLEB128`, so the
`lldb-dwarf-expression-fuzzer` reaches this under UBSan.  The unsigned
case:

```
LEB128.h:152:20: runtime error: shift exponent 70 is too large for
64-bit type 'uint64_t' (aka 'unsigned long long')
    #0 llvm::decodeULEB128(...) LEB128.h:152
    #1 getLEB128<unsigned long long>(...) DataExtractor.cpp:227
    #2 llvm::DataExtractor::getULEB128(...) DataExtractor.cpp:241
    #3 llvm::DWARFExpression::Operation::extract(...) DWARFExpression.cpp:218
    #7 lldb_private::DWARFExpression::Evaluate(...) DWARFExpression.cpp:1333
    #9 LLVMFuzzerTestOneInput lldb-dwarf-expression-fuzzer.cpp:83
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior LEB128.h:152:20
```

and the signed case, reached the same way:

```
LEB128.h:190:20: runtime error: shift exponent 70 is too large for
64-bit type 'uint64_t' (aka 'unsigned long long')
    #0 llvm::decodeSLEB128(...) LEB128.h:190
    #1 getLEB128<long long>(...) DataExtractor.cpp:227
    #2 llvm::DataExtractor::getSLEB128(...) DataExtractor.cpp:245
    #3 llvm::DWARFExpression::Operation::extract(...) DWARFExpression.cpp:216
    #7 lldb_private::DWARFExpression::Evaluate(...) DWARFExpression.cpp:1333
```

The existing range checks already guarantee that once `Shift` reaches 64
the remaining bytes are pure extension and contribute nothing to the
result, so skip the accumulating shift in that case.  Decoded values are
unchanged for all well-formed inputs.

Adds overlong-encoding regression cases to `LEB128Test`. Without the fix
the signed case is the UBSan diagnostic above in a sanitizer build, and
in a normal build the unsigned case also decodes to the wrong value (the
overlong `1` decodes as `11`).


  Commit: 3df648c5678f6add2a813cd5be3dffb4f074115e
      https://github.com/llvm/llvm-project/commit/3df648c5678f6add2a813cd5be3dffb4f074115e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/select-abs-positive-mul.ll

  Log Message:
  -----------
  [InstCombine] Add tests for select-abs through multiply (NFC) (#207833)

Add tests from approved https://github.com/llvm/llvm-project/pull/207539


  Commit: 1b6f1528bbb95d47bb2e3fc394b3a4943b1e9708
      https://github.com/llvm/llvm-project/commit/1b6f1528bbb95d47bb2e3fc394b3a4943b1e9708
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    A llvm/test/tools/llvm-dwarfdump/X86/array-type-lower-bound-dwarf6.s
    M llvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp

  Log Message:
  -----------
  [llvm][DebugInfo] Add DW_LNAME_ support to DWARFDie::getLanguage (#207151)

Currently `DWARFDie::getLanguage` only looks at `DW_AT_language`.
However, with DWARFv6 we may not have such attribute, and instead have a
`DW_AT_language_name` (and optional `DW_AT_language_version`).

This patch adjusts the implementation to also consider the DWARFv6
language name/version codes. In this patch I just convert it back to
`DW_LANG_` (similar to what we do for the `AsmPrinter`'s
`DwarfUnit::getSourceLanguage`). Added a FIXME to investigate whether we
want to return a variant-like type that can be either an DW_LANG vs.
DW_LNAME code.

The way I initially observed this was looking at a DWARFv6 dwarfdump for
a `const char[]` type. It displayed as follows:
```
DW_AT_type  (0x... "const char[[?, ? + 3)]")
```
which is our representation for when we [can't derive the default lower
bound for the
language](https://github.com/llvm/llvm-project/blob/ce787718c3c82255825ebe5f95740c24df55f7d0/llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h#L122-L135).

With this patch, we'd display it as expected:
```
DW_AT_type  (0x... "const char[3]")
```

Added unit-tests for the new API and a dwarfdump test.

AI usage:
- Claude wrote the dwarfdump and unit-tests. Manually reviewed and
cleaned them up.


  Commit: 95dd95030520aad82348341a9f65f3bb98794d01
      https://github.com/llvm/llvm-project/commit/95dd95030520aad82348341a9f65f3bb98794d01
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .github/workflows/libcxx-run-benchmarks.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/test-suite.yml
    M bolt/unittests/Profile/PerfScripts.cpp
    M clang-tools-extra/clang-doc/support/CMakeLists.txt
    A clang-tools-extra/clang-doc/support/Markdown.cpp
    A clang-tools-extra/clang-doc/support/Markdown.h
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/ModulesBuilder.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-bind.rst
    M clang-tools-extra/test/clang-doc/html/long-name.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp
    M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
    A clang-tools-extra/unittests/clang-doc/MarkdownParserTest.cpp
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/ClangStaticAnalyzer.md
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ReleaseNotes.md
    M clang/docs/ReleaseNotesTemplate.txt
    M clang/docs/ScalableStaticAnalysis/index.md
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/AST/StmtVisitor.h
    M clang/include/clang/Analysis/Analyses/Dominators.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Basic/AArch64CodeGenUtils.h
    M clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge.def
    M clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/Diagnostic.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/CIR/Dialect/CMakeLists.txt
    M clang/include/clang/Lex/LiteralSupport.h
    M clang/include/clang/Lex/MultipleIncludeOpt.h
    M clang/include/clang/Lex/Preprocessor.h
    A clang/include/clang/Lex/TextEncoding.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/CMakeLists.txt
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchSharedLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchStaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Serialization/CMakeLists.txt
    M clang/include/clang/Testing/TestLanguage.def
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpStack.cpp
    M clang/lib/AST/ByteCode/InterpStack.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Source.h
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/README.txt
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/NumericLiteralInfo.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avx512bwintrin.h
    M clang/lib/Headers/avx512vp2intersectintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/lib/Headers/xmmintrin.h
    A clang/lib/Headers/zos_wrappers/grp.h
    A clang/lib/Headers/zos_wrappers/locale.h
    A clang/lib/Headers/zos_wrappers/math.h
    A clang/lib/Headers/zos_wrappers/poll.h
    A clang/lib/Headers/zos_wrappers/string.h
    A clang/lib/Headers/zos_wrappers/time.h
    A clang/lib/Headers/zos_wrappers/variant.h
    M clang/lib/Lex/CMakeLists.txt
    M clang/lib/Lex/LiteralSupport.cpp
    A clang/lib/Lex/TextEncoding.cpp
    M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchSharedLibrary.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-nonempty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-empty-lu-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/namespace-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/top-level.test
    M clang/test/CIR/CodeGen/attr-noundef.cpp
    M clang/test/CIR/CodeGen/attr-target-x86.c
    M clang/test/CIR/CodeGen/builtins-x86.c
    A clang/test/CIR/CodeGen/fp16-native-args.c
    A clang/test/CIR/CodeGen/fp16.c
    M clang/test/CIR/CodeGen/inline-asm.c
    M clang/test/CIR/CodeGen/lambda-dtor-field.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    M clang/test/CIR/CodeGenCXX/uncopyable-args.cpp
    M clang/test/CIR/Lowering/module-asm.cir
    A clang/test/CXX/drs/cwg3088.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
    M clang/test/ClangScanDeps/diagnostics.c
    M clang/test/ClangScanDeps/header-search-pruning-transitive.c
    M clang/test/ClangScanDeps/modules-context-hash-from-named-module.cpp
    M clang/test/ClangScanDeps/modules-context-hash-ignore-macros.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/ClangScanDeps/modules-context-hash-warnings.c
    M clang/test/ClangScanDeps/modules-context-hash.c
    M clang/test/ClangScanDeps/modules-dep-args.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-extern-unrelated.m
    M clang/test/ClangScanDeps/modules-fmodule-name-no-module-built.m
    M clang/test/ClangScanDeps/modules-full-named-modules.cppm
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-full.cpp
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-implementation-vfs.m
    M clang/test/ClangScanDeps/modules-implicit-dot-private.m
    M clang/test/ClangScanDeps/modules-incomplete-umbrella.c
    M clang/test/ClangScanDeps/modules-inferred.m
    M clang/test/ClangScanDeps/modules-no-undeclared-includes.c
    M clang/test/ClangScanDeps/modules-pch-common-stale.c
    M clang/test/ClangScanDeps/modules-pch-common-submodule.c
    M clang/test/ClangScanDeps/modules-pch-common-via-submodule.c
    M clang/test/ClangScanDeps/modules-pch.c
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    M clang/test/ClangScanDeps/multiple-commands.c
    M clang/test/ClangScanDeps/tu-buffer.c
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    A clang/test/CodeGen/AArch64/neon/rounding-v8.5.c
    M clang/test/CodeGen/AArch64/neon/subtraction.c
    M clang/test/CodeGen/AArch64/v8.5a-neon-frint3264-intrinsic.c
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    M clang/test/CodeGen/X86/avx2-builtins.c
    M clang/test/CodeGen/X86/avx512bw-builtins.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_set_neonq.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    A clang/test/CodeGen/attr-counted-by-nested-structs.c
    A clang/test/CodeGen/attr-counted-by-with-sanitizers.c
    A clang/test/CodeGen/attr-counted-by-without-sanitizers.c
    R clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/builtin_float.c
    M clang/test/CodeGen/builtin_float_strictfp.c
    M clang/test/CodeGen/builtins-x86.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    A clang/test/CodeGen/systemz-charset-diag.cpp
    A clang/test/CodeGen/systemz-charset.c
    A clang/test/CodeGen/systemz-charset.cpp
    M clang/test/CodeGen/wasm-fp16.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenCoroutines/coro-elide.cpp
    M clang/test/CodeGenCoroutines/coro-halo.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    M clang/test/CodeGenHLSL/resources/resources-in-structs-method-call.hlsl
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/hexagon-toolchain-elf.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-profiles.c
    M clang/test/Driver/unknown-std.cpp
    M clang/test/Frontend/ast-codegen.c
    A clang/test/Headers/Inputs/zos/usr/include/grp.h
    A clang/test/Headers/Inputs/zos/usr/include/locale.h
    A clang/test/Headers/Inputs/zos/usr/include/math.h
    A clang/test/Headers/Inputs/zos/usr/include/poll.h
    A clang/test/Headers/Inputs/zos/usr/include/string.h
    A clang/test/Headers/Inputs/zos/usr/include/time.h
    A clang/test/Headers/Inputs/zos/usr/include/variant.h
    A clang/test/Headers/zos-guard.c
    A clang/test/Lexer/char-escapes-delimited-invalid-utf8.c
    M clang/test/Lexer/char-escapes-delimited.c
    M clang/test/Lexer/string-literal-encoding.c
    M clang/test/Misc/warning-wall.c
    M clang/test/Modules/codegen.test
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/init-s390x.c
    M clang/test/Preprocessor/init.c
    M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
    M clang/test/Sema/LifetimeSafety/lifetime-facts.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-intra-tu.cpp
    M clang/test/Sema/LifetimeSafety/safety-c.c
    M clang/test/Sema/LifetimeSafety/safety.cpp
    A clang/test/Sema/aux-target-builtin-constexpr.cpp
    M clang/test/Sema/matrix-type-operators.c
    A clang/test/Sema/offsetof-unsigned-index.c
    A clang/test/SemaCXX/GH203701.cpp
    M clang/test/SemaCXX/condition.cpp
    M clang/test/SemaCXX/injected-class-name-crash.cpp
    M clang/test/SemaCXX/static-assert-cxx26.cpp
    M clang/test/SemaCXX/static-assert.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp
    M clang/test/SemaCXX/warn-func-not-needed.cpp
    M clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
    M clang/test/SemaCXX/warn-tautological-compare.cpp
    M clang/test/SemaCXX/warn-variable-not-needed.cpp
    M clang/test/SemaTemplate/ctad.cpp
    M clang/test/SemaTemplate/member-specialization.cpp
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Basic/CMakeLists.txt
    M clang/unittests/Basic/DiagnosticTest.cpp
    M clang/unittests/Basic/LangOptionsTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/NumericLiteralInfoTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    M clang/unittests/ScalableStaticAnalysis/TestFixture.h
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/www/OpenProjects.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status
    M compiler-rt/lib/hwasan/hwasan_checks.h
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_aarch64.S
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_riscv64.S
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_mutex_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/global-constant.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/hello.c
    M cross-project-tests/debuginfo-tests/dexter-tests/inline-line-gap.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/realigned-frame.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c
    M cross-project-tests/debuginfo-tests/dexter/Heuristic.md
    M cross-project-tests/debuginfo-tests/dexter/Script.md
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex-continue.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex_step_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/debug_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_after_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_finish.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_step_out.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_penalties.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_perfect.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/invalid_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/simple_labels.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/source_root_dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/nested_wheres.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/bad-where-attr.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/error-locations.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-script-nodes.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/step-node-expected-values.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/valid-parse.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_types_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_step_lines.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/where_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_limit_steps_no_values.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
    M flang-rt/include/flang-rt/runtime/allocator-registry.h
    M flang-rt/include/flang-rt/runtime/work-queue.h
    M flang/docs/Semantics.md
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.td
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Semantics/openmp-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Fir/CUDA/cuda-device-func-transform.mlir
    M flang/test/Fir/CUDA/cuda-device-global.f90
    M flang/test/Fir/CUDA/cuda-function-rewrite.mlir
    A flang/test/HLFIR/inline-elemental-multi-users.fir
    M flang/test/HLFIR/separate-allocatable-assign.fir
    M flang/test/Lower/CUDA/cuda-proc-attribute.cuf
    M flang/test/Semantics/CUDA/cuf08.cuf
    A flang/test/Semantics/CUDA/cuf31.cuf
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/dev/printf_behavior.rst
    M libc/docs/headers/complex.rst
    M libc/hdr/CMakeLists.txt
    A libc/hdr/dirent_overlay.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/DIR.h
    A libc/hdr/types/struct_dirent.h
    A libc/hdr/types/struct_ipv6_mreq.h
    M libc/include/CMakeLists.txt
    M libc/include/complex.yaml
    M libc/include/llvm-libc-macros/linux/sys-socket-macros.h
    M libc/include/llvm-libc-macros/netinet-in-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_ipv6_mreq.h
    M libc/include/netinet/in.yaml
    M libc/include/sys/socket.yaml
    M libc/src/__support/File/dir.cpp
    M libc/src/__support/File/dir.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/syscall_wrappers/fcntl.h
    M libc/src/__support/big_int.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/frac128.h
    M libc/src/complex/CMakeLists.txt
    A libc/src/complex/cabs.h
    A libc/src/complex/cabsf.h
    M libc/src/complex/generic/CMakeLists.txt
    A libc/src/complex/generic/cabs.cpp
    A libc/src/complex/generic/cabsf.cpp
    M libc/src/dirent/CMakeLists.txt
    A libc/src/dirent/fdopendir.cpp
    A libc/src/dirent/fdopendir.h
    M libc/src/stdio/printf_core/converter_utils.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdio/printf_core/float_hex_converter.h
    M libc/src/stdio/printf_core/float_inf_nan_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/printf_config.h
    M libc/src/stdio/printf_core/write_int_converter.h
    M libc/src/string/memory_utils/arm/inline_memcpy.h
    M libc/src/sys/socket/CMakeLists.txt
    M libc/src/sys/socket/linux/CMakeLists.txt
    A libc/src/sys/socket/linux/sockatmark.cpp
    A libc/src/sys/socket/sockatmark.h
    M libc/startup/baremetal/arm/start.cpp
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/ErrnoSetterMatcher.h
    M libc/test/UnitTest/PrintfMatcher.cpp
    M libc/test/src/__support/integer_literals_test.cpp
    A libc/test/src/complex/CAbsTest.h
    M libc/test/src/complex/CMakeLists.txt
    A libc/test/src/complex/cabs_test.cpp
    A libc/test/src/complex/cabsf_test.cpp
    M libc/test/src/dirent/CMakeLists.txt
    A libc/test/src/dirent/fdopendir_test.cpp
    M libc/test/src/netinet/CMakeLists.txt
    M libc/test/src/netinet/in_test.cpp
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    A libc/test/src/sys/socket/linux/sockatmark_test.cpp
    M libc/utils/MPCWrapper/MPCUtils.cpp
    M libcxx/docs/DesignDocs/FeatureTestMacros.rst
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__cxx03/string
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    A libcxx/include/__memory/uninitialized_multidimensional_algorithms.h
    M libcxx/include/__random/mersenne_twister_engine.h
    M libcxx/include/__ranges/elements_view.h
    M libcxx/include/__ranges/zip_transform_view.h
    M libcxx/include/__thread/formatter.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/__vector/layout.h
    M libcxx/include/future
    M libcxx/include/module.modulemap.in
    M libcxx/include/set
    M libcxx/include/string
    M libcxx/include/thread
    M libcxx/src/atomic.cpp
    R libcxx/test/benchmarks/algorithms/nonmodifying/lower_upper_bound.bench.cpp
    A libcxx/test/benchmarks/algorithms/sorting/lower_upper_bound.bench.cpp
    M libcxx/test/benchmarks/random.bench.cpp
    M libcxx/test/benchmarks/spec.gen.py
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/max_size.pass.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.elements/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.zip.transform/nodiscard.verify.cpp
    A libcxx/test/libcxx/strings/basic.string/new_alignment.sh.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/max_size.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.append.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.assign.pass.cpp
    A libcxx/test/libcxx/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.associative.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/multiset/clear.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/empty.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/find.pass.cpp
    M libcxx/test/std/containers/associative/multiset/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/multiset/max_size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/merge.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/upper_bound.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_sseq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp
    M libcxx/test/std/utilities/memory/pointer.traits/pointer.traits.functions/pointer_to.pass.cpp
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/libcxx/test/features/libcxx_macros.py
    M libcxx/utils/run-spec-benchmark
    M libcxxabi/src/CMakeLists.txt
    M libcxxabi/src/private_typeinfo.cpp
    M libcxxabi/test/thread_local_destruction_order.pass.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/Writer.cpp
    M lldb/cmake/modules/AddLLDB.cmake
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/include/lldb/Breakpoint/ScriptedBreakpointOverrideResolver.h
    M lldb/include/lldb/Core/EmulateInstruction.h
    M lldb/include/lldb/Core/Section.h
    M lldb/include/lldb/Core/Value.h
    M lldb/include/lldb/Expression/Materializer.h
    M lldb/include/lldb/Host/common/NativeRegisterContext.h
    M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/include/lldb/Target/RegisterContext.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/include/lldb/Utility/ConstString.h
    A lldb/include/lldb/Utility/RegisterInfo.h
    M lldb/include/lldb/Utility/RegisterValue.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-private-types.h
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/lldbutil.py
    M lldb/source/API/SBModule.cpp
    M lldb/source/API/SBSection.cpp
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/Section.cpp
    M lldb/source/DataFormatters/FormatterBytecode.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/source/Utility/ConstString.cpp
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/statistics/basic/TestStats.py
    M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/TestOverridesResolver.py
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/bkpt_resolver.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/TestDataFormatterStdVBool.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/main.cpp
    M lldb/test/API/functionalities/return-value/TestReturnValue.py
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py
    M lldb/test/API/functionalities/scripted_frame_provider/thread_filter/TestFrameProviderThreadFilter.py
    M lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
    M lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
    A lldb/test/API/macosx/expedited-stack-memory/Makefile
    A lldb/test/API/macosx/expedited-stack-memory/TestExpeditedStackMemory.py
    A lldb/test/API/macosx/expedited-stack-memory/main.c
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_DAPConnection.py
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_EventHistory.py
    A lldb/test/API/tools/lldb-dap/utils/sample_dap_log.json
    M lldb/tools/driver/CMakeLists.txt
    M lldb/tools/lldb-dap/tool/CMakeLists.txt
    M lldb/tools/lldb-mcp/CMakeLists.txt
    M lldb/unittests/Core/ModuleTest.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp
    M lldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
    M lldb/unittests/ScriptInterpreter/Python/PythonDataObjectsTests.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp
    M llvm/benchmarks/ImmutableSetIteratorBM.cpp
    M llvm/docs/AMDGPUAsyncOperations.rst
    A llvm/docs/AMDGPUDMAOperations.md
    M llvm/docs/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack.md
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
    M llvm/docs/AMDGPUUsage.rst
    A llvm/docs/AdvancedBuilds.md
    R llvm/docs/AdvancedBuilds.rst
    A llvm/docs/BuildingADistribution.md
    R llvm/docs/BuildingADistribution.rst
    A llvm/docs/CFIVerify.md
    R llvm/docs/CFIVerify.rst
    A llvm/docs/CycleTerminology.md
    R llvm/docs/CycleTerminology.rst
    A llvm/docs/DTLTO.md
    R llvm/docs/DTLTO.rst
    A llvm/docs/Docker.md
    R llvm/docs/Docker.rst
    A llvm/docs/Frontend/PerformanceTips.md
    R llvm/docs/Frontend/PerformanceTips.rst
    M llvm/docs/GitHub.md
    M llvm/docs/GlobalISel/Legalizer.rst
    A llvm/docs/GoldPlugin.md
    R llvm/docs/GoldPlugin.rst
    A llvm/docs/HowToBuildOnARM.md
    R llvm/docs/HowToBuildOnARM.rst
    A llvm/docs/HowToBuildWithPGO.md
    R llvm/docs/HowToBuildWithPGO.rst
    A llvm/docs/HowToCrossCompileLLVM.md
    R llvm/docs/HowToCrossCompileLLVM.rst
    M llvm/docs/LangRef.rst
    A llvm/docs/LinkTimeOptimization.md
    R llvm/docs/LinkTimeOptimization.rst
    A llvm/docs/MemProf.md
    R llvm/docs/MemProf.rst
    A llvm/docs/MergeFunctions.md
    R llvm/docs/MergeFunctions.rst
    A llvm/docs/MyFirstTypoFix.md
    R llvm/docs/MyFirstTypoFix.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/PDB/CodeViewSymbols.rst
    A llvm/docs/ProjectGovernance.md
    R llvm/docs/ProjectGovernance.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    A llvm/docs/StackSafetyAnalysis.md
    R llvm/docs/StackSafetyAnalysis.rst
    A llvm/docs/SupportLibrary.md
    R llvm/docs/SupportLibrary.rst
    M llvm/docs/UserGuides.md
    M llvm/docs/VectorizationPlan.rst
    A llvm/docs/Vectorizers.md
    R llvm/docs/Vectorizers.rst
    M llvm/docs/conf.py
    A llvm/docs/tutorial/index.md
    R llvm/docs/tutorial/index.rst
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseMapInfo.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/ImmutableSet.h
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/BinaryFormat/DynamicTags.def
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/CostTable.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    R llvm/include/llvm/CodeGen/GlobalISel/LegacyLegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/include/llvm/CodeGen/RegAllocCommon.h
    M llvm/include/llvm/CodeGen/RegisterBank.h
    M llvm/include/llvm/CodeGen/RegisterBankInfo.h
    M llvm/include/llvm/CodeGen/RegisterScavenging.h
    M llvm/include/llvm/CodeGen/ScheduleDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    A llvm/include/llvm/CodeGen/StaticDataAnnotator.h
    A llvm/include/llvm/CodeGen/StaticDataSplitter.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/DebugInfo/CodeView/Formatters.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/include/llvm/DebugInfo/PDB/Native/FormatUtil.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/MC/MCAsmStreamer.h
    M llvm/include/llvm/MC/MCInstrInfo.h
    M llvm/include/llvm/MC/MCRegisterInfo.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    A llvm/include/llvm/ObjectYAML/ContiguousBlobAccumulator.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfWriter.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Support/CFGDiff.h
    M llvm/include/llvm/Support/ConvertUTF.h
    M llvm/include/llvm/Support/FormatAdapters.h
    M llvm/include/llvm/Support/FormatCommon.h
    M llvm/include/llvm/Support/FormatProviders.h
    M llvm/include/llvm/Support/FormatVariadic.h
    M llvm/include/llvm/Support/FormatVariadicDetails.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/GenericLoopInfoImpl.h
    M llvm/include/llvm/Support/JSON.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/include/llvm/Support/LEB128.h
    M llvm/include/llvm/Support/TextEncoding.h
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/Target/TargetPfmCounters.td
    M llvm/include/llvm/TargetParser/CMakeLists.txt
    M llvm/lib/Analysis/AssumeBundleQueries.cpp
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/DemandedBits.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/StaticDataProfileInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/CriticalAntiDepBreaker.h
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    R llvm/lib/CodeGen/GlobalISel/LegacyLegalizerInfo.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MIRParser/MILexer.cpp
    M llvm/lib/CodeGen/MIRParser/MILexer.h
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/RDFRegisters.cpp
    M llvm/lib/CodeGen/RegisterClassInfo.cpp
    M llvm/lib/CodeGen/RegisterCoalescer.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/StaticDataAnnotator.cpp
    M llvm/lib/CodeGen/StaticDataSplitter.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/FileCheck/FileCheckImpl.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCInstrInfo.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Object/ObjectFile.cpp
    M llvm/lib/ObjectYAML/CMakeLists.txt
    A llvm/lib/ObjectYAML/ContiguousBlobAccumulator.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/SampleProf.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/ProfileData/SampleProfWriter.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/ConvertUTF.cpp
    M llvm/lib/Support/FormatVariadic.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Support/TextEncoding.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/ARC/ARCISelLowering.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/GISel/BPFLegalizerInfo.cpp
    M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
    M llvm/lib/Target/CSKY/CSKYISelLowering.cpp
    M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/Hexagon/BitTracker.h
    M llvm/lib/Target/Hexagon/Hexagon.td
    M llvm/lib/Target/Hexagon/HexagonBitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    M llvm/lib/Target/Hexagon/HexagonPostRAHandleQFP.cpp
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h
    M llvm/lib/Target/Lanai/LanaiISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/M68k/GISel/M68kLegalizerInfo.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/M68k/M68kRegisterInfo.cpp
    M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    M llvm/lib/Target/Mips/MipsLegalizerInfo.cpp
    M llvm/lib/Target/Mips/MipsRegisterInfo.h
    M llvm/lib/Target/Mips/MipsSEISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp
    M llvm/lib/Target/PowerPC/GISel/PPCLegalizerInfo.cpp
    M llvm/lib/Target/PowerPC/PPCCallingConv.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/Sparc/LeonPasses.cpp
    M llvm/lib/Target/Sparc/LeonPasses.h
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86CallingConv.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/XCore/XCoreISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.h
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/MergeICmps.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/SplitModule.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/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanCFG.h
    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/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/AssumptionCache/basic.ll
    M llvm/test/Analysis/CostModel/AArch64/arith.ll
    M llvm/test/Analysis/CostModel/AArch64/mul.ll
    M llvm/test/Analysis/CostModel/RISCV/fca-load-store.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-scatter.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-select.ll
    M llvm/test/Analysis/CostModel/X86/alternate-shuffle-cost.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-select.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-single-src.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
    M llvm/test/Analysis/DemandedBits/intrinsics.ll
    M llvm/test/Assembler/invalid-immarg5.ll
    A llvm/test/Assembler/module-asm-invalid.ll
    A llvm/test/Bitcode/Inputs/aarch64-memory-attribute-upgrade.bc
    A llvm/test/Bitcode/Inputs/x86-memory-attribute-upgrade.bc
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    A llvm/test/Bitcode/module-asm.ll
    A llvm/test/Bitcode/target-memory-attribute.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-v8a.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64_i128_endianness.ll
    R llvm/test/CodeGen/AArch64/GlobalISel/combine-max-min.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion.ll
    A llvm/test/CodeGen/AArch64/build-vector-reconstructshuffle.ll
    A llvm/test/CodeGen/AArch64/cttz-of-bool-vector-bitcast.ll
    A llvm/test/CodeGen/AArch64/i128-imm-compare-ccmp.ll
    M llvm/test/CodeGen/AArch64/isinf.ll
    M llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir
    M llvm/test/CodeGen/AArch64/nested-iv-regalloc.mir
    M llvm/test/CodeGen/AArch64/regcoal-physreg.mir
    M llvm/test/CodeGen/AArch64/stack-guard-width.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-64b-unscaled.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather.ll
    A llvm/test/CodeGen/AArch64/sve2p1-while-pn-folds.ll
    M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.offset-split.ll
    M llvm/test/CodeGen/AMDGPU/amdhsa-trap-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/dead_bundle.mir
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/greedy-global-heuristic.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-agpr-negative-tests.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av.mir
    M llvm/test/CodeGen/AMDGPU/inflated-reg-class-snippet-copy-use-after-free.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/lds-link-time-codegen-named-barrier.ll
    M llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.ptr.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2b.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2c.mir
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load-exported.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/madak.ll
    M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/ra-inserted-scalar-instructions.mir
    M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-fail-unsatisfiable-overlapping-tuple-hints.mir
    R llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.ll
    A llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-undef-copy-fold.mir
    M llvm/test/CodeGen/AMDGPU/rewrite-mfma-form-spill-cost-reset.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pre-RA.mir
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-bundle.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-do-not-undo-subclass-split-with-remat.mir
    M llvm/test/CodeGen/AMDGPU/splitkit.mir
    M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/DirectX/legalize-switch-unreachable.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-multi-conv.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-conv-double2.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-fakereg.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg2.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg3.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-warnings.ll
    M llvm/test/CodeGen/Hexagon/reserved-regs.ll
    A llvm/test/CodeGen/Hexagon/vselect.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sitofp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uitofp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sitofp.ll
    A llvm/test/CodeGen/MIR/AMDGPU/lr-split-flag.mir
    M llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-invalid.ll
    M llvm/test/CodeGen/NVPTX/fence-proxy-tensormap-invalid.ll
    A llvm/test/CodeGen/NVPTX/intrinsic-immarg-print-mismatched-signature.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-scale-d-invalid.ll
    A llvm/test/CodeGen/PowerPC/abdu-neg.ll
    A llvm/test/CodeGen/PowerPC/abdu.ll
    M llvm/test/CodeGen/PowerPC/mcp-elim-eviction-chain.mir
    M llvm/test/CodeGen/PowerPC/misched.ll
    M llvm/test/CodeGen/PowerPC/pgo-ref-directive.ll
    A llvm/test/CodeGen/RISCV/determine-callee-saves-gpr.mir
    M llvm/test/CodeGen/RISCV/make-compressible-for-store-address.mir
    M llvm/test/CodeGen/RISCV/make-compressible-rv64.mir
    M llvm/test/CodeGen/RISCV/make-compressible-xqci.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc-zhinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zfinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir
    M llvm/test/CodeGen/RISCV/make-compressible.mir
    A llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/CodeGen/RISCV/pr176001.ll
    A llvm/test/CodeGen/RISCV/rvp-bitreverse-zbkb.ll
    A llvm/test/CodeGen/RISCV/rvp-reverse.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-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lmul-max.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.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/fixed-vectors-zvdot4a8i.ll
    M llvm/test/CodeGen/RISCV/rvv/pr52475.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll
    M llvm/test/CodeGen/RISCV/rvv/zvdot4a8i-sdnode.ll
    M llvm/test/CodeGen/SPARC/bswap.ll
    A llvm/test/CodeGen/SPARC/tn0010.ll
    M llvm/test/CodeGen/SPARC/tn0010.mir
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_bfloat16_load_store_xchg.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_int16_load_store_xchg_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/instructions/scalar-integer-arithmetic.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll
    A llvm/test/CodeGen/SPIRV/store-to-read-only-addrspace.ll
    M llvm/test/CodeGen/SPIRV/transcoding/load-atomic.ll
    M llvm/test/CodeGen/SPIRV/transcoding/store-atomic.ll
    M llvm/test/CodeGen/SystemZ/call-zos-02.ll
    M llvm/test/CodeGen/X86/AMX/amx-greedy-ra-spill-shape.ll
    M llvm/test/CodeGen/X86/apx/foldmemory.mir
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/buildvec-extract.ll
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/combine-or-shuffle.ll
    M llvm/test/CodeGen/X86/divrem-by-select.ll
    M llvm/test/CodeGen/X86/fmaddsub-combine.ll
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/CodeGen/X86/insertelement-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/test/CodeGen/X86/legalize-vec-assertzext.ll
    M llvm/test/CodeGen/X86/load-partial.ll
    M llvm/test/CodeGen/X86/oddsubvector.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll
    M llvm/test/CodeGen/X86/psadbw.ll
    M llvm/test/CodeGen/X86/sad_variations.ll
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
    M llvm/test/CodeGen/X86/trunc-subvector.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv_fix.ll
    M llvm/test/CodeGen/X86/udiv_fix_sat.ll
    M llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
    M llvm/test/CodeGen/X86/vector-reduce-ctpop.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    A llvm/test/CodeGen/X86/x86-inst-tuning.mir
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-movements.mir
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-stackptr.mir
    A llvm/test/DebugInfo/X86/implicit-value-truncated-integer.ll
    M llvm/test/FileCheck/match-time-error-propagation/matched-excluded-pattern.txt
    M llvm/test/FileCheck/match-time-error-propagation/matched-expected-pattern.txt
    A llvm/test/FileCheck/unmatched-substs-captures.txt
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    A llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    A llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    A llvm/test/Linker/module-asm.ll
    M llvm/test/MC/AArch64/arm-poe2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/RISCV/invalid-attribute.s
    A llvm/test/MC/RISCV/rvy-build-attributes.s
    A llvm/test/MC/RISCV/rvy-invalid-attributes.s
    M llvm/test/MC/SystemZ/insn-good-zos-pcrel.s
    A llvm/test/TableGen/ExegesisRawPfmCounters.td
    M llvm/test/TableGen/MacroFusion.td
    M llvm/test/TableGen/RegisterClassCopyCost.td
    M llvm/test/TableGen/RegisterInfoEmitter-inherit-properties.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-list.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-tuple.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost.td
    M llvm/test/TableGen/RegisterInfoEmitter-tsflags.td
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/Attributor/nofpclass-ldexp.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll
    M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
    M llvm/test/Transforms/GVN/PRE/volatile.ll
    A llvm/test/Transforms/Inline/X86/always-inline-features.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-cmpne.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/add4.ll
    M llvm/test/Transforms/InstCombine/assume-cache-update.ll
    M llvm/test/Transforms/InstCombine/assume.ll
    A llvm/test/Transforms/InstCombine/fptoui-of-fdiv.ll
    M llvm/test/Transforms/InstCombine/fptrunc.ll
    A llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll
    A llvm/test/Transforms/InstCombine/insert-element-shuffle-vector-debugloc.ll
    M llvm/test/Transforms/InstCombine/known-range-frexp-exp.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/pr53357.ll
    A llvm/test/Transforms/InstCombine/select-abs-positive-mul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-ldexp.ll
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/saturating-add-sub.ll
    M llvm/test/Transforms/InstSimplify/cast.ll
    A llvm/test/Transforms/InstSimplify/vector-interleave-deinterleave.ll
    A llvm/test/Transforms/JumpTableToSwitch/callee-type-mismatch.ll
    A llvm/test/Transforms/LICM/AArch64/sme-fp8-hoist.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clmul.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/neon-inloop-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-incomplete-chains.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/runtime-check-trip-count-decisions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-scalarivsext-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/illegal-type.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/early_exit_with_stores_vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/clmul.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model-i386.ll
    M llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/nondetermisitic-widening-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    M llvm/test/Transforms/LoopVectorize/constantfolder.ll
    M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
    A llvm/test/Transforms/LoopVectorize/early_exit_combined_exits.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
    M llvm/test/Transforms/LoopVectorize/flags.ll
    M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
    M llvm/test/Transforms/LoopVectorize/fpsat.ll
    M llvm/test/Transforms/LoopVectorize/hoist-and-sink-mem-ops-with-invariant-pointers.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/pointer-select-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/pr125278.ll
    M llvm/test/Transforms/LoopVectorize/pr154045-dont-fold-extractelement-livein.ll
    M llvm/test/Transforms/LoopVectorize/pr31190.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr66616.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll
    M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
    M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
    M llvm/test/Transforms/LoopVectorize/replace-first-order-recurrence-by-versioned-iv.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-bounded-ranges.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    M llvm/test/Transforms/LoopVectorize/single-scalar-cast-minbw.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/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-constant-trip-counts.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-tail-folding.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    A llvm/test/Transforms/MergeICmps/X86/dbgloc-branches.ll
    M llvm/test/Transforms/MergeICmps/X86/no-gep-other-work.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/countable-and-uncountable-exits-combined.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-shuffle.ll
    M llvm/test/Transforms/SLPVectorizer/X86/copyable-operands-reordering.ll
    M llvm/test/Transforms/SLPVectorizer/X86/debug-info-salvage.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-node-with-in-order-parent.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-before-main.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-stored.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    A llvm/test/Transforms/SLPVectorizer/X86/store-expand-non-pow2.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/vect_copyable_in_binops.ll
    M llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/test/Verifier/AMDGPU/test-cvt-fp4f6f8-immarg-ranges.ll
    M llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
    M llvm/test/Verifier/NVPTX/setmaxnreg.ll
    A llvm/test/Verifier/NVPTX/tensormap-replace.ll
    M llvm/test/Verifier/intrinsic-immarg.ll
    A llvm/test/tools/llubi/intr_experimental_vector.ll
    A llvm/test/tools/llvm-dwarfdump/X86/array-type-lower-bound-dwarf6.s
    A llvm/test/tools/llvm-pdbutil/opt-docnum.test
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llvm-cfi-verify/llvm-cfi-verify.cpp
    M llvm/tools/llvm-exegesis/lib/Target.cpp
    M llvm/tools/llvm-exegesis/lib/Target.h
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M llvm/tools/llvm-xray/xray-stacks.cpp
    M llvm/unittests/ADT/APFloatTest.cpp
    M llvm/unittests/ADT/ArrayRefTest.cpp
    M llvm/unittests/ADT/TwineTest.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
    M llvm/unittests/IR/DominatorTreeTest.cpp
    M llvm/unittests/Object/GOFFObjectFileTest.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Target/AArch64/AArch64InstPrinterTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/DisassemblerEmitter.cpp
    M llvm/utils/TableGen/ExegesisEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.h
    M llvm/utils/UpdateTestChecks/mir.py
    M llvm/utils/docker/README
    M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/support/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Lex/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ObjectYAML/BUILD.gn
    M llvm/utils/lit/lit/InprocBuiltins.py
    M llvm/utils/lit/lit/ShellEnvironment.py
    M llvm/utils/lit/lit/util.py
    M mlir/cmake/modules/AddMLIR.cmake
    M mlir/include/mlir-c/Rewrite.h
    M mlir/include/mlir/Bytecode/BytecodeImplementation.h
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/NVGPU/IR/NVGPUOps.td
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/include/mlir/IR/BytecodeBase.td
    M mlir/include/mlir/Interfaces/TilingInterface.h
    M mlir/include/mlir/Interfaces/TilingInterface.td
    M mlir/include/mlir/TableGen/Format.h
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/UnifyAliasedResourcePass.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    M mlir/lib/Interfaces/TilingInterface.cpp
    M mlir/lib/TableGen/Format.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/CAPI/rewrite.c
    A mlir/test/Conversion/ArithToAMDGPU/scaling-truncf-tensor.mlir
    M mlir/test/Conversion/SPIRVToLLVM/cl-ops-to-llvm.mlir
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir
    M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
    M mlir/test/Dialect/Builtin/Bytecode/types.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-tiling.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-tiling.mlir
    M mlir/test/Dialect/Linalg/transform-ops-invalid.mlir
    M mlir/test/Dialect/Linalg/transform-ops.mlir
    M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir
    M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir
    M mlir/test/Dialect/SPIRV/Transforms/unify-aliased-resource.mlir
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-attach-target.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
    M mlir/test/Target/LLVMIR/module-asm.mlir
    A mlir/test/Target/LLVMIR/omptarget-declare-target-func-visibility.mlir
    M mlir/test/Target/LLVMIR/omptarget-device-shared-mem.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp
    M offload/plugins-nextgen/common/CMakeLists.txt
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp
    M offload/unittests/OffloadAPI/program/olCreateProgram.cpp
    M orc-rt/include/orc-rt/SimplePackedSerialization.h
    M orc-rt/unittests/SimplePackedSerializationTest.cpp
    M polly/lib/External/isl/isl_union_map.c
    M polly/test/ScopInfo/invariant_load_dereferenceable.ll
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/docs/llvm_sphinx/__init__.py

  Log Message:
  -----------
  Rebase

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/354438f7cd70...95dd95030520

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