[all-commits] [llvm/llvm-project] 4ce498: [VPlan] Optimize FindLast of FindIV w/o sentinel. ...

Mariusz Sikora via All-commits all-commits at lists.llvm.org
Mon Mar 2 00:46:41 PST 2026


  Branch: refs/heads/users/mariusz-sikora-at-amd/gfx13/add-vinterp
  Home:   https://github.com/llvm/llvm-project
  Commit: 4ce49873814cd35bfe85c59e60fb7cb7b04e2441
      https://github.com/llvm/llvm-project/commit/4ce49873814cd35bfe85c59e60fb7cb7b04e2441
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-no-wrap.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll

  Log Message:
  -----------
  [VPlan] Optimize FindLast of FindIV w/o sentinel. (#172569)

For FindLast reduction selecting an IV, we can avoid the horizontal
AnyOf in the vector loop, by introducing an independent  boolean
reduction to track if the condition was ever true in the loop. If it was
never true in the loop, we select the start value, otherwise the select
the min/max of the FindIV reduction, as required by the predicate.

The main advantage of this approach is that we have 2 independent
reductions, that do not require a horizontal AnyOf reduction in the
loop.

Currently this requires a non-wrapping IV, but this can be relaxed in
the future by selecting a canonical IV, which is then transformed to the
specific derived IV for the reduction after the loop.

Depends on https://github.com/llvm/llvm-project/pull/177870.

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


  Commit: 2e88688ba7e048e25143117cd7b1e5697d9cec86
      https://github.com/llvm/llvm-project/commit/2e88688ba7e048e25143117cd7b1e5697d9cec86
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Use bits<1> for AltFmt in RISCVVPseudo. (#182581)

This makes the searchable table emitter use uint8_t instead of bool in
the KeyType struct. This is needed to allow us to use a bitfield in the
PseudoInfo struct and avoid a compare between a bool and uint16_t. We
already use this same bits<1> trick in other searchable tables.

Fixes #182485


  Commit: 5e09590993a9eaf256df07c7aecafa26f1e81253
      https://github.com/llvm/llvm-project/commit/5e09590993a9eaf256df07c7aecafa26f1e81253
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp

  Log Message:
  -----------
  [NFC] [FlowSensitive] Add mock header for coroutines

These are copied from libcxx with some details and implementation removed.

Reviewers: rohanjr

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


  Commit: cedd736518bc07d70c166b8a0c7c0389a1df183e
      https://github.com/llvm/llvm-project/commit/cedd736518bc07d70c166b8a0c7c0389a1df183e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.h

  Log Message:
  -----------
  [NFCI] [FlowSensitive] [StatusOr] use c++20 for test

This is to test coroutines

Reviewers: rohanjr

Reviewed By: rohanjr

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


  Commit: d5787171df8f8ddbcd90bb9720ed16da8e9942d8
      https://github.com/llvm/llvm-project/commit/d5787171df8f8ddbcd90bb9720ed16da8e9942d8
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in OpenACCOpsTest.cpp (NFC)


  Commit: c12f73b3d65f262ffdc77879001d609df45a98aa
      https://github.com/llvm/llvm-project/commit/c12f73b3d65f262ffdc77879001d609df45a98aa
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for modernize-loop-convert in Utils.cpp (NFC)


  Commit: 580a3bb8ea1208873671b6e78986c5e253a64152
      https://github.com/llvm/llvm-project/commit/580a3bb8ea1208873671b6e78986c5e253a64152
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h

  Log Message:
  -----------
  [NFC][MC] Add LLVM_ABI annotations to createAsmParser functions (#182393)

Following the MCLFIRewriter PR, this adds the `LLVM_ABI` annotations for
related functions that were flagged by the ABI bot.


  Commit: 410c64eebfa55eed36c9a44531ca6c1938170a0c
      https://github.com/llvm/llvm-project/commit/410c64eebfa55eed36c9a44531ca6c1938170a0c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

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

  Log Message:
  -----------
  AMDGPU: Try to fix leak in AMDGPULibFunc (#182583)

I don't know why this was trying to do placement do. I guess
this was overriding the unique_ptr, bypassing its destructor.


  Commit: a412d7372a2d5e2ef1ca56d517362d9d5dfdb68f
      https://github.com/llvm/llvm-project/commit/a412d7372a2d5e2ef1ca56d517362d9d5dfdb68f
  Author: Amara Emerson <amara at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineOutliner.cpp
    A llvm/test/CodeGen/AArch64/machine-outliner-bundle-debuginfo.mir

  Log Message:
  -----------
  [AArch64][MachineOutliner] Clear debug locations on bundled instructions (#175655)

When the machine outliner duplicates instructions, it clears their debug
locations to avoid having the outlined function reference DISubprograms
from the original functions. However, this only cleared the debug
location on the bundle header, not on the individual instructions inside
the bundle.

This caused assertion failures in `LexicalScopes::getOrCreateRegularScope`,
because the bundled instructions still had debug locations pointing to
the original function's.

Fix this by iterating through all instructions in a bundle and clearing
their debug locations as well.


  Commit: 6b44a2f9119012451b3cb9f37ba4cb5c6b2de53e
      https://github.com/llvm/llvm-project/commit/6b44a2f9119012451b3cb9f37ba4cb5c6b2de53e
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/AST/HLSL/matrix-member-access-scalar.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Make matrix single element accessor return a scalar instead of vector (#182609)

Fixes #182599 by making `SemaHLSL::checkMatrixComponent` return the
element type instead of a vector when the number of vector components is
exactly 1.


  Commit: 9f6ad7654b07391525124edcab498c938da10e92
      https://github.com/llvm/llvm-project/commit/9f6ad7654b07391525124edcab498c938da10e92
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/stream.cpp

  Log Message:
  -----------
  [flang][cuda] Use default stream when calling cudaStreamSynchronize without arg (#182623)


  Commit: 689ecf880373bb4e0f01ed5e004f19a466e869dc
      https://github.com/llvm/llvm-project/commit/689ecf880373bb4e0f01ed5e004f19a466e869dc
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/BitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTfrCleanup.cpp
    A llvm/test/CodeGen/Hexagon/copy-phys-int-dbl.mir
    A llvm/test/CodeGen/Hexagon/tfr-cleanup-subreg-copy.ll
    A llvm/test/CodeGen/Hexagon/truncating-copy-double-to-int.ll

  Log Message:
  -----------
  [Hexagon] Handle subreg copies between DoubleRegs and IntRegs (#181360)

ISel can generate truncating COPYs from DoubleRegs to IntRegs when a
64-bit result (e.g., C2_mask) is used in a 32-bit context. Several
passes crashed on this pattern:

BitTracker asserted WD >= WS for COPY instructions. Handle the WD < WS
case by extracting the low WD bits from the source.

HexagonInstrInfo::copyPhysReg had no case for IntRegs <- DoubleRegs or
DoubleRegs <- IntRegs. Add both directions, respecting the subreg index
on the operand (isub_lo/isub_hi) when present.

HexagonTfrCleanup asserted that source and destination register sizes
match. Replace with proper subreg resolution on both operands and a
hasNoVRegs() guard since the pass runs post-RA.

HexagonGenMux asserted no subregs on physical register operands.
Preserve subreg information when building mux instructions and resolve
subregs when fixing kill flags.

Co-authored-by: Sergei Larin <slarin at codeaurora.org>

---------

Co-authored-by: Sergei Larin <slarin at codeaurora.org>


  Commit: 99dc561c7da3448cb90c73b10e08c2061ed34991
      https://github.com/llvm/llvm-project/commit/99dc561c7da3448cb90c73b10e08c2061ed34991
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-tensor-load-store.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/waitcnt-debug-output-crash.ll
    R llvm/test/Transforms/InstCombine/AMDGPU/tensor-load-store-lds.ll
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/gfx1250.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [AMDGPU] Use a general form of intrinsic for tensor load/store (#182334)

  The intrinsic has five arguments for the tensor descriptor (D#), while the fifth one is reserved for future targets, and it will be silently ignored in codegen for gfx1250.
  For tensor up to 2D, only the first two D# groups are meaningful and the rest should be zero-initialized.


  Commit: 555cb279c271c25c88cf0fc31bec91801b6bd24e
      https://github.com/llvm/llvm-project/commit/555cb279c271c25c88cf0fc31bec91801b6bd24e
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/Analysis/FunctionPropertiesAnalysis/properties-stats.ll
    R llvm/test/Other/functionpropertiesanalysis.ll

  Log Message:
  -----------
  Moved FunctionProperties test to correct test path (#182637)

Test was previously in Other ambiguous path. Now under its appropiate
folder


  Commit: 3343a5bd81ddb0b76e703463292fabf655bfdf19
      https://github.com/llvm/llvm-project/commit/3343a5bd81ddb0b76e703463292fabf655bfdf19
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    A clang/test/Driver/HLSL/conversion-warning-flags.hlsl
    R clang/test/Driver/HLSL/wconversion.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
    M clang/test/SemaHLSL/Language/ImpCastAddrSpace.hlsl
    M clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitLists.hlsl
    M clang/test/SemaHLSL/Language/OutputParameters.hlsl
    M clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
    M clang/test/SemaHLSL/ScalarOverloadResolution.hlsl
    M clang/test/SemaHLSL/SplatOverloadResolution.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes_no_16bit.hlsl
    M clang/test/SemaHLSL/VectorElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/matrix-member-access-errors.hlsl
    A clang/test/SemaHLSL/no-conversion-warnings.hlsl
    M clang/test/SemaHLSL/parameter_modifiers.hlsl
    M clang/test/SemaHLSL/standard_conversion_sequences.hlsl

  Log Message:
  -----------
  [HLSL] Enable `-Wconversion`, `-Wvector-conversion`, and `-Wmatrix-conversion` warnings for HLSL by default (#182607)

Fixes #180038 by enabling `-Wconversion`, `-Wvector-conversion`, and
`-Wmatrix-conversion` warnings for HLSL by default, both in the HLSL
clang driver and when fixing up clang invocations under HLSL in
CompilerInvocation.cpp (so that they are enabled even with clang -cc1).

This PR also updates existing tests to expect warnings that weren't
expected before, and removes the `-Wconversion` flags from existing HLSL
tests since it is now redundant due to being enabled by default.

Note that no existing HLSL tests use or exercise `-Wvector-conversion`
or `-Wmatrix-conversion`.


  Commit: 594e9fb3e34e93f125ea0f0e8b371c5015f51323
      https://github.com/llvm/llvm-project/commit/594e9fb3e34e93f125ea0f0e8b371c5015f51323
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/select.ll

  Log Message:
  -----------
  [RISCV] Remove srl from (srl (and X, (1 << C)), C) used as czero.eqz/nez condition. (#182598)

(setne (and X, 1 << C), 0) is canonicalized to (srl (and X, (1 << C)),
C).
If this is later used as a czero.eqz/nez condition, we can remove
the srl if the and can be represented as an ANDI.


  Commit: a2b7f1fcad77b506d469c1ed171e3c93cf1bc2b1
      https://github.com/llvm/llvm-project/commit/a2b7f1fcad77b506d469c1ed171e3c93cf1bc2b1
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/test/ThinLTO/X86/memprof-basic.ll

  Log Message:
  -----------
  [ThinLTO][MemProf] Support remark emission for thin link and use in MemProf (#182570)

Enable optimization remark emission during the ThinLTO thin link phase.
This is useful for global analysis passes like MemProf context
disambiguation which operate on the summary index and may need to
report diagnostics before any IR modules are available.

Key changes:
- Create a dummy function ("thinlto_remark_dummy") in a private Module
  within the LTO class to provide the necessary Function context for
  OptimizationRemarkEmitter.
- Update MemProfContextDisambiguation to use a callback for remark
  emission, allowing it to report hinted sizes and other diagnostics
  during the thin link.
- Ensure the dummy module and function are safely cleaned up at the end
  of the LTO session via the LTO::cleanup mechanism.


  Commit: f2eff5aa2ffe530658083069ccc2997c0605f4ca
      https://github.com/llvm/llvm-project/commit/f2eff5aa2ffe530658083069ccc2997c0605f4ca
  Author: Eric Feng <55723758+efric at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td

  Log Message:
  -----------
  [mlir][amdgpu] Revise AMDGPU dialect DPP documentation (#182639)

Assisted by: Claude

---------

Signed-off-by: Eric Feng <Eric.Feng at amd.com>


  Commit: 553ce3a11598cc00be929e091fd59055719e7c2b
      https://github.com/llvm/llvm-project/commit/553ce3a11598cc00be929e091fd59055719e7c2b
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

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

  Log Message:
  -----------
  [flang-rt] Temporarily disable destructor call in OwningPtr::delete_ptr. (#182635)

This is causing failures in CUF testing, because the device compiler
cannot identify the static stack size for kernels.


  Commit: bf83bbf9d75f2107c05ed1f5f4b7833d4081748e
      https://github.com/llvm/llvm-project/commit/bf83bbf9d75f2107c05ed1f5f4b7833d4081748e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SlotIndexes.h

  Log Message:
  -----------
  [SlotIndexes] Make IndexListEntry/slot constructor private

This was made public only for some unit tests introduced in
e5e3dccd0741c2cf6e1885f0b6053fcfc6684102 that have now been removed.
Since they have been removed, make the method private to prevent misuse,
remove the warning now that misuse is prevented by visibility, and
remove the description of the destructor given it is redundant with the
code.


  Commit: 17ad5559c215201b9bdb7090b10c4b213861ce93
      https://github.com/llvm/llvm-project/commit/17ad5559c215201b9bdb7090b10c4b213861ce93
  Author: BgZun <137060662+BgZun at users.noreply.github.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp

  Log Message:
  -----------
  [Clang] Added clang diagnostic when snprintf/vsnprintf uses sizeof(dest) for the len parameter

Closes: [#162366](https://github.com/llvm/llvm-project/issues/162366)

---------

Co-authored-by: Bogdan Zunic <bzunic at cisco.com>


  Commit: 1aaa33883b0407d9e427bc105d4014b3a9ae8801
      https://github.com/llvm/llvm-project/commit/1aaa33883b0407d9e427bc105d4014b3a9ae8801
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsBase.td
    A clang/test/TableGen/builtin-docs.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [Clang][TableGen] Add documentation generation infrastructure for builtins (#181573)

Add a `-gen-builtin-docs` TableGen backend that generates RST
documentation from builtin definitions, modeled after the existing
attribute documentation system (`-gen-attr-docs`).

The emitter generates per-builtin RST sections grouped by category,
including
prototype rendering with optional named parameters (via `ArgNames`),
target
feature annotations, and documentation content. A mismatch between
`ArgNames`
count and prototype parameter count is a fatal error.


  Commit: af9ca0e5bea319a976e57cf92d6aa033ffce44b2
      https://github.com/llvm/llvm-project/commit/af9ca0e5bea319a976e57cf92d6aa033ffce44b2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/module/cuda_runtime_api.f90
    M flang/test/Lower/CUDA/cuda-default-stream.cuf

  Log Message:
  -----------
  Revert "[flang][cuda] Add entry points for cudastreamsynchronize (#181932)" (#182657)

This is causing some testing issue. Reverting for now.


  Commit: 7c6159660d97c634965bc387b1267519989b3800
      https://github.com/llvm/llvm-project/commit/7c6159660d97c634965bc387b1267519989b3800
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp

  Log Message:
  -----------
  [clang-tidy] Correctly handle array of pointers in misc-const-correctness (#179059)

In arrays of pointers, `misc-const-correctness` check wrongly inspects
whether the array element type was const-qualified, rather than the type
it points to, leading to redundant `const` suggestions. This patch fixes
the problem.

Closes [#178880](https://github.com/llvm/llvm-project/issues/178880)


  Commit: 24b9655e3626d1440409406827132df12dbee448
      https://github.com/llvm/llvm-project/commit/24b9655e3626d1440409406827132df12dbee448
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCLFI.h
    M llvm/include/llvm/MC/MCLFIRewriter.h
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/lib/MC/MCLFI.cpp
    M llvm/lib/MC/MCLFIRewriter.cpp
    M llvm/lib/MC/MCParser/LFIAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp

  Log Message:
  -----------
  [NFC][LFI] Reduce includes due to c-t impact (#182617)

Removes header includes that don't need to be made at the top-level by
moving transitive dependencies directly into source files and using
forward declarations. Biggest impact is that we no longer include
`MCLFIRewriter.h` in `MCStreamer.h` and `MCAsmParserExtension.h`.


  Commit: 1373aa05ec11dbc137d434bf9926b4978f9afe19
      https://github.com/llvm/llvm-project/commit/1373aa05ec11dbc137d434bf9926b4978f9afe19
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll

  Log Message:
  -----------
  [AArch64] Add clmulh/r v16i8/v8i16/v4i32/v2i64 test coverage (#182305)

Some of the v16i8/v2i64 tests are currently disabled due to #182270 and
#182039


  Commit: ce5c1932e2b278de320d1e7ada3babb361c80643
      https://github.com/llvm/llvm-project/commit/ce5c1932e2b278de320d1e7ada3babb361c80643
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    A llvm/test/CodeGen/RISCV/xqcisls-merge-base-offset-shladd.ll

  Log Message:
  -----------
  [RISCV] Fold shladd into Xqcisls scaled load/store in RISCVMergeBaseOffset (#182221)

We can fold `shxadd\qc.shladd` into base+offset load/store instructions
by transforming the load/store into `Xqcisls` scaled load/store
instructions.

For eg.

```
qc.e.li vreg1, s 
shxadd vreg2, vreg3, vreg1
lx vreg4, imm(vreg2)

can be transformed to

qc.e.li vreg1, s+imm
qc.lrx vreg4, vreg1, vreg3, (1-7)
```

Such patterns are not folded during ISEL because the we prefer the
`ShlAdd` in `isWorthFoldingIntoRegRegScale` which gives us better code
in most cases.

Test case were generated by an AI which I then hand-edited to add the
negative cases.


  Commit: 4a4912294e4088791b56818f0651a5637cc74c19
      https://github.com/llvm/llvm-project/commit/4a4912294e4088791b56818f0651a5637cc74c19
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-powi.ll

  Log Message:
  -----------
  ValueTracking: Handle tracking nan through powi (#179311)


  Commit: b397c9d24196fe4103ad7cfe6bbfdfc08496364b
      https://github.com/llvm/llvm-project/commit/b397c9d24196fe4103ad7cfe6bbfdfc08496364b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/nofpclass.ll

  Log Message:
  -----------
  FunctionAttrs: Basic propagation of nofpclass (#182444)


  Commit: f1bfed10ad5a5214eab553dbec99fa7dfd604551
      https://github.com/llvm/llvm-project/commit/f1bfed10ad5a5214eab553dbec99fa7dfd604551
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/inline-asm-clobber.ll

  Log Message:
  -----------
  [ARM] support `r14` as an alias for `lr` in inline assembly (#179740)

In rustc (and I suspect Clang and Zig) there is some special logic to
rewrite `r14` into `lr` when used in inline assembly. LLVM should
probably support `r14` directly.


https://developer.arm.com/documentation/ddi0211/i/programmer-s-model/registers/the-arm-state-register-set

> You can treat r14 as a general-purpose register at all other times.

This heavily suggests that we should be able to use it as a clobber and
read its value.

This is the arm analogue to
https://github.com/llvm/llvm-project/pull/167783.


  Commit: c93639830af8d54efe5158373b3a6661dbe595c1
      https://github.com/llvm/llvm-project/commit/c93639830af8d54efe5158373b3a6661dbe595c1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  InstCombine: Add baseline test for fcmp-0-select combine (#172380)


  Commit: 8d3e6e709c59024fc6c1b468e366e66368d26e0f
      https://github.com/llvm/llvm-project/commit/8d3e6e709c59024fc6c1b468e366e66368d26e0f
  Author: Hongxu Xu <xuhongxu96 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/vector-reductions.ll

  Log Message:
  -----------
  [InstCombine] Transform splat before n x i1 for vec.reduce.add (#182213)

```llvm
define i1 @src(i1 %0) {
  %2 = insertelement <8 x i1> poison, i1 %0, i32 0
  %3 = shufflevector <8 x i1> %2, <8 x i1> poison, <8 x i32> zeroinitializer
  %4 = tail call i1 @llvm.vector.reduce.add.v8i1(<8 x i1> %3)
  ret i1 %4
}

define i1 @tgt(i1 %0) {
  ret i1 0
}
```

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

`vector_reduce_add(<n x i1>)` to `Trunc(ctpop(bitcast <n x i1> to in))`
interferes with the `vector_reduce_add(<splat>)` to `mul`, so I
exchanged their order.

Relevant PR: #161020


  Commit: fe5096f6983203410d616b408ae8d88cd8cda24c
      https://github.com/llvm/llvm-project/commit/fe5096f6983203410d616b408ae8d88cd8cda24c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h

  Log Message:
  -----------
  [PatternMatch] Use APInt::tryZExtValue. NFC (#182618)


  Commit: 15430ba094bedceb919d5e000adf15977d702983
      https://github.com/llvm/llvm-project/commit/15430ba094bedceb919d5e000adf15977d702983
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner] Use APInt::isPower2() instead of popcount() == 1. NFC (#182600)


  Commit: 7ed0aa2652b4d8d86b9e2d60ce91b7b9046d27cf
      https://github.com/llvm/llvm-project/commit/7ed0aa2652b4d8d86b9e2d60ce91b7b9046d27cf
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Plugin.h
    M offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp
    M offload/plugins-nextgen/level_zero/src/L0Program.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Remove leftover global constructor (#182611) (#182665)

fixes #182611


  Commit: 7a1c498f26cbadf16144ea635c358c83ebcf6c50
      https://github.com/llvm/llvm-project/commit/7a1c498f26cbadf16144ea635c358c83ebcf6c50
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  [InstCombine] Update test

This was breaking buildbots due to a mid-air collision where some change
caused test differences between when the test was put up/passed CI and
when it landed.


  Commit: a67bf7d796df75592a26a377420696e3c7b7993f
      https://github.com/llvm/llvm-project/commit/a67bf7d796df75592a26a377420696e3c7b7993f
  Author: 🍙 𝑹𝒖𝒓𝒊 🎋 <tokynblast at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M .github/workflows/lldb-pylint-action.yml

  Log Message:
  -----------
  Remove whitespace on blank lines (#182574)

I removed some whitespace on a workflow job, which only had spaces.
I did not remove the newline completelty, only the whitespace junk,
which I found by git diffing the head.


  Commit: 6e0054aa512aaa29cc04788291bbf3b4dfcbd2b3
      https://github.com/llvm/llvm-project/commit/6e0054aa512aaa29cc04788291bbf3b4dfcbd2b3
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/test/Transforms/Scalarizer/constant-extractelement.ll

  Log Message:
  -----------
  [Scalarizer] Fix out-of-bounds crash (#180359)

When processing an extractelement instruction with an index that exceeds
the vector size (e.g., extracting index 2147483647 from a 4-element
vector), the scalarizer would calculate an out-of-bounds Fragment index
and crash with an assertion failure in `SmallVector::operator[]`.

This PR adds a bounds check in
`ScalarizerVisitor::visitExtractElementInst` to prevent a crash when the
extractelement index is out of bounds.

Fixes #179880


  Commit: 20bce6de5e72aa7129869315e3a23972bd897285
      https://github.com/llvm/llvm-project/commit/20bce6de5e72aa7129869315e3a23972bd897285
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/faster-string-find.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp

  Log Message:
  -----------
  [clang-tidy] Teach `performance-faster-string-find` about `starts_with`, `ends_with`, and `contains` (#182633)

These aren't "find" functions per se, so they don't totally match the
check name, but the same optimization is applicable to them (for
example, see
https://en.cppreference.com/w/cpp/string/basic_string_view/starts_with.html).
This optimization could be expanded to `operator+=` as well, but that's
a bit more involved, so I'm not doing it in this PR.


  Commit: 18131dca55488478d455d5e36cea97a3f36d794b
      https://github.com/llvm/llvm-project/commit/18131dca55488478d455d5e36cea97a3f36d794b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/lit.cfg.py
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Exclude bitcode tests

These tests fail due to inserted function entry count annotations. Just
exclude them for now given they aren't actually running any passes.


  Commit: 4846e3a400ec427444027d8ae28fd71bcbd4fd4e
      https://github.com/llvm/llvm-project/commit/4846e3a400ec427444027d8ae28fd71bcbd4fd4e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  InstCombine: Fold absorbing fmul of compared 0 into select (#172381)

This is similar to the select-bin-op identity case, except
in this case we are looking for the absorbing value for the
binary operator.

If the compared value is a floating-point 0, and the fmul is
implied to return a +0, put the 0 directly into the select
operand. This pattern appears in scale-if-denormal sequences
after  optimizations assume denormals are treated as 0.

Fold:

```
%fabs.x = call float @llvm.fabs.f32(float %x)
%mul.fabs.x = fmul float %fabs.x, known_positive
%x.is.zero = fcmp oeq float %x, 0.0
%select = select i1 %x.is.zero, float %mul.fabs.x, float %fabs.x

```

To:

```
%fabs.x = call float @llvm.fabs.f32(float %x)
%mul.fabs.x = fmul float %fabs.x,known_positive
%x.is.zero = fcmp oeq float %x, 0.0
%select = select i1 %x.is.zero, float 0.0, float %fabs.x

```

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


  Commit: a6416a8411add524066ffbad288617e280bd0fbe
      https://github.com/llvm/llvm-project/commit/a6416a8411add524066ffbad288617e280bd0fbe
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-tuple.td

  Log Message:
  -----------
  [NFC] Simplify a RegisterInfoEmitter lit test (#182672)

Eliminate SubRegIndex defs that are not used/required for the test.


  Commit: 8e2222795bcc70bfdf8d7506c19ca8cee59be548
      https://github.com/llvm/llvm-project/commit/8e2222795bcc70bfdf8d7506c19ca8cee59be548
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/TableGen.cmake

  Log Message:
  -----------
  Revert "[CMake][TableGen] Fix Ninja depslog error with implicit outputs on Ninja <1.10" (#182695)

Reverts llvm/llvm-project#179842

This seems to break some dependency tracking, as I no longer see .inc
files being regenerated when I update a TableGen .cpp file. Reverting
for now per the discussion on the PR.


  Commit: 4ec0c73227869d8cd782f819faee21dd3c5537a7
      https://github.com/llvm/llvm-project/commit/4ec0c73227869d8cd782f819faee21dd3c5537a7
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    M llvm/test/CodeGen/Hexagon/bfloat_vec.ll
    M llvm/test/CodeGen/Hexagon/constp-extract.ll
    A llvm/test/CodeGen/Hexagon/frame-pointer-attr.ll
    M llvm/test/CodeGen/Hexagon/hasfp-crash1.ll

  Log Message:
  -----------
  [Hexagon] Fix hasFP to respect frame-pointer attribute unconditionally (#181524)

HexagonFrameLowering::hasFPImpl() incorrectly gated the
DisableFramePointerElim check behind MFI.getStackSize() > 0. This meant
leaf functions with no stack allocation would not get a frame pointer
even when "frame-pointer"="all" (-fno-omit-frame-pointer) was set,
violating the user/ABI request. Every other LLVM target checks
DisableFramePointerElim unconditionally.

Move the DisableFramePointerElim and EliminateFramePointer checks
outside the getStackSize() > 0 guard so they are always evaluated.
Update affected tests whose CHECK patterns change due to the now-
correct allocframe emission.


  Commit: 09d791608a4cdd317d12a4399194ccf8d0940269
      https://github.com/llvm/llvm-project/commit/09d791608a4cdd317d12a4399194ccf8d0940269
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/bitcnt-big-integer.ll

  Log Message:
  -----------
  [X86] bitcnt-big-integer.ll - add non-VLX avx512vpopcntdq test coverage (#182676)

Pulled out of #182547


  Commit: 567a5466edba854a097744c14ecdb7b9a388ba15
      https://github.com/llvm/llvm-project/commit/567a5466edba854a097744c14ecdb7b9a388ba15
  Author: YohayAiTe <40911048+YohayAiTe at users.noreply.github.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp

  Log Message:
  -----------
  Clean vector clamps in X86 GlobalISel. (#182664)


  Commit: 5e0ef90141b7df64cd1b8cd6aec763ff347a6458
      https://github.com/llvm/llvm-project/commit/5e0ef90141b7df64cd1b8cd6aec763ff347a6458
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/urem.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [profcheck][CVP] Adding 'unknown' branch weights for `urem` expansion in CVP (#180637)

This change ensures that !prof metadata is preserved and scaled
appropriately when the `CorrelatedValuePropagation` (CVP) pass expands
an expensive `urem` instruction into a sequence of `icmp`, `select`, and
`sub`.

In the RP, we add the `unknown`(50/50) branch weights for the new
`select` based on the original instruction's profile data.

Co-authored-by: Jin Huang <jingold at google.com>


  Commit: 62e55b410c1de01a9ba0cdd324fd53984e15c7b5
      https://github.com/llvm/llvm-project/commit/62e55b410c1de01a9ba0cdd324fd53984e15c7b5
  Author: Sergey Subbotin <ssubbotin at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add per-operator granularity for BreakBinaryOperations (#181051)

## Summary

Extend `BreakBinaryOperations` to accept a structured YAML configuration
with per-operator break rules and minimum chain length gating via
`PerOperator`.

- **Per-operator rules**: specify break style (`Never`, `OnePerLine`,
`RespectPrecedence`) for specific operator groups
- **Minimum chain length**: only trigger breaking when a chain has N or
more operators
- **Fully backward-compatible**: the simple scalar form
(`BreakBinaryOperations: OnePerLine`) behaves identically to the current
enum value

RFC discussion:
https://discourse.llvm.org/t/rfc-per-operator-granularity-for-breakbinaryoperations/89800

### New YAML syntax

```yaml
BreakBinaryOperations:
  Default: Never
  PerOperator:
    - Operators: ['&&', '||']
      Style: OnePerLine
      MinChainLength: 3
    - Operators: ['|']
      Style: OnePerLine
```

### Motivation

`BreakBinaryOperations` operates at the level of all binary operators
simultaneously. Enabling `OnePerLine` for `&&`/`||` condition chains
also forces it on `+`, `|`, and other operators, which may not be
desired. The only workaround today is `// clang-format off`.

## Test plan

- [x] All existing `BreakBinaryOperations` unit tests updated and
passing
- [x] New tests for per-operator rules (`&&`/`||` OnePerLine + default
Never)
- [x] New tests for multiple operator groups (`&&`/`||` + `|`)
- [x] New tests for `MinChainLength` gating (chain of 2 vs 3+)
- [x] Config parse tests for structured YAML form
- [x] RST documentation auto-generated via `dump_format_style.py`
- [x] Release notes updated


  Commit: 7063b22c6371a4624f75e77dadd1a40a2824eaaa
      https://github.com/llvm/llvm-project/commit/7063b22c6371a4624f75e77dadd1a40a2824eaaa
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/X86/phdr-load-order.test

  Log Message:
  -----------
  [BOLT] Always place new PT_LOAD after existing ones (#182642)

Insert new PT_LOAD segments right after the last existing PT_LOAD in the
program header table, instead of before PT_DYNAMIC or at the end. This
maintains the ascending p_vaddr order required by the ELF specification.

Previously, new segments could end up breaking PT_LOAD p_vaddr order
when PT_LOAD segments followed PT_DYNAMIC or PT_GNU_STACK. This lead to
runtime loader incorrectly assessing dynamic object size and silently
corrupting memory.


  Commit: c6ade8a170b259fabc9999f53a1bd8a73e5ef111
      https://github.com/llvm/llvm-project/commit/c6ade8a170b259fabc9999f53a1bd8a73e5ef111
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    A llvm/test/CodeGen/AArch64/unsupported-fpext-x86-fp80.ll

  Log Message:
  -----------
  [SelectionDAG] Emit error instead of asserting for unsupported FP_EXTEND (#182660)

Replace the assertion failure in
`DAGTypeLegalizer::SoftenFloatRes_FP_EXTEND` with a user-friendly error
when no libcall is available for the requested

Fix
Replace the `assert` with an `emitError` call that reports the
unsupported
conversion gracefully and returns a poison value


Fixes: #182449


  Commit: fdce869d723f8032b48bb0e551b59a13b5d002d9
      https://github.com/llvm/llvm-project/commit/fdce869d723f8032b48bb0e551b59a13b5d002d9
  Author: dan rouhana <danielrouhana at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/tools/llvm-mca/AArch64/Apple/darwin-subsections-via-symbols.s
    M llvm/tools/llvm-mca/CodeRegionGenerator.h

  Log Message:
  -----------
  [llvm-mca][Darwin] Fix crash on .subsections_via_symbols in asm input (#182694)

## Summary

This PR fixes an llvm-mca crash on Darwin assembly containing
`.subsections_via_symbols`. The directive is forwarded by
`DarwinAsmParser` to `emitSubsectionsViaSymbols()`, which crashes when
it hits the base `MCStreamer` `llvm_unreachable` path. The fix adds a
no-op override in `llvm/tools/llvm-mca/CodeRegionGenerator.h`, scoped to
llvm-mca only

## Problem manifestation

I ran across this while tinkering around with making an interactive
interpreter/code analyzer and implementing apple silicon support.

## Root cause

- `DarwinAsmParser::parseDirectiveSubsectionsViaSymbols` calls
`getStreamer().emitSubsectionsViaSymbols()`
- llvm-mca uses `MCStreamerWrapper`, derived from `MCStreamer`
- `MCStreamerWrapper` did not override `emitSubsectionsViaSymbols()`
- the call therefore reached `MCStreamer::emitSubsectionsViaSymbols()`,
which is `llvm_unreachable`, causing a crash

## Reproduction

I was able to reproduce this in three ways (note: no difference in
behavior was observed with the inclusion/exclusion of `-target
arm64-apple-macos` or any other arch flags):

1. AppleClang-generated assembly:
    ```bash
    cat > /tmp/repro.cpp <<'EOF'
    int foo(int x) { return x + 1; }
    EOF
    
/usr/bin/clang++ -target arm64-apple-macos -O0 -S /tmp/repro.cpp -o
/tmp/repro-appleclang.s
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/repro-appleclang.s
    ```

2. Homebrew Clang-generated assembly:
    ```bash
    cat > /tmp/repro.cpp <<'EOF'
    int foo(int x) { return x + 1; }
    EOF
    
/opt/homebrew/opt/llvm/bin/clang++ -target arm64-apple-macos -O0 -S
/tmp/repro.cpp -o /tmp/repro-hbclang.s
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/repro-hbclang.s
    ```

3. Handwritten Darwin assembly:
    ```bash
    cat > /tmp/min.s <<'EOF'
      .text
      .subsections_via_symbols
      .globl _foo
      _foo:
          ret
    EOF
    
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/min.s
    ```

## Fix

Add a no-op `emitSubsectionsViaSymbols()` override to
`MCStreamerWrapper` in `llvm/tools/llvm-mca/CodeRegionGenerator.h`.

This keeps the fix local to llvm-mca’s analysis streamer and does not
change Mach-O object emission behavior. A similar pattern fix is
implemented in `llvm/lib/Object/RecordStreamer.h`
([link](https://github.com/llvm/llvm-project/blob/main/llvm/lib/Object/RecordStreamer.h#L57-L60)).

## Validation

Reproduced and verified on macOS arm64 with the above three reproduction
cases:
1. assembly generated by AppleClang
2. assembly generated by Homebrew Clang
3. manually-authored `.s` file containing `.subsections_via_symbols`

`llvm-mca --show-encoding --register-file-stats` no longer crashes!!

## Notes

>From what I can surmise, this is a consumer-side fix (llvm-mca
parser/streamer), not a producer fix in clang, since the directive is
valid Darwin assembly and can appear in external input files. This
seemed to me like the most targeted, distilled fix that follows the same
pattern used elsewhere. Happy to revise the approach if there’s a better
fit for llvm-mca, thanks for taking a look!!


  Commit: 9d9c7fc00bdddd72e78b19e9fbb6af9d07c2218b
      https://github.com/llvm/llvm-project/commit/9d9c7fc00bdddd72e78b19e9fbb6af9d07c2218b
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Print unread message buffer on start (#178027)

This is equivalent of kgdb_dmesg() in fbsd-kvm.c in FreeBSD kgdb(1)
port. Unread kernel messages is only printed in interactive mode (i.e.
not in batch mode) to mimic KGDB's behaviour.

Example output:
```
➜ sudo ./build/bin/lldb /boot/kernel/kernel -c /var/crash/vmcore.last
(lldb) target create "/boot/kernel/kernel" --core "/var/crash/vmcore.last"

Unread portion of the kernel message buffer:
panic: kdb_sysctl_panic
cpuid = 1
time = 1769364579
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe01b435fa20
vpanic() at vpanic+0x136/frame 0xfffffe01b435fb50
panic() at panic+0x43/frame 0xfffffe01b435fbb0
kdb_sysctl_panic() at kdb_sysctl_panic+0x63/frame 0xfffffe01b435fbe0
sysctl_root_handler_locked() at sysctl_root_handler_locked+0x9c/frame 0xfffffe01b435fc30
sysctl_root() at sysctl_root+0x22f/frame 0xfffffe01b435fcb0
userland_sysctl() at userland_sysctl+0x196/frame 0xfffffe01b435fd50
sys___sysctl() at sys___sysctl+0x65/frame 0xfffffe01b435fe00
amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe01b435ff30
fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe01b435ff30
--- syscall (202, FreeBSD ELF64, __sysctl), rip = 0x3f67cad1c8da, rsp = 0x3f67c80261d8, rbp = 0x3f67c8026220 ---
KDB: enter: panic

Core file '/var/crash/vmcore.last' (x86_64) was loaded.
(lldb)
```

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: f912679b761bdd3d8ab3a1042d3ea848a663e201
      https://github.com/llvm/llvm-project/commit/f912679b761bdd3d8ab3a1042d3ea848a663e201
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang/test/Lower/forall/forall-construct-4.f90
    M flang/test/Lower/forall/forall-construct.f90
    M flang/test/Lower/forall/forall-ranked.f90
    M flang/test/Lower/forall/forall-slice.f90
    M flang/test/Lower/forall/forall-stmt.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 19) (#182554)

Tests converted from test/Lower/forall: forall-construct-4.f90,
forall-construct.f90, forall-ranked.f90, forall-slice.f90,
forall-stmt.f90


  Commit: c04b00de750801238bc85f11874c66a41b61b2c5
      https://github.com/llvm/llvm-project/commit/c04b00de750801238bc85f11874c66a41b61b2c5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Relocations.cpp

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for ARM (#182440)

Implement ARM::scanSectionImpl, following the pattern established for
AArch64 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/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle TLS inline: checkTlsLe for TLS LE, handleTlsIe<false> for
  TLS IE (no IE-to-LE optimization for ARM), and direct flag/reloc
  emission for TLS GD/LD (no GD/LD optimization for ARM).
- Set hasGotOffRel for R_GOTREL/R_GOTONLY_PC relocations.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and preprocessRelocs.


  Commit: d5b94174971f4ce5d8659e4ade27e21858221514
      https://github.com/llvm/llvm-project/commit/d5b94174971f4ce5d8659e4ade27e21858221514
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/SmallString.h
    M llvm/unittests/ADT/SmallStringTest.cpp

  Log Message:
  -----------
  [LLVM][ADT] Add some more `starts_with`, `ends_with`, and `contains` overloads to `SmallString` (#182692)

This makes `SmallString` consistent with `std::string`,
`std::string_view`, and `StringRef`.


  Commit: 76af74004e8bd1be55dc3b6b497575492fc47586
      https://github.com/llvm/llvm-project/commit/76af74004e8bd1be55dc3b6b497575492fc47586
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticCommentKinds.td
    M clang/lib/AST/CommentSema.cpp

  Log Message:
  -----------
  [clang][diagnostics] Refactor `warn_doc_function_method_decl_mismatch` to use enum_select (#181769)

Related: https://github.com/llvm/llvm-project/issues/123121

This patch refactors the `warn_doc_function_method_decl_mismatch`
diagnostic to use `enum_select` instead of `select`. This gets rid of
magic numbers in its caller and improves readability.


  Commit: d92011fe7df8955423a8ed6e3d12841d9719f460
      https://github.com/llvm/llvm-project/commit/d92011fe7df8955423a8ed6e3d12841d9719f460
  Author: Mohamed Ali <mohmedali1462005 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

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

  Log Message:
  -----------
  [clang][NFC] Fix typo in SemaBoundsSafety.cpp comments (#181585)

Minor comment fix.


  Commit: a0f344f69d7eb5d87dd78c628a196a3a7440e792
      https://github.com/llvm/llvm-project/commit/a0f344f69d7eb5d87dd78c628a196a3a7440e792
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/tools/mlir-tblgen/OpDocGen.cpp

  Log Message:
  -----------
  [mlir-tblgen] Remove `namespace {}` around OpDocGroup (#182721)

This is temporary workaround for Asan report #182720.


  Commit: 6e9a308a884d18315fa3cb31693718148dfa63dd
      https://github.com/llvm/llvm-project/commit/6e9a308a884d18315fa3cb31693718148dfa63dd
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/lib/Basic/DiagnosticIDs.cpp

  Log Message:
  -----------
  [clang] Avoid calling isInSystemMacro() too often (#182217)

This caused a performance regression as reported in
https://github.com/llvm/llvm-project/pull/141950


  Commit: 31daf5cd55beb30c3cec8b525a17a8de875e0502
      https://github.com/llvm/llvm-project/commit/31daf5cd55beb30c3cec8b525a17a8de875e0502
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Add OPC_EmitIntegerByHwMode0 and OPC_CheckChildXTypeByHwMode0. NFC (#182686)

Add versions of these opcodes that implicitly call getValueTypeForHwMode
with index 0.

This reduces llc size by ~100K.


  Commit: be2588ae02f2348c8932311a11ffb512e20009fc
      https://github.com/llvm/llvm-project/commit/be2588ae02f2348c8932311a11ffb512e20009fc
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][ExprConst] Remove bogus diagnostic (#181792)

This diagnostic is untested and this code path should be dead.


  Commit: 8701cfc0008c4756f04f9839fd4afbb3f112bdad
      https://github.com/llvm/llvm-project/commit/8701cfc0008c4756f04f9839fd4afbb3f112bdad
  Author: Zinovy Nis <zinovy.nis at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    M clang-tools-extra/docs/clang-tidy/checks/performance/string-view-conversions.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp

  Log Message:
  -----------
  [clang-tidy] perf-str-view-conv improvement: support c_str/data fixing (#181473)

Handle new cases:
```
foo_sv(42, std::string(sv).c_str(), 3.14);  -> foo_sv(42, sv, 3.14);
foo_sv(42, std::string(sv).data(), 2.71);  -> foo_sv(42, sv, 2.71);
```


  Commit: 8542514e5cc39730cf40b939a08edc68374a94e5
      https://github.com/llvm/llvm-project/commit/8542514e5cc39730cf40b939a08edc68374a94e5
  Author: Twice <twice at apache.org>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Allow passing dialect as a class keyword argument (#182465)

Previously, we constructed new ops using the pattern `class
MyOp(MyInt.Operation)`.

Now we’ve added a new pattern: `class MyOp(Operation, dialect=MyInt)`,
which allows more flexible composition. For example:
```python
class BinOpBase(Operation): # it can be used in any dialect!
  res: Result[Any]
  lhs: Operand[Any]
  rhs: Operand[Any]
  
class MyInt(Dialect, name="myint"):
  pass

class AddOp(BinOpBase, dialect=MyInt, name="add"):
  ...
```


  Commit: 15487238c4e5d433f8e2078fdf1534ae6a0e8d10
      https://github.com/llvm/llvm-project/commit/15487238c4e5d433f8e2078fdf1534ae6a0e8d10
  Author: dianqk <dianqk at dianqk.net>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    A llvm/test/CodeGen/SPARC/stack-slot-coloring.mir

  Log Message:
  -----------
  [SPARC] Set how many bytes load from or store to stack slot (#182674)

Refer from: https://reviews.llvm.org/D44782

The testcase is copied from
llvm/test/CodeGen/RISCV/stack-slot-coloring.mir.


  Commit: 4226250a421b6dbb734d4358fcb36a97da2278d7
      https://github.com/llvm/llvm-project/commit/4226250a421b6dbb734d4358fcb36a97da2278d7
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h
    M mlir/include/mlir/Dialect/XeGPU/uArch/uArchBase.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Fix matrix ops layout propagation (#182268)


  Commit: c42ad5898e67e24d218e1310685d17d2590c44f6
      https://github.com/llvm/llvm-project/commit/c42ad5898e67e24d218e1310685d17d2590c44f6
  Author: Sietze Riemersma <43845930+KungFuDonkey at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
    A clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
    A llvm/test/CodeGen/DirectX/WaveActiveProduct.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

  Log Message:
  -----------
  [HLSL][DXIL][SPRIV] Added WaveActiveProduct intrinsic #164385 (#165109)

>From issue #99165, adds the implementation of WaveActiveProduct. Mainly
followed how WaveActiveSum was implemented

- [x] Implement WaveActiveProduct clang builtin,
- [x] Link WaveActiveProduct clang builtin with hlsl_intrinsics.h
- [x] Add sema checks for WaveActiveProduct to
CheckHLSLBuiltinFunctionCall in SemaChecking.cpp
- [x] Add codegen for WaveActiveProduct to EmitHLSLBuiltinExpr in
CGBuiltin.cpp
- [x] Add codegen tests to
clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
- [x] Add sema tests to
clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
- [x] Create the int_dx_WaveActiveProduct intrinsic in
IntrinsicsDirectX.td
- [x] Create the DXILOpMapping of int_dx_WaveActiveProduct to 119 in
DXIL.td
- [x] Create the WaveActiveProduct.ll and WaveActiveProduct_errors.ll
tests in llvm/test/CodeGen/DirectX/
- [x] Create the int_spv_WaveActiveProduct intrinsic in
IntrinsicsSPIRV.td
- [x] In SPIRVInstructionSelector.cpp create the WaveActiveProduct
lowering and map it to int_spv_WaveActiveProduct in
SPIRVInstructionSelector::selectIntrinsic.
- [x] Create SPIR-V backend test case in
llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

Also created the [offload
tests](https://github.com/llvm/offload-test-suite/pull/486)


  Commit: 844619e52653d084c898131e890e0c2411033e67
      https://github.com/llvm/llvm-project/commit/844619e52653d084c898131e890e0c2411033e67
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    R clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
    R clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
    R llvm/test/CodeGen/DirectX/WaveActiveProduct.ll
    R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

  Log Message:
  -----------
  Revert "[HLSL][DXIL][SPRIV] Added WaveActiveProduct intrinsic #164385" (#182741)

Reverts llvm/llvm-project#165109


  Commit: 8d53f11955057a5ffd1482978631128fa8ae7e74
      https://github.com/llvm/llvm-project/commit/8d53f11955057a5ffd1482978631128fa8ae7e74
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/extern_c.pass.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/include_as_c.sh.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/stdint_h.xopen_source.compile.pass.cpp
    M libcxx/test/extensions/posix/xopen_source.gen.py
    M libcxx/test/libcxx-03/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx-03/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx-03/transitive_includes.gen.py
    M libcxx/test/libcxx-03/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_nontrivial.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_trivial.pass.cpp
    M libcxx/test/libcxx/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx/assertions/semantics/assertion_semantic_incorrect_value.sh.cpp
    M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
    M libcxx/test/libcxx/language.support/timespec_get.xopen.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/selftest/modules/std-module.sh.cpp
    M libcxx/test/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/modules/std.pass.cpp
    M libcxx/utils/libcxx/test/config.py
    M libcxx/utils/libcxx/test/dsl.py
    M libcxx/utils/libcxx/test/format.py
    M libcxx/utils/libcxx/test/modules.py

  Log Message:
  -----------
  [libc++] Enable additional tests when Clang modules are enabled (#168967)

Disabling tests when Clang modules are enabled is not great because we
are moving more and more tests towards using Clang modules by default.
Instead, disable Clang modules on a per-test basis.


  Commit: d7170f6235ec3eb86cd8551d49be34c255a33eed
      https://github.com/llvm/llvm-project/commit/d7170f6235ec3eb86cd8551d49be34c255a33eed
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/docs/TestSuiteGuide.md
    R llvm/docs/TestSuiteMakefileGuide.rst
    M llvm/docs/TestingGuide.rst

  Log Message:
  -----------
  [llvm] Remove the docs for the (now removed) LLVM test-suite Makefiles (#179288)

The LLVM test suite used to provide a Makefile-based suite, which had
been deprecated and mostly unmaintained for many years. As explained in
https://discourse.llvm.org/t/llvm-test-suite-removing-the-deprecated-makefiles,
we recently got consensus to remove that test suite, which was done in
llvm/llvm-test-suite#320. This patch cleans up the related
documentation.


  Commit: 0d0012ec63dfd02a124c8b3c96683eb4103051aa
      https://github.com/llvm/llvm-project/commit/0d0012ec63dfd02a124c8b3c96683eb4103051aa
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp

  Log Message:
  -----------
  [CIR] Emit cir.zero directly in Vector logical ops (#182703)

Emit `cir.zero` directly instead of `vec.create<n, 0>` that will be
folded to `cir.const_vector<n, 0>` later


  Commit: 188346d433d61909cf1abc6749cec973b1ca51f9
      https://github.com/llvm/llvm-project/commit/188346d433d61909cf1abc6749cec973b1ca51f9
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll

  Log Message:
  -----------
  [DAGCombiner] Add legality check for CLMULR fold to prevent infinite loop (#182376)

The bitreverse(clmul(bitreverse, bitreverse)) -> clmulr fold was missing
a legality check, causing an infinite loop when CLMULR isn't supported
on the target. Added the check to match other folds in visitBITREVERSE.

Fixes #182270


  Commit: d3081aafc47eccba242ffc3cc43ecfcb545a51bb
      https://github.com/llvm/llvm-project/commit/d3081aafc47eccba242ffc3cc43ecfcb545a51bb
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/SystemZ/vectorized-epilogue-loop.ll

  Log Message:
  -----------
  [SystemZ, LoopVectorizer] Enable vectorization of epilogue loops. (#172925)

This enables vectorization of epilogue loops produced by LoopVectorizer on
SystemZ.

LoopVectorizationCostModel::isEpilogueVectorizationProfitable() and
TTI.preferEpilogueVectorization() have been refactored slightly so that
targets can override preferEpilogueVectorization(ElementCount Iters) and
directly control this, whereas before this depended on
TTI.getMaxInterleaveFactor() as well.

The Iters passed to preferEpilogueVectorization() reflects the total number
of scalar iterations performed in the vectorized loop (including interleaving).

The default implementation of preferEpilogueVectorization() now subsumes
the old check against getMaxInterleaveFactor(). This patch should be NFC for
other targets.


  Commit: 1161d0732a004814fb42e9b3d4b15b5660cc3870
      https://github.com/llvm/llvm-project/commit/1161d0732a004814fb42e9b3d4b15b5660cc3870
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-freeze.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.mir
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    M llvm/test/CodeGen/AArch64/rem-by-const.ll
    M llvm/test/CodeGen/X86/GlobalISel/sub-scalar.ll

  Log Message:
  -----------
  [GlobalISel] Add sub_same_val rewrites from SelectionDAG (#181134)

This PR adds the patterns `// Fold x op x -> 0` for `G_SUB` and `G_XOR`
operations to GlobalISel.

SelectionDAG rewrite:
https://github.com/llvm/llvm-project/blob/838be78e44cd1f70006eb508bfc925e3e56aac03/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L4192


  Commit: 1bf4ca3a19d675390f2188ea21a58f86fa53feb8
      https://github.com/llvm/llvm-project/commit/1bf4ca3a19d675390f2188ea21a58f86fa53feb8
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.mir

  Log Message:
  -----------
  [GlobalISel] Add sub_one_from_sub from SelectionDAG (#181670)

This PR adds the rewrite `// fold (A - B) - 1 -> add (xor B, -1), A`
from
[SelectionDAG](https://github.com/llvm/llvm-project/blob/3765b09d20e01976a6ab6f8b922a6b93751fbf44/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L4411)
to GlobalISel.


  Commit: d8f778935a5bf8a173a3c1d886fd736a4ef6cf05
      https://github.com/llvm/llvm-project/commit/d8f778935a5bf8a173a3c1d886fd736a4ef6cf05
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/Matchers.h

  Log Message:
  -----------
  [clang-tidy][NFC] Fix llvm-use-ranges warnings on codebase (#182758)


  Commit: 1dcaf4793a150475d84114cb865d95564ff6d6e5
      https://github.com/llvm/llvm-project/commit/1dcaf4793a150475d84114cb865d95564ff6d6e5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

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

  Log Message:
  -----------
  [IVDescriptors] Identify min/max recurrences in single pass. (#163460)

This patch ties to extend the approach from
https://github.com/llvm/llvm-project/pull/141431 to all min/max
recurrence kinds.

This patch adds a new getMinMaxRecurrence that identifies all min/max
recurrences in a single pass. It starts at the backedge value of a phi
and tries to identify the kind of the min/max recurrences.

It then walks from the backedge value to its operands recursively until
it reaches out-of-loop values or the phi.

Then users of both the backedge value and all instructions in the chain
from backedge value to phi are checked.

This consolidates all logic to identify min/max recurrences to a single
function, and avoids the need to try to identify each min/max reduction
kind individually.

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


  Commit: d999f94aee4e630804214812d81e6916ca67c7bf
      https://github.com/llvm/llvm-project/commit/d999f94aee4e630804214812d81e6916ca67c7bf
  Author: John Mitchell <fauxprogrammer at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp

  Log Message:
  -----------
  [clang-format] Add C language support for IntegerLiteralSeparator (#182296)

C23 language standard has added support for the C++ tick mark as a
numeric separator. Add support to clang-format so that when formatting
configured for LK_C this code path is enabled.

Fixes #179686


  Commit: 57f486195aff60037686418d26c473f4a287dcdf
      https://github.com/llvm/llvm-project/commit/57f486195aff60037686418d26c473f4a287dcdf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/select-first-index-fp.ll
    R llvm/test/Transforms/LoopVectorize/select-fmax-last-index.ll
    R llvm/test/Transforms/LoopVectorize/select-fmin-last-index.ll
    A llvm/test/Transforms/LoopVectorize/select-last-index-fp.ll

  Log Message:
  -----------
  [LV] Add additional tests for FP argmin/argmax.

Extend existing tests to cover both finding first/last argmin/argmax for
floating point reductions.


  Commit: 37a32d47fb2cfa4db8405ed9184a6bc331420d77
      https://github.com/llvm/llvm-project/commit/37a32d47fb2cfa4db8405ed9184a6bc331420d77
  Author: David Green <david.green at arm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/bfx.ll
    M llvm/test/CodeGen/Thumb/pr35836.ll
    M llvm/test/CodeGen/Thumb/pr35836_2.ll

  Log Message:
  -----------
  [ARM] Regenerate bfx.ll and pr35836.ll tests. NFC


  Commit: 690312e08885eca30759c108e9e47ebf4e5eceba
      https://github.com/llvm/llvm-project/commit/690312e08885eca30759c108e9e47ebf4e5eceba
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    A llvm/test/Transforms/LoopVectorize/find-last-iv-interleave.ll
    A llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-expr.ll
    A llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
    R llvm/test/Transforms/LoopVectorize/find-last-sink-based-iv-expr.ll

  Log Message:
  -----------
  [LV] Add additional find-last reduction tests with sink-able exprs.


  Commit: bd3b163dce306040e2fa8d3bf5eef2385fc0bb37
      https://github.com/llvm/llvm-project/commit/bd3b163dce306040e2fa8d3bf5eef2385fc0bb37
  Author: Eli Friedman <efriedma at qti.qualcomm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/freeze-fp-ops.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/nsw.ll
    M llvm/test/Transforms/InstCombine/select-gep.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible.ll
    M llvm/test/Transforms/InstCombine/urem-via-cmp-select.ll
    M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll

  Log Message:
  -----------
  Revert "[InstCombine] Allow freezing multiple operands (#154336)" (#182769)

This reverts commit f8f6965ceece9e330ddb66db5f402ecfb5e3ad34.

This is causing infinte loops interacting with other transforms. See
discussion on #182647 .


  Commit: 648193e1619f7af68230f6eddc526af542446cd8
      https://github.com/llvm/llvm-project/commit/648193e1619f7af68230f6eddc526af542446cd8
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/unittests/Dialect/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/InferConvolutionDimsTest.cpp

  Log Message:
  -----------
  Reapply "[mlir][linalg] Make conv dim inference return pairing (outputImage, filterLoop)" (#182740)

The original method sorts all the dimensions which loses the information
about pairing. It makes other transformation that works on generic op
form harder. The revision ensures the pairing, so callers have more
useful information when they work on transformations.

The revision was reverted because of memory leak. The fix is using
OwningOpRef to wrap ModuleOp, so the nested operations are destroyed at
the end, which is similar to other MLIR unittests.

---------

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 8e8974e5ebb0aa73abb498f10133756d3fd37711
      https://github.com/llvm/llvm-project/commit/8e8974e5ebb0aa73abb498f10133756d3fd37711
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M polly/lib/External/isl/GIT_HEAD_ID
    M polly/lib/External/isl/isl_ast_build.c
    M polly/lib/External/isl/isl_ast_build_private.h
    M polly/lib/External/isl/isl_ast_codegen.c
    M polly/lib/External/isl/isl_coalesce.c
    M polly/lib/External/isl/isl_test2.cc
    M polly/lib/External/isl/test_inputs/codegen/omega/wak1-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/wak2-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/wak2-1.c
    M polly/lib/External/isl/test_inputs/codegen/redundant.c
    M polly/lib/External/isl/test_inputs/codegen/shift2.c
    M polly/test/DeLICM/reduction_looprotate_hoisted.ll
    M polly/test/DependenceInfo/reduction_multiple_reductions_2.ll
    M polly/test/ScopInfo/invariant_load_addrec_sum.ll
    M polly/test/ScopInfo/long-sequence-of-error-blocks.ll
    M polly/test/ScopInfo/multidim_2d_with_modref_call.ll
    M polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll
    M polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll
    M polly/test/ScopInfo/wraping_signed_expr_5.ll

  Log Message:
  -----------
  [Polly] Update isl to isl-0.27-82-g38cf72a4 (#182786)

Update isl to include
https://repo.or.cz/isl.git/commit/38cf72a41b708475fc22dc9fc62c7caae1ac29f6
which fixes #179993. This changes some string representations of ISL
objects in tests which are updated.

Fixes #179993

Thanks @skimo-openhub for the fix and @thapgua for the bugreport.


  Commit: 5b1a0230d9fe3480c41acf3ecbc855027b4066a3
      https://github.com/llvm/llvm-project/commit/5b1a0230d9fe3480c41acf3ecbc855027b4066a3
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc][CMake] Add COMPONENT ${ARG_PARENT_TARGET} to install (#182716)

Toolchain can specify the component to selectively install libclc to a
deploy folder. E.g. our downstream SYCL toolchain deploy:
https://github.com/intel/llvm/blob/e7b423fd517d/sycl/CMakeLists.txt#L531

Also check ARG_PARENT_TARGET is defined and non-empty.

Co-authored-by: Jinsong Ji <jinsong.ji at intel.com>


  Commit: 686acf63823734b38f55dd8ae6fcd8aa27930f15
      https://github.com/llvm/llvm-project/commit/686acf63823734b38f55dd8ae6fcd8aa27930f15
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
    M mlir/test/Dialect/MemRef/invalid.mlir
    M mlir/test/Dialect/Tensor/canonicalize.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir] Make [tensor|memref]::ExpandShapeOp verifier stricter. (#181020)

The number of dynamic dims in output_shape is expected to be as the same
as the result type.

The revision also trims double whitespaces from the doc, because it also
updates the op description.

---------

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: e37c985ba09d424a1c8b553a8c511b18f437d386
      https://github.com/llvm/llvm-project/commit/e37c985ba09d424a1c8b553a8c511b18f437d386
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/include/__atomic/atomic.h

  Log Message:
  -----------
  [libc++] Fix typo in atomic.h comment (#182719)


  Commit: 384106b8ec2a7afc43e7b263af598429d50f068e
      https://github.com/llvm/llvm-project/commit/384106b8ec2a7afc43e7b263af598429d50f068e
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-conversion.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-fma.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-fp.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-permutation.s

  Log Message:
  -----------
  [RISCV] Update Andes45 vector floating-point arithmetic scheduling info (#181289)

This PR adds latency/throughput for all RVV floating-point arithmetic to
the andes45 series scheduling model.


  Commit: 0285308d34a5122e6e6833690d4f973347293394
      https://github.com/llvm/llvm-project/commit/0285308d34a5122e6e6833690d4f973347293394
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/Target/X86/X86TargetMachine.h

  Log Message:
  -----------
  [CodeGen][NewPM] Name parameters in buildCodeGenPipeline

This is consistent with the coding style, and makes things consistent
between the various header files/improves readability slightly.

Reviewers: 

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


  Commit: 2617cc5e82da19820d3da531c84df95f59e63b42
      https://github.com/llvm/llvm-project/commit/2617cc5e82da19820d3da531c84df95f59e63b42
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/Analysis/CostModel/X86/clmul.ll
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/RISCV/clmulh.ll
    M llvm/test/CodeGen/RISCV/clmulr.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [TargetLowering][RISCV] Avoid ISD::MUL in expandCLMUL if hasBitTest or MUL requires a library call. (#182389)

Scalar multiply is not part of the most basic RISC-V ISA. Use a
and+setcc+select for these targets.

The and+setcc+select is also beneficial for targets with bit test
instructions. RISC-V may not get the full benefit here due to
not having a cmove-like instruction without Zicond.

Co-authored-by: fbrv <Fabio.Baravalle at gmail.com>


  Commit: ff88b83fed12d12d513e3cb45cd5f2bf1c230d3d
      https://github.com/llvm/llvm-project/commit/ff88b83fed12d12d513e3cb45cd5f2bf1c230d3d
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Handle extracts for middle blocks also used by early exiting blocks. NFC (#181789)

Currently createExtractsForLiveOuts only handles creating extracts when
the middle block has one predecessor, but if an early exit exits to the
same block as the latch then it might have multiple predecessors.

This handles the latter case to avoid the need to handle it in
VPlanTransforms::handleUncountableEarlyExits. Addresses the comment in
https://github.com/llvm/llvm-project/pull/174864#discussion_r2794153217


  Commit: 059accca5367283d842cfb2bbe03aa45af2fc543
      https://github.com/llvm/llvm-project/commit/059accca5367283d842cfb2bbe03aa45af2fc543
  Author: Twice <twice at apache.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/ExtensibleDialect.h
    M mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/ExtensibleDialect.cpp
    M mlir/test/python/dialects/irdl.py

  Log Message:
  -----------
  [MLIR][Python] Add Python and C API of `mlir::DynamicType` (#182751)

This PR adds C and Python API support for `mlir::DynamicType`. It
primarily enables types in dialects that are dynamically generated via
IRDL to be constructed in Python, and allows retrieving the parameters
contained in a dynamic type from Python.

---------

Co-authored-by: Rolf Morel <rolfmorel at gmail.com>


  Commit: c4e26ae27936e6c5442b36be84fd16f643ff4b1d
      https://github.com/llvm/llvm-project/commit/c4e26ae27936e6c5442b36be84fd16f643ff4b1d
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Reduce duplicated SFB patterns in RISCVInstrInfoXAndes.td. NFC. (#182800)

This PR is similar to what we did in RISCVInstrInfoSFB.td.


  Commit: 9a109fbb6e184ec9bcce10615949f598f4c974a9
      https://github.com/llvm/llvm-project/commit/9a109fbb6e184ec9bcce10615949f598f4c974a9
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/vk-ext-builtin-input.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/NonUniformIdx/RWStructuredBufferNonUniformIdx.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array-minimal.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-simple.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-struct.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/issue-146942-ptr-cast.ll
    M llvm/test/CodeGen/SPIRV/legalization/load-store-global.ll
    M llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/lifetime.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/logical-memcpy.ll
    M llvm/test/CodeGen/SPIRV/pointers/array-skips-gep.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/pointer-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/ptrcast-bitcast.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-dynamic-index.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-nested-struct-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-runtime-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-access.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-vector-access.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.ps.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.vs.ll
    M llvm/test/CodeGen/SPIRV/semantics/target.ps.ll
    M llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/return-early.ll

  Log Message:
  -----------
  [SPIR-V] Don't emit alignment decoration for non-kernel SPIR-V (#182772)

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


  Commit: 57f3f1470e5d359d63e16f633a9ca6c377698413
      https://github.com/llvm/llvm-project/commit/57f3f1470e5d359d63e16f633a9ca6c377698413
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix readability-redundant-parentheses warnings (#182766)


  Commit: 404452b29e4b59c6cdece2ec1c99cf7fc57e93db
      https://github.com/llvm/llvm-project/commit/404452b29e4b59c6cdece2ec1c99cf7fc57e93db
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix readability-inconsistent-ifelse-braces warnings (#182764)

This align with [LLVM coding
conventions](https://llvm.org/docs/CodingStandards.html#don-t-use-braces-on-simple-single-statement-bodies-of-if-else-loop-statements):
Quote:
```cpp
// Use braces for the `if` block to keep it uniform with the `else` block.
if (isa<FunctionDecl>(D)) {
  handleFunctionDecl(D);
} else {
  // In this `else` case, it is necessary that we explain the situation with
  // this surprisingly long comment, so it would be unclear without the braces
  // whether the following statement is in the scope of the `if`.
  handleOtherDecl(D);
}
```


  Commit: f4f17bd86c14acb265e1caa7bdc5b3501a7e3b83
      https://github.com/llvm/llvm-project/commit/f4f17bd86c14acb265e1caa7bdc5b3501a7e3b83
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidy.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix misc-override-with-different-visibility warnings (#182763)

Ran with config:
```yaml
  - key:             misc-override-with-different-visibility.DisallowedVisibilityChange
    value:           widening
```
I think we should only care about widening changes.


  Commit: cb3d7ffb09e8be115da1fd57a6c09860e89f5449
      https://github.com/llvm/llvm-project/commit/cb3d7ffb09e8be115da1fd57a6c09860e89f5449
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/fixed-length-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-combines.ll

  Log Message:
  -----------
  [AArch64] Add bfloat patterns for `partial_reduce_fmla` (#181982)

A BFMLALT/B pair exactly matches the semantics of a partial_reduce_fmla
from (nx)v8bf16 to (nx)v4f32.


  Commit: ca7cf834bcbff5a1e243575d46a5258032a02b2a
      https://github.com/llvm/llvm-project/commit/ca7cf834bcbff5a1e243575d46a5258032a02b2a
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [Maintainers] Fix broken clang link (NFC) (#182451)

Was recently converted to .md (44f248499616).


  Commit: 53648f571a0e91378706dcb92f877721275a86a8
      https://github.com/llvm/llvm-project/commit/53648f571a0e91378706dcb92f877721275a86a8
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option-fastisel.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll

  Log Message:
  -----------
  [AArch64] -aarch64-enable-global-isel-at-O=-1 should disable GISel (#182250)

Recent changes in #174746 to use GISel for optnone functions broke this.
Now at O3 -aarch64-enable-global-isel-at-O=-1 is having the opposite
affect of actually enabling GISel instead of SDAG and at O0 FastISel is
no longer used. I've added a check for if this is disabled.


  Commit: 84be3259dd470dbd18a5b57847f499aff59c719b
      https://github.com/llvm/llvm-project/commit/84be3259dd470dbd18a5b57847f499aff59c719b
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp

  Log Message:
  -----------
  [mlir][Linalg] Allow isaBroadcastOpInterface to accept LinalgOp (#182806)

Allow isaBroadcastOpInterface to accept LinalgOp so that both the named
linalg.broadcast op and broadcast-like linalg.generic are handled by a
single API instead of special-casing check for named vs generic op in
downstream projects.

No test is being added for this change because callers that pass
GenericOp (e.g. Specialize.cpp) continue to work since GenericOp is a
LinalgOp.

Signed-off-by: Abhishek Varma <abhvarma at amd.com>


  Commit: 63e3e89b8532745f6617a931c964b1f7a1119b46
      https://github.com/llvm/llvm-project/commit/63e3e89b8532745f6617a931c964b1f7a1119b46
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/strlen-7.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll
    M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll

  Log Message:
  -----------
  [InstCombine] Only ignore first zero index during GEP canonicalization (#180764)

When canonicalizing GEPs to have a single index, only ignore the first
leading zero index. This fixes a hole in the canonicalization in case
there was a struct zero offset, which can't be removed by the the
leading zero stripping.


  Commit: a0cf0221824afaa1b5d55f348daa9fe59e7fb0e6
      https://github.com/llvm/llvm-project/commit/a0cf0221824afaa1b5d55f348daa9fe59e7fb0e6
  Author: Björn Schäpers <bjoern at hazardy.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/test/CodeCompletion/included-files.cpp

  Log Message:
  -----------
  [CodeCompletion] Consider header files without extension, if... (#166447)

... the path passed to -I ends with /include.

I've brought it up, when the special handling for Qt was added
(https://reviews.llvm.org/D112996#3349609) but got no feedback.


  Commit: d7fac0f42a3a8a6d6cf827d1f8b38663f872fe0f
      https://github.com/llvm/llvm-project/commit/d7fac0f42a3a8a6d6cf827d1f8b38663f872fe0f
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Host/common/MonitoringProcessLauncher.cpp

  Log Message:
  -----------
  [lldb] address memory leakage in lldb-server (#177572)

lldb-server has exhibited fairly unexpected behaviour. The time each
iteration of the main loop takes (attach + spawn a child process) has
been progressively increasing over the course of the lldb-server
execution. For instance, at the beginning of the remote tests run (when
a single instance of lldb-server on the remote side processes all the
incoming connections), each iteration took approximately 0.1 seconds,
increasing to 1.5 seconds by the end.

The analysis of the lldb-server application indicates that the
__libc_fork function takes more and more time on each iteration. The
most plausible interpretation of this fact would appear to be that the
application accumulates a certain resource that the fork function
subsequently had to process.

The following investigation has shown that the memory leakage did seem
to take place during the lldb-server execution. After the spawn of a
child process lldb-server additionally creates a monitoring thread, the
only purpose of which is to call a waitpid on the corresponding child
process. However, it appears to me that lldb-server application tracks
neither its children nor these internal threads, which ultimately
results in the threads not being joined or detached and the resources
associated with these threads won't be released.

Meanwhile, the creation of the thread is followed by the allocation of
the stack memory for this thread (usually 8MB), which is never released.
Given this behaviour, the amount of unfreed memory accumulated by the
lldb-server reaches approximately 30-35GB by the end of the test run. At
the same time, the fork function maps the parent's memory to the child
process, therefore the uncontrolled growth of unnecessary memory slows
the execution of the fork function significantly.

To summarise, the memory leakage that was caused by the inappropriate
managing of the internal threads appears to be the underlying cause of
the progressively increasing duration of the main loop, leading to
performance degradation of lldb-server application, which is especially
noticeable during long tests runs.

The proposed solution at this stage is to simply detach internal
threads, so that the OS can release memory associated with these
threads. That is to say, it seems to me that lldb-server doesn't have
appropriate mechanisms to track spawned threads, therefore a more
thoughtful approach would likely require changes to a substantial part
of the existing logic.


  Commit: c8e2503336409b2eb63b126c2f1039435ec70689
      https://github.com/llvm/llvm-project/commit/c8e2503336409b2eb63b126c2f1039435ec70689
  Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/lib/Lower/Support/Utils.cpp
    A flang/test/Lower/OpenMP/block-use-predetermined-privatization.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix crash privatizing USE'd module variable in BLOCK (#182060)

Module variables accessed via USE inside a BLOCK nested in an OpenMP
construct (parallel do, taskloop) crash during lowering because the host
symbol box doesn't exist yet — the BLOCK hasn't been lowered when
privatization runs.

The fix instantiates the module global on demand in the
DataSharingProcessor before privatization, and adds a fallback from
lookupOneLevelUpSymbol to lookupSymbol in privatizeSymbol for symbols
bound at the current scope level.
 
Fixes : [#161183 ](https://github.com/llvm/llvm-project/issues/161183)

---------

Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>


  Commit: de3cefe5608331c3156eb14ad8e14d837166170e
      https://github.com/llvm/llvm-project/commit/de3cefe5608331c3156eb14ad8e14d837166170e
  Author: Twice <twice at apache.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/ExtensibleDialect.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/CAPI/IR/ExtensibleDialect.cpp
    M mlir/test/python/dialects/irdl.py

  Log Message:
  -----------
  [MLIR][Python] Add C and Python API for `mlir::DynamicAttr` (#182820)

This PR adds C and Python API support for `mlir::DynamicAttr`. It
primarily enables attributes in dialects that are dynamically generated
via IRDL to be constructed in Python, and allows retrieving the
parameters contained in a dynamic attribute from Python.

This PR is quite similiar to #182751, so I use tab to autocomplete some
code via github copilot, but manually verified.


  Commit: 3849fceb8a78c8785c85af361ad383864c3599c1
      https://github.com/llvm/llvm-project/commit/3849fceb8a78c8785c85af361ad383864c3599c1
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [CMake] Don't try to reuse PCH if PCH is disabled (#182819)

Very recently, CMake started to emit warnings if REUSE_FROM is used but
the source has PCH disabled. Therefore, before using REUSE_FROM, check
that PCH is not disabled.


  Commit: f02aadc9456c05b17aaf2cef975212bacfe15357
      https://github.com/llvm/llvm-project/commit/f02aadc9456c05b17aaf2cef975212bacfe15357
  Author: David Green <david.green at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/AArch64/qshrn.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Combine to sqxtn pre legalization for FewerElements (#181163)

Post legalization we will not have v2i64 MIN and MAX, which prevents the
recognition of saturating truncates. This changes the combiner rules to
combine pre-legalization, providing that the vector operation will be
clamped (like a v4i64).


  Commit: 279b3dbec65c8bc898e254f373b4f443a7e106b9
      https://github.com/llvm/llvm-project/commit/279b3dbec65c8bc898e254f373b4f443a7e106b9
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    A llvm/test/Transforms/InstCombine/icmp-vector-bitwise-reductions.ll

  Log Message:
  -----------
  [InstCombine] Fold icmp (vreduce_(or|and) %x), (0|-1) (#182684)

We can just compare the entire bitcasted value against Zero or AllOnes
in this case.

It is profitable on all major targets: https://godbolt.org/z/o7ecKjbsK


  Commit: 5870fcf24c6390bcb8ae4dd4de682a1af2562907
      https://github.com/llvm/llvm-project/commit/5870fcf24c6390bcb8ae4dd4de682a1af2562907
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/M68k/pipeline.ll

  Log Message:
  -----------
  [M68k] Update llvm/test/CodeGen/M68k/pipeline.ll (#182809)

Due to https://github.com/llvm/llvm-project/pull/181547.


  Commit: 4bd0e49f8a61b1992a2be724a9d24844b0aec411
      https://github.com/llvm/llvm-project/commit/4bd0e49f8a61b1992a2be724a9d24844b0aec411
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Remove verifyEVLRecipe (#182798)

In #182254 we want to start aborting compilation when the verifier fails
between passes, but currently we run into various EVL related failures.

The EVL is used in quite a few more places than when the verification
was originally added, all of which need to be handled by the verifier. I
think this is also exacerbated by the fact that many recipes nowadays
are converted to concrete recipes later in the pipeline which duplicates
the number of patterns we need to match.

The EVL transform itself has also changed much since its original
implementation, i.e. non-trapping recipes don't use EVL (#127180) and VP
recipes are generated via pattern matching instead of unconditionally
(#155394), so I'm not sure if the verification is as relevant today.

Rather than try to add more patterns this PR removes the verification to
reduce the maintainence cost. Split off from #182254


  Commit: f8906704104e446a7482aeca32d058b91867e05c
      https://github.com/llvm/llvm-project/commit/f8906704104e446a7482aeca32d058b91867e05c
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp

  Log Message:
  -----------
  [CIR][ARM] Refactor argument handling in `emitAArch64BuiltinExpr` (NFC) (#182105)

Port recent argument-handling refactors from
CodeGen/TargetBuiltins/ARM.cpp into
CIR/CodeGen/CIRGenBuiltinAArch64.cpp to keep the CIR
implementation in sync with Clang CodeGen.

In particular, mirror the updated handling of Sema-only NEON
discriminator arguments and the common argument emission logic
used to populate the `Ops` vector.

This is a mechanical port of the following changes:

  * https://github.com/llvm/llvm-project/pull/181974
  * https://github.com/llvm/llvm-project/pull/181794

No functional change intended.


  Commit: 7c0c0dfa49d19a42126dff682d41508f2b28f0a8
      https://github.com/llvm/llvm-project/commit/7c0c0dfa49d19a42126dff682d41508f2b28f0a8
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    A flang/test/Lower/Intrinsics/rtc.f90

  Log Message:
  -----------
  [flang] Implement non-standard RTC intrinsic (#182560)

RTC is supported by classic flang and used in a proprietary HPC
application. I've implemented it as an alias for TIME.

Assisted-by: codex


  Commit: 594e889b7ffaf61817c30c12e2d92717e6ceaddb
      https://github.com/llvm/llvm-project/commit/594e889b7ffaf61817c30c12e2d92717e6ceaddb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/Frames-dyn-alloca.ll
    M llvm/test/CodeGen/PowerPC/asm-dialect.ll
    M llvm/test/CodeGen/PowerPC/ppc64-blnop.ll

  Log Message:
  -----------
  [PowerPC] Fix duplicate RUN lines in tests (#182275)


  Commit: 3fc90181cdb3edb11682a70ab6bad941a11c408a
      https://github.com/llvm/llvm-project/commit/3fc90181cdb3edb11682a70ab6bad941a11c408a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lld/test/ELF/lto/linker-script-symbols-ipo.ll
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    R llvm/test/CodeGen/X86/prefalign.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll

  Log Message:
  -----------
  Revert "CodeGen: Emit .prefalign directives based on the prefalign attribute."

This reverts commit 6767bfeec5ede8a878792e39aedff053c36854b2.

This breaks the tools/gold/X86/multiple-sections.ll test.


  Commit: 20bdcbd41db797be47d525525811fdbcf6c15870
      https://github.com/llvm/llvm-project/commit/20bdcbd41db797be47d525525811fdbcf6c15870
  Author: Hunter Baker <hunterbaker at me.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/test/APINotes/Inputs/Headers/Fields.apinotes
    M clang/test/APINotes/Inputs/Headers/Fields.h
    M clang/test/APINotes/fields.cpp

  Log Message:
  -----------
  [APINotes] Fix fatal error when using the Type key on fields (#180672)

This fixes a clang crash when importing a module with apinotes that sets
the Type key on a Field:
```
# .---command stderr------------
# | API notes allowed a type on an unknown declaration
# | UNREACHABLE executed at <path>/llvm-project/clang/lib/Sema/SemaAPINotes.cpp:419!
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
# | Stack dump:
# | 0.  <path>/llvm-project/clang/test/APINotes/Inputs/Headers/Fields.h:4:12: current parser token ';'
# | 1.  <path>/llvm-project/clang/test/APINotes/Inputs/Headers/Fields.h:3:1: parsing struct/union/class body 'IntWrapper'
...
# |  #8 0x0000000109540868 clang::Sema::ApplyAPINotesType(clang::Decl*, llvm::StringRef)
# |  #9 0x000000010955c6ec applyAPINotesType(clang::Sema&, clang::Decl*, llvm::StringRef, (anonymous namespace)::VersionedInfoMetadata)
```
```yaml
Tags:
- Name: IntWrapper
  Fields:
  - Name: value
    Type: ValueType  # Fails because of this
```

Previously, the case that the Decl passed to `ApplyAPINotesType` could
be a `FieldDecl` was overlooked.
```cpp
struct Field {
  …
  StringRef Type;
  ...
}
...
template <> struct MappingTraits<Field> {
  static void mapping(IO &IO, Field &F) {
    …
    IO.mapOptional("Type", F.Type, StringRef(""));  // ‘Type' is already a valid key in apinotes files.
    ….
  }
}
```
This adds the case to handle `FieldDecl`s.

@egorzhdan @compnerd


  Commit: baef055d30dd5860133eededefba499d55afa4c2
      https://github.com/llvm/llvm-project/commit/baef055d30dd5860133eededefba499d55afa4c2
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.integer.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.pointer.pass.cpp

  Log Message:
  -----------
  [libc++][NFC] Format `std::midpoint` tests (#175531)

### Summary

- Format code
- Fix comments

Extracted NFC changes from PR #175388.


  Commit: d70d18b963a0e0f2a67e1effe7cbaa52b3da1918
      https://github.com/llvm/llvm-project/commit/d70d18b963a0e0f2a67e1effe7cbaa52b3da1918
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in TestAttributes.cpp (NFC)


  Commit: 36d60b16df50e648f21196f25e5f87dad8659909
      https://github.com/llvm/llvm-project/commit/36d60b16df50e648f21196f25e5f87dad8659909
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    A clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    A clang/test/Analysis/unconditional-va_arg.c
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer] New checker: optin.core.UnconditionalVAArg (#175602)

Add a new optin checker which reports variadic functions that
unconditionally use `va_arg()`. It would be undefined behavior to call
such functions without passing any variadic arguments, so the SEI-CERT
rule EXP47-C says that this pattern should be avoided.

As this part of this SEI-CERT rule focuses on a very narrow area, I
aimed to write a simple and stable checker that can report basic "clear"
occurrences of this fault. It would be possible to cover some additional
corner cases, but it isn't worth the effort.


  Commit: fd44b06a8dc3a3ef89d6c31268747d714f381610
      https://github.com/llvm/llvm-project/commit/fd44b06a8dc3a3ef89d6c31268747d714f381610
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Reorganize diagnostic groups and remove confidence-based warnings (#179309)

Reorganized lifetime safety diagnostic groups to be more granular and
renamed diagnostic messages for better clarity.

- **Diagnostic Group Restructuring**: Split lifetime safety warnings
into more specific categories:
- `lifetime-safety-use-after-scope` and
`lifetime-safety-use-after-scope-moved` for scope-related issues
- `lifetime-safety-return-stack-addr` and
`lifetime-safety-return-stack-addr-moved` for return address issues
- `lifetime-safety-dangling-field` and
`lifetime-safety-dangling-field-moved` for field reference issues
- Added new umbrella groups `lifetime-safety-validations` and
`lifetime-safety-all`
- **Diagnostic Message Updates**: Renamed warning diagnostics from
generic "loan expires" terminology to more specific messages like "use
after scope" and "return stack addr"
- **Code Cleanup**: Removed `Confidence` logic (based on possible vs
guaranteed control-flow) from diagnostic reporting functions. Added TODO
comment to deprecate the `Confidence` enum

The new diagnostic group tree is:

```
lifetime-safety-all
├── lifetime-safety
│   ├── lifetime-safety-permissive
│   │   ├── lifetime-safety-use-after-scope
│   │   ├── lifetime-safety-return-stack-addr
│   │   └── lifetime-safety-dangling-field
│   └── lifetime-safety-strict
│       ├── lifetime-safety-use-after-scope-moved
│       ├── lifetime-safety-return-stack-addr-moved
│       ├── lifetime-safety-dangling-field-moved
│       └── lifetime-safety-invalidation
├── lifetime-safety-suggestions
│   ├── lifetime-safety-cross-tu-suggestions
│   └── lifetime-safety-intra-tu-suggestions
└── lifetime-safety-validations
    └── lifetime-safety-noescape
```


  Commit: 0e3a96d0ec01e3575674d72c4e23bf98affdca28
      https://github.com/llvm/llvm-project/commit/0e3a96d0ec01e3575674d72c4e23bf98affdca28
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll

  Log Message:
  -----------
  [X86] Add test coverage for #137422 (#182832)


  Commit: 72f5050ae7656a23e9c5f23f6fdb524a0b0bd2d9
      https://github.com/llvm/llvm-project/commit/72f5050ae7656a23e9c5f23f6fdb524a0b0bd2d9
  Author: Vladimir Miloserdov <milosvova at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/OperationSupport.h
    M mlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h

  Log Message:
  -----------
  [mlir][NFC] Remove unused deprecated API wrappers (#182715)

Remove deprecated functions and constructors that have zero callers in
the monorepo: `applyPatternsAndFoldGreedily`, `applyOpPatternsAndFold`,
`NamedAttrList(std::nullopt_t)`, and `OpPrintingFlags(std::nullopt_t)`.

These had FIXME comments requesting their removal.


  Commit: 2da729af35580e98ba9074ec41b22691ddb3fe88
      https://github.com/llvm/llvm-project/commit/2da729af35580e98ba9074ec41b22691ddb3fe88
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A clang/.clang-format-ignore

  Log Message:
  -----------
  Do not format .td files in Clang; NFC (#182075)

We have varying needs for these files. e.g., a diagnostic file is a
different kind of file than compiler options which is different than
attributes which is different than attribute documentation, etc. So
running clang-format over .td files in Clang is not going well in
practice because of how often it reformats things unlike the rest of the
file. This results in a poor new contributor experience because
pre-commit CI tells them the changes are not clang-format clean but we
don't want the changes to be clang-format clean and so a reviewer asks
them to revert and ignore pre-commit CI.

---------

Co-authored-by: Sirraide <aeternalmail at gmail.com>


  Commit: 966a4618b85db0f9c3ba6c0d518356c146cf7ab6
      https://github.com/llvm/llvm-project/commit/966a4618b85db0f9c3ba6c0d518356c146cf7ab6
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll

  Log Message:
  -----------
  [VectorCombine] Support ashr sign-bit extraction (#181998)

This change extends a sign-bit reduction fold introduced earlier. Prior
to it, we only supported LSHR isntructions for sign-bits extraction.
Similar logic can be applied to ASHR and the fold can be generalized.

## Alive2 proofs

| Reduction | == 0 | == -1 / -N | slt 0 | sgt -1 / -N | 
|-----------|------|------------|-------|-------------|
| or | [proof](https://alive2.llvm.org/ce/z/DaSMPt) |
[proof](https://alive2.llvm.org/ce/z/wzR48R) |
[proof](https://alive2.llvm.org/ce/z/rfyr_7) |
[proof](https://alive2.llvm.org/ce/z/MTFFe5) |
| and | [proof](https://alive2.llvm.org/ce/z/PmmpbX) |
[proof](https://alive2.llvm.org/ce/z/7_9hSn) |
[proof](https://alive2.llvm.org/ce/z/wudWY3) |
[proof](https://alive2.llvm.org/ce/z/QZ33KB) |
| umax | [proof](https://alive2.llvm.org/ce/z/gQGnDc) |
[proof](https://alive2.llvm.org/ce/z/dMsoQF) |
[proof](https://alive2.llvm.org/ce/z/QwFbae) |
[proof](https://alive2.llvm.org/ce/z/3dbmy6) |
| umin | [proof](https://alive2.llvm.org/ce/z/Z2pZUQ) |
[proof](https://alive2.llvm.org/ce/z/6FQgGR) |
[proof](https://alive2.llvm.org/ce/z/95-em6) |
[proof](https://alive2.llvm.org/ce/z/PW7c-m) |
| add | [proof](https://alive2.llvm.org/ce/z/FVhuhj) |
[proof](https://alive2.llvm.org/ce/z/h1B9jQ) |
[proof](https://alive2.llvm.org/ce/z/DmiYRr) |
[proof](https://alive2.llvm.org/ce/z/P4WDN5) |


  Commit: eac18e783f034bd294a82cd0e69a7abf73583d28
      https://github.com/llvm/llvm-project/commit/eac18e783f034bd294a82cd0e69a7abf73583d28
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp

  Log Message:
  -----------
  [libc] Update the GPU allocator to work under post-Volta ITS

Summary:
There were several gaps that caused the allocator not to work under
NVIDIA's independent thread scheduling model. The problems (I know of)
are fixed in this commit. Generally this required using correct masks,
synchronizing before a few dependent operations, and overhauling the
allocate function to stick with the existing mask instead of querying
it.

The general idiom here is that at the start we obtain a single mask and
opportunistically use it. Every use must specifically sync this subset.
I.e. query a single time and never change it.

This passes most tests, however I have encountered two issues.
1. A bug in `nvlink` failing to link symbols called in 'free'
2. A deadlock under heavy divergence caused by IPSCCP altering control
   flow.

I will address these later, but for now this makes the *source* correct
so it can be enabled by anyone else if they need it.


  Commit: 9e6a6be8a84f32072e40b27e146fa9076560274e
      https://github.com/llvm/llvm-project/commit/9e6a6be8a84f32072e40b27e146fa9076560274e
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll

  Log Message:
  -----------
  [AMDGPU] Remove AMDGPUArgumentUsageInfo pass (#182490)

`AMDGPUArgumentUsageInfo` provided a per-function map that
`lowerFormalArguments` would write each function's implicit argument
register layout into, and `passSpecialInputs` would read back when
lowering calls to look up the callee's layout. This per-function map is
redundant for all non-entry callees, which already use the same
`FixedABIFunctionInfo` register layout.

GlobalISel already used `FixedABIFunctionInfo` unconditionally. This
change makes SelectionDAG do the same.


  Commit: a78a22356b5acc89ab5f301e47f6bdd94568adb9
      https://github.com/llvm/llvm-project/commit/a78a22356b5acc89ab5f301e47f6bdd94568adb9
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.h
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp

  Log Message:
  -----------
  [MLIR] Migrate AffineDma ops to ODS (NFC) (#182497)

For some historical reasons, seems like we never converted these.


  Commit: 8b36a41d89aea26ffdb75456854022b767c5bf4b
      https://github.com/llvm/llvm-project/commit/8b36a41d89aea26ffdb75456854022b767c5bf4b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/nofpclass-issue182834.ll

  Log Message:
  -----------
  FunctionAttrs: Do not infer top down on functions with no uses (#182839)


  Commit: 5e5e300d07898f788e0151e2d14732cf2170a85e
      https://github.com/llvm/llvm-project/commit/5e5e300d07898f788e0151e2d14732cf2170a85e
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/reduce-or.ll
    M llvm/test/CodeGen/AArch64/reduce-xor.ll
    M llvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i8.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/LoongArch/lasx/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/lsx/rotl-rotr.ll
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-ind8-unscaled.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-scatter-ind8-unscaled.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-addpred.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-mlapred.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512vl-vec-masked-cmp.ll
    M llvm/test/CodeGen/X86/bitcast-and-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-512.ll
    M llvm/test/CodeGen/X86/bitcast-vector-bool.ll
    M llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
    M llvm/test/CodeGen/X86/combine-multiplies.ll
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/combine-rotates.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/combine-shl.ll
    M llvm/test/CodeGen/X86/combine-sra.ll
    M llvm/test/CodeGen/X86/combine-storetomstore.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/dagcombine-shifts.ll
    M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/test/CodeGen/X86/known-signbits-shl.ll
    M llvm/test/CodeGen/X86/known-signbits-vector.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/mulvi32.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/pmul.ll
    M llvm/test/CodeGen/X86/pmulh.ll
    M llvm/test/CodeGen/X86/pr107423.ll
    M llvm/test/CodeGen/X86/pr161013.ll
    M llvm/test/CodeGen/X86/pr173794.ll
    M llvm/test/CodeGen/X86/pr179489.ll
    M llvm/test/CodeGen/X86/pr35918.ll
    M llvm/test/CodeGen/X86/pr41619.ll
    M llvm/test/CodeGen/X86/pr42727.ll
    M llvm/test/CodeGen/X86/pr45563-2.ll
    M llvm/test/CodeGen/X86/pr45833.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    M llvm/test/CodeGen/X86/promote-cmp.ll
    M llvm/test/CodeGen/X86/promote-vec3.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/rotate-extract-vector.ll
    M llvm/test/CodeGen/X86/sadd_sat_vec.ll
    M llvm/test/CodeGen/X86/sat-add.ll
    M llvm/test/CodeGen/X86/sdiv-exact.ll
    M llvm/test/CodeGen/X86/shrink_vmul.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/sshl_sat_vec.ll
    M llvm/test/CodeGen/X86/ssub_sat_vec.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv-exact.ll
    M llvm/test/CodeGen/X86/undo-mul-and.ll
    M llvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-splat.ll
    M llvm/test/CodeGen/X86/ushl_sat_vec.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
    M llvm/test/CodeGen/X86/vec_int_to_fp.ll
    M llvm/test/CodeGen/X86/vec_minmax_sint.ll
    M llvm/test/CodeGen/X86/vec_minmax_uint.ll
    M llvm/test/CodeGen/X86/vec_smulo.ll
    M llvm/test/CodeGen/X86/vec_umulo.ll
    M llvm/test/CodeGen/X86/vector-compare-all_of.ll
    M llvm/test/CodeGen/X86/vector-compare-any_of.ll
    M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/X86/vector-fshl-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-256.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-mul.ll
    M llvm/test/CodeGen/X86/vector-pcmp.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/CodeGen/X86/vector-reduce-smax.ll
    M llvm/test/CodeGen/X86/vector-reduce-smin.ll
    M llvm/test/CodeGen/X86/vector-reduce-umax.ll
    M llvm/test/CodeGen/X86/vector-reduce-umin.ll
    M llvm/test/CodeGen/X86/vector-rotate-128.ll
    M llvm/test/CodeGen/X86/vector-rotate-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vector-trunc-math.ll
    M llvm/test/CodeGen/X86/vector-trunc-packus.ll
    M llvm/test/CodeGen/X86/vector-trunc-ssat.ll
    M llvm/test/CodeGen/X86/vector-trunc-usat.ll
    M llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
    M llvm/test/CodeGen/X86/vselect.ll

  Log Message:
  -----------
  [SelectionDAG] Fix bug related to demanded bits/elts for BITCAST (#145902)

When we have a BITCAST and the source type is a vector with smaller
elements compared to the destination type, then we need to demand all
the source elements that make up the demanded elts for the result when
doing recursive calls to SimplifyDemandedBits,
SimplifyDemandedVectorElts and SimplifyMultipleUseDemandedBits. Problem
is that those simplifications are allowed to turn non-demanded elements
of a vector into POISON, so unless we demand all source elements that
make up the result there is a risk that the result would be more
poisonous (even for demanded elts) after the simplification.

The patch fixes some bugs in SimplifyMultipleUseDemandedBits and
SimplifyDemandedBits for situations when we did not consider the problem
described above. Now we make sure that we also demand vector elements
that "must not be turned into poison" even if those elements correspond
to bits that does not need to be defined according to the DemandedBits
mask.

Fixes #138513


  Commit: c6ca2a07d343d5b22da349a8dd554707ddc1fa25
      https://github.com/llvm/llvm-project/commit/c6ca2a07d343d5b22da349a8dd554707ddc1fa25
  Author: Swastik Saha <134371044+SwastikSaha at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/UsersManual.rst

  Log Message:
  -----------
  [Docs] Clarify that -w suppresses warnings, not all diagnostics (#182670)

The UsersManual previously stated that -w disables all diagnostics.
However, -w suppresses warning diagnostics only; errors are still
emitted.


  Commit: 92447ed2733855f5e2a37821f23b55b44588a383
      https://github.com/llvm/llvm-project/commit/92447ed2733855f5e2a37821f23b55b44588a383
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [Offload] Fix copy-elision warning (#182848)

This fixes a warning about a prohibited copy-elision due to the move of
a temporary object.


  Commit: 595c5bcdc5199244cd2e18c9860427c94f129e9c
      https://github.com/llvm/llvm-project/commit/595c5bcdc5199244cd2e18c9860427c94f129e9c
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/SemaCXX/constexpr-x86-avx512f-builtins.cpp
    A clang/test/SemaCXX/constexpr-x86-avx512fp16-builtins.cpp

  Log Message:
  -----------
  [X86][Clang] Add constexpr support for _mm_min_ss/_mm_max_ss/_mm_min_sd/_mm_max_sd/_mm_min_sh/_mm_max_sh intrinsics (#178029)

- Added boolean IsScalar argument to the helper functions in
InterpBuiltin/ExprConstant
- Made minsh_round_mask, maxsh_round_mask constexpr only for
_MM_FROUND_CUR_DIRECTION rounding mode.
- Added helper function for scalar round mask in
InterpBuiltin/ExprConstant

Resolves #175198


  Commit: 630a4185d4ccecfbf9068dddffe8ae32daa4da5b
      https://github.com/llvm/llvm-project/commit/630a4185d4ccecfbf9068dddffe8ae32daa4da5b
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4141 diagnostic; NFC (#182586)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4141?view=msvc-170

> 'modifier': used more than once

This diagnostic was disabled in e11ce62707c8e0f51fce06097f71a97d02283d7a
due to triggering repeatedly for combinations of __forceinline and
inline. However, local testing shows that this diagnostic is no longer
emitted and so I believe this can be re-enabled.


  Commit: a28755537b41f1d0683fcf53ef09832a2d61670a
      https://github.com/llvm/llvm-project/commit/a28755537b41f1d0683fcf53ef09832a2d61670a
  Author: Matt Stephanson <stephanson.matt at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/test/std/time/time.clock/time.clock.gps/gps_time.ostream.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.tai/tai_time.ostream.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.gps_time.pass.cpp

  Log Message:
  -----------
  [libc++] Fix `gps_time` formatting and related tests (#181560)

- The Standard wording in https://eel.is/c++draft/time.format#13 is similar
  to TAI formatting in that it's equivalent to formatting a `sys_time`
  with a fixed offset. Leap seconds should not be considered.

- Tests need to be adjusted by adding the number of leap seconds between
  the GPS epoch and the tested date, which is 15s for 2010 and 18s for
  2019.

- The TAI and GPS tests using `meow_time<cr::duration<long, ...>>`
  should use `long long` because the offset swill overflow a 32-bit
  signed integer.


  Commit: 1737b61ac86a028f63186d87ba3a9bd8451e3ac7
      https://github.com/llvm/llvm-project/commit/1737b61ac86a028f63186d87ba3a9bd8451e3ac7
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4722 diagnostic; NFC (#182845)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4722?view=msvc-170

> 'function' : destructor never returns, potential memory leak

This diagnostic was disabled in 24fdbe567638d942fff6b1cf3df3cb4f5adf6823
as not having value for us, but enabling the diagnostic triggers no new
warnings, so I believe it's safe for us to re-enable. It may not be the
most valuable diagnostic, but knowing about non-returning destructors is
still good for code health.


  Commit: 5ea70b62bdfb91f64472dd6473e4880cc41ece4f
      https://github.com/llvm/llvm-project/commit/5ea70b62bdfb91f64472dd6473e4880cc41ece4f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [libc++] Simplify and optimize the run-benchmarks script (#181382)

Instead of configuring and running the benchmark suite once for SPEC and
once for the microbenchmarks, run it only once for everything. This
saves a configuration of the test suite (which includes building Google
Benchmark).

To replicate the functionality we had with --disable-microbenchmarks
(whose goal was mostly to run only SPEC), introduce a --filter argument
that can be used to select exactly which benchmarks are run. This is
simpler and more powerful.

Making this work requires hardcoding the only C++ standard that works
for SPEC (C++17) inside spec.gen.py instead of expecting it to be set
correctly when running the test suite.


  Commit: 817b7f33332e7f03b47fc3d1d6f94e5527635748
      https://github.com/llvm/llvm-project/commit/817b7f33332e7f03b47fc3d1d6f94e5527635748
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/aarch64-scal-to-vec-bitcast-insert.ll
    A llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi-strictfp.ll
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll

  Log Message:
  -----------
  [NFC][AArch64] Split fptoi tests and add scal_to_vec convert tests (#179315)

This patch splits simd-fptoi tests into strictfp and nonstrictfp files
for simplicity and adds tests which will test correct insertion of
bitcasts to certain scalar_to_vector variant which will be introduced in
#172837.


  Commit: 8f5880d3ae4e5dfc748985d90e5413671028aa3e
      https://github.com/llvm/llvm-project/commit/8f5880d3ae4e5dfc748985d90e5413671028aa3e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [X86] lowerV64I8Shuffle - prefer VPERMV3 byte shuffles to OR(PSHUFB,PSHUFB) on VBMI targets (#182852)

Minor improvement for #137422


  Commit: a236331070e94e838495d3fede52f193d709d895
      https://github.com/llvm/llvm-project/commit/a236331070e94e838495d3fede52f193d709d895
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.h

  Log Message:
  -----------
  [NFC][lldb][Process/FreeBSDKernel] Reorder class member functions (#182717)


  Commit: 4c795dba0677eae055e6f2fb8efa4008d2a5e24f
      https://github.com/llvm/llvm-project/commit/4c795dba0677eae055e6f2fb8efa4008d2a5e24f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/test/Sema/format-strings.c

  Log Message:
  -----------
  [clang][test] Try to fix Sema/format-strings.c on i686 (#181800)

https://github.com/llvm/llvm-project/pull/180566 did this for 32bit arm,
but this still breaks for us downstream on i686 with:
```
# .---command stderr------------
# | error: 'expected-warning' diagnostics expected but not seen: 
# |   File /builddir/build/BUILD/llvm-project/clang/test/Sema/format-strings.c Line 990: format specifies type 'size_t' (aka '{{.+}}') but the argument has type '_Bool'
# |   File /builddir/build/BUILD/llvm-project/clang/test/Sema/format-strings.c Line 991: format specifies type 'ptrdiff_t' (aka '{{.+}}') but the argument has type '_Bool'
# | 2 errors generated.
# `-----------------------------
```


  Commit: a9645ebadf31114ba9b72f9e1edc58823cf135e6
      https://github.com/llvm/llvm-project/commit/a9645ebadf31114ba9b72f9e1edc58823cf135e6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-debug.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir

  Log Message:
  -----------
  [AMDGPU] Move `advanceBeforeNext` before `advanceToNext` (#182808)

The document of `advanceToNext` says, `advanceBeforeNext` has to be
called first.


  Commit: 222e661c89cfbfd8a6b55e4cd1d0925182655c9d
      https://github.com/llvm/llvm-project/commit/222e661c89cfbfd8a6b55e4cd1d0925182655c9d
  Author: Akram Hany <109467185+akramhany at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/RecordLayoutBuilder.cpp
    A clang/test/Layout/ms-x86-bitfields-overflow.c

  Log Message:
  -----------
  [clang][layout] Fix unsigned char overflow in ms_struct bitfield layout (#181433)

Fixes #161511

When using MS-struct layout rules (`#pragma ms_struct`), Clang produces
incorrect memory layouts when encountering large `_BitInt` bit-fields.
The reason was that `LastBitfieldStorageUnitSize` variable was declared
as `unsigned char`, which caused it to overflow when the values used
with `_BitInt` exceeded `255`, so I changed it from `unsigned char` to
`uint64_t`.

In the added test, we can clearly see that `f2` and `f3` are both packed
in the same 256-bit unit.


  Commit: 0e9880cc04b1025a2a7e860d2f493f1b9396555f
      https://github.com/llvm/llvm-project/commit/0e9880cc04b1025a2a7e860d2f493f1b9396555f
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Remove verifyLate from VPlanVerifier. NFC (#182799)

We can instead just check if the VPlan has been unrolled.


  Commit: 4f30127f44519e0553fc41ad58c682b390491791
      https://github.com/llvm/llvm-project/commit/4f30127f44519e0553fc41ad58c682b390491791
  Author: hjagasiaAMD <harsha.jagasia at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir

  Log Message:
  -----------
  [AMDGPU] fix eliminateFrameIndex to use SGPR frame index (#178991)

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 426573f1e131367eecdb021d6e4c221a1f3c4b43
      https://github.com/llvm/llvm-project/commit/426573f1e131367eecdb021d6e4c221a1f3c4b43
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    R clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/rocm-device-libs.cl

  Log Message:
  -----------
  clang/AMDGPU: Stop looking for oclc_correctly_rounded_sqrt control libraries (#182858)

These have not done anything in almost a year.


  Commit: 329cd8985d8a2486bb7e7f5d1b5cfe640caed42f
      https://github.com/llvm/llvm-project/commit/329cd8985d8a2486bb7e7f5d1b5cfe640caed42f
  Author: Haoren Wang <43286339+MetalOxideSemi at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    A llvm/test/CodeGen/X86/selectiondag-dbgvalue-null-crash.ll

  Log Message:
  -----------
  [SelectionDAG] Fix null pointer dereference in resolveDanglingDebugInfo (#180425)

Fix crash when Val.getNode() is null by moving ValSDNodeOrder
declaration inside the null check.

The crash occurred when compiling code with debug info containing
aggregate types with nested empty structs.


  Commit: 3215645b8d81bbef7db1d16b88de7ed0288f2274
      https://github.com/llvm/llvm-project/commit/3215645b8d81bbef7db1d16b88de7ed0288f2274
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU] Enable scheduler mfma rewrite stage by default (#180751)

After performance testing, it was determined that the large number of
copies that are inserted outside the loop are more than offset by better
allocation within the loop as a result of the rewrite. Additionally, there is a
minor cleanup of the cost logic.

---------

Co-authored-by: Tony Linthicum <tlinthic at gmail.com>


  Commit: f16162c03c139258e7d282ffa15408b7e79c1e3b
      https://github.com/llvm/llvm-project/commit/f16162c03c139258e7d282ffa15408b7e79c1e3b
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/docs/OpenMP-declare-target.md
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    R flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M mlir/include/mlir/Dialect/OpenMP/Transforms/Passes.td
    M mlir/lib/Dialect/OpenMP/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenMP/Transforms/MarkDeclareTarget.cpp

  Log Message:
  -----------
  [flang][MLIR][NFC] Move MarkDeclareTarget pass form flang to MLIR (#181205)

This patch moves the MarkDeclareTarget pass from flang to MLIR since it
will be used in ClangIR as well.


  Commit: 5a3fdecba6145b38264f2fd187a418bc05bbb751
      https://github.com/llvm/llvm-project/commit/5a3fdecba6145b38264f2fd187a418bc05bbb751
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitcnt-big-integer.ll

  Log Message:
  -----------
  [X86] Add i256/i512 CTPOP expansion on AVX512VPOPCNTDQ targets (#182830)

If we can freely fold the i256/i512 value to the FPU, then we can use
VPOPCNTQ to perform a per-element CTPOP, then perform an expanded
VECREDUCE_ADD (VPMOVQB v4i64/v8i64 to v16i8 with zero uppers - then
VPSADBW to sum the lower v8i8 bits).

Fixes #182829


  Commit: ce2a9cbf1507b0a17c0824769a72772f5541df9d
      https://github.com/llvm/llvm-project/commit/ce2a9cbf1507b0a17c0824769a72772f5541df9d
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/ppc_test_data_class.ll

  Log Message:
  -----------
  [PowerPC] Fix inefficient code for __builtin_ppc_test_data_class (#181420)

emit a more efficient asm for  llvm.ppc.test.data.class.f64


  Commit: 8b9d4719146857042e296f008791483e39983473
      https://github.com/llvm/llvm-project/commit/8b9d4719146857042e296f008791483e39983473
  Author: pzhengqc <55604844+pzhengqc at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Multilib] Expose shadow call stack as multilib flags for RISC-V (#182350)

This allows multilib selection based on shadow call stack for RISC-V.


  Commit: f5f171ebff55d57e9ec4e7e82e694c599c47ccd6
      https://github.com/llvm/llvm-project/commit/f5f171ebff55d57e9ec4e7e82e694c599c47ccd6
  Author: Serafean <Serafean at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    A clang/test/Index/cxx17-switch-with-initializer.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [libclang]: visit C++17 switch init statements (#173670)

Modelled after commit 08e18126431878373abfa33136768d0ec7c13def, which
did the same for If statements.

Tested with KDevelop : with a patched clang, initializers in switch
statement get cursors.


  Commit: 239e14baa4c4a1b48d4d7b8b6ac2817c17fa2437
      https://github.com/llvm/llvm-project/commit/239e14baa4c4a1b48d4d7b8b6ac2817c17fa2437
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Add test showing caller/callee SGPR mismatch for inreg args (#182753)

Add a test demonstrating a bug where the caller and callee disagree on
which SGPRs hold user inreg arguments when there are enough to reach the
SGPR0-3 range.

On the callee side, `LowerFormalArguments` marks SGPR0-3 as allocated in
`CCState` before the CC analysis runs. On the caller side, `LowerCall`
adds the scratch resource to `RegsToPass` without marking SGPR0-3 in
`CCState`. This causes `CC_AMDGPU_Func` to assign user inreg args to
SGPR0-3 on the caller side (they appear free) while the callee skips
them.

In the test, the caller writes arg 0 (value 42) to s0, but the callee
reads arg 0 from s16.


  Commit: 1237bd6df05a4777f444677186e4814388916ea9
      https://github.com/llvm/llvm-project/commit/1237bd6df05a4777f444677186e4814388916ea9
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/casting-through-void.c

  Log Message:
  -----------
  [clang-tidy] Fix bugprone-casting-through-void to run only on C++ code (#182844)

This check tells users to use `reinterpret_cast`, which is not possible
in pure C code.


  Commit: 13530d4470cf399a39a303a58f8a8797c46d9f6e
      https://github.com/llvm/llvm-project/commit/13530d4470cf399a39a303a58f8a8797c46d9f6e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll

  Log Message:
  -----------
  [AMDGPUCtorDtorLowering] Remove unnecessary pointer arithmetic (#182869)

This code was computing `begin + ((end - begin) exact/ 8) * 8`, which is
a very complicated way to spell end.

This is the AMDGPU edition of
https://github.com/llvm/llvm-project/pull/182269.


  Commit: 6295903e1236d7f72b67d5cba7266edb6c142893
      https://github.com/llvm/llvm-project/commit/6295903e1236d7f72b67d5cba7266edb6c142893
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/Target.td
    R llvm/test/TableGen/RegisterClass.td
    A llvm/test/TableGen/RegisterInfoEmitter-errors.td
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/RegisterBankEmitter.cpp

  Log Message:
  -----------
  [TableGen] Add asserts for a few register related checks (#182680)

Move some register file related error checking from C++ code to asserts
in Target.td file. Rename and extend the lit test to exercise these
errors.


  Commit: 4dac6839a7e4f02de2fd124bf3b068f1dab5ad11
      https://github.com/llvm/llvm-project/commit/4dac6839a7e4f02de2fd124bf3b068f1dab5ad11
  Author: walkerkd <keith.walker at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedA320.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/AArch64SchedA55.td
    M llvm/test/CodeGen/AArch64/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/saturating-vec-smull.ll
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A320-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-neon-instructions.s

  Log Message:
  -----------
  [AArch64] Cortex-A55/A320/A510 scheduling model "typo" fixes (#182854)

While working to introduce the C1-Nano scheduling model some existing
"typos" were found in the definitions used in the Cortex-A55,
Cortex-A320 and Cortex-A510 scheduling models.

This corrects these typos and updated any tests affected by the changes.

There were 2 forms of typos found:

  "8b" which should have been "8h"
  "i132" which should have been "i32"


  Commit: 6d36f21e47daf030b3ccb38d6276df0fe7b1add5
      https://github.com/llvm/llvm-project/commit/6d36f21e47daf030b3ccb38d6276df0fe7b1add5
  Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/Hexagon/HexagonPseudo.td
    M llvm/test/CodeGen/Hexagon/readcyclecounter.ll
    M llvm/test/CodeGen/Hexagon/readsteadycounter.ll

  Log Message:
  -----------
  [Hexagon] Prevent optimizing out counter reads (#182338)

On Hexagon, ISD::READCYCLECOUNTER and ISD::READSTEADYCOUNTER are lowered
to the A2_tfrcpp instruction which reads the UPCYCLE (c15:14) and
UTIMER (c31:30) registers. Since these registers are volatile, compiler
should not optimize out or move these calls. Usually, this is achieved
by declaring the instruction as having side effects (e.g. MRS in
AArch64). However, as the same instruction is used to read other control
registers, and some of them have normal read/write semantics, it is not
desirable to inhibit such optimization for all of registers.
Additionally, pattern-based lowering of cycle counters is not allowed
by tablegen because of the mismatch in the hasSideEffects attribute.
Previously, this was worked around with custom lowering and
a Hexagon-specific opcode for each operation.

Therefore, reading UPCYCLE and UTIMER is now done through a
pseudoinstruction, which has the hasSideEffects attribute and is lowered
by a pattern. This allows us to easily separate control registers with
and without side effects. Two pseudoinsructions are defined:
PS_readcr (32 bits) and PS_readcr64 (64-bits). I also remove the custom
lowering and Hexagon-specific opcodes.

In case the compiler needs to emit code reading other counters, this
method can be used by simply adding patterns that use PS_readcr
or PS_readcr64.


  Commit: b9143faf46281b877513fdfbb49969e3ca8371af
      https://github.com/llvm/llvm-project/commit/b9143faf46281b877513fdfbb49969e3ca8371af
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/valarray/TestDataFormatterStdValarray.py

  Log Message:
  -----------
  [lldb][test] TestDataFormatterStdValarray: relax expected error message check

After https://github.com/llvm/llvm-project/pull/182297, we started generated `-gsimple-template-names` debug-info by default on macOS. The test was expecting template parameters in the error message. But with `simple-template-names` typenames would not contain template parameters (unless LLDB reconstructs them to do so). This formatter test was expecting template parameters, which would fail on macOS > 26.

Because the test is just concerned with checking that the `std::valarray` formatter works as expected (not that LLDB can retrieve typenames with/without template names), this patch relaxes the assertion.

In a follow-up we should fix up any type-name printing that would break with `simple-template-names`.


  Commit: 47da1cea9780dd3e60bad61fd96250b37469339a
      https://github.com/llvm/llvm-project/commit/47da1cea9780dd3e60bad61fd96250b37469339a
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    A clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    A clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    A clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    A clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    A clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    A clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    A clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/rocm-device-libs.cl

  Log Message:
  -----------
  Revert "clang/AMDGPU: Stop looking for oclc_correctly_rounded_sqrt control libraries" (#182877)

Reverts llvm/llvm-project#182858

This breaks premerge for flang.
https://lab.llvm.org/staging/#/builders/192/builds/21018. Reverting the
patch locally fixes the issue.


  Commit: 20c6a597ad7c6a1d2c4558fc823849ce3e4ee67e
      https://github.com/llvm/llvm-project/commit/20c6a597ad7c6a1d2c4558fc823849ce3e4ee67e
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4510 diagnostic; NFC (#182872)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4510?view=msvc-170

> 'class' : default constructor could not be generated

This diagnostic was disabled in 5c73e1f85c5d37a5b037c70f3c112eec5646acb3
because it was generating 1700+ diagnostics at the time. Locally
enabling the warning causes no new diagnostics to be emitted, so I think
the false positives have been addressed and this can be enabled.


  Commit: 6465d6dbe6ecac60247d9c55008ec970185e3c28
      https://github.com/llvm/llvm-project/commit/6465d6dbe6ecac60247d9c55008ec970185e3c28
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4291 diagnostic; NFC (#182868)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4291?view=msvc-170

> 'declaration' : no matching operator delete found; memory will not be
> freed if initialization throws an exception

This was disabled because it was necessary for some code in Clang, but
after re-enabling the warning, no new diagnostics were emitted.


  Commit: 0b95a494c90cb77a50415fb85196e1eb80f96a5d
      https://github.com/llvm/llvm-project/commit/0b95a494c90cb77a50415fb85196e1eb80f96a5d
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/copyable_reorder.ll

  Log Message:
  -----------
  [SLP][NFC] Pre-commit tests for copyable element reordering (#182653)

Tests for #182443.


  Commit: b960e6ecab3130a0b9a5d5d5a57c67a898a5ec98
      https://github.com/llvm/llvm-project/commit/b960e6ecab3130a0b9a5d5d5a57c67a898a5ec98
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp

  Log Message:
  -----------
  Silence "switch statement contains default but not case labels"; NFC (#182855)

Silences an MSVC C4065 diagnostic that was introduced in
0dd1cb015e8b1439e70c152eb134abb01e1af831


  Commit: 174aaacf97e2ebb0de1203b1a2a719a3d509b946
      https://github.com/llvm/llvm-project/commit/174aaacf97e2ebb0de1203b1a2a719a3d509b946
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Tooling/Tooling.cpp
    A clang/test/Tooling/serialize-diagnostics.cpp

  Log Message:
  -----------
  [Clang] Fix assertion failure in SDiagsWriter when finish() is not called (#181712)

When `--serialize-diagnostics` is used, `SDiagsWriter` enters bitstream
blocks during its initialization. They are expected to be exited in the
`finish()` method.

However in LibTooling based tools (like `clang-tidy` or `clang-check`),
if a user provides an invalid command-line argument, the driver detects
the error and prepares for an early exit. The exit path leads directly
to destruction, skipping the call to `finish()` that would normally
occur in the main logic. Then the assertion detects this block imbalance
and triggers a crash.

As of AI Usage: Gemini 3 was used to rephrase part of the PR description
Closes https://github.com/llvm/llvm-project/issues/140433


  Commit: 035de0a328656b79ac4cdb6e2e8bdf4fcfc2476a
      https://github.com/llvm/llvm-project/commit/035de0a328656b79ac4cdb6e2e8bdf4fcfc2476a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvabd.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Rename RVVConstraint->VS1VS2Constraint. NFC (#182688)


  Commit: a14b72ba63daf3d908f81c846049458692c8d269
      https://github.com/llvm/llvm-project/commit/a14b72ba63daf3d908f81c846049458692c8d269
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Utility/FileSpec.h
    M lldb/source/Core/PluginManager.cpp

  Log Message:
  -----------
  [lldb] Automatically discover and load dynamic LLDB Plugins (#182628)

LLDB's architecture is heavily centered around plugins. Its primary
purpose is abstraction and modularity, more so than extensibility. For
example, all the in-tree plugins are linked in statically. However, it
is possible to load modules dynamically, though that's mostly aimed at
plugins that built on top of the stable public SB API.

I'm working on support for loading modules dynamically, specifically
in-tree modules that use the LLDB_PLUGIN_DEFINE macro and the
corresponding CMake machinery.

This PR adds support for initializing modules using the symbols
generated by the aforementioned macro. This makes it possible to convert
plugins to shared libraries with minimal changes: is:

 - Replace PLUGIN with SHARED in the plugin's CMakeLists.txt.
- Link against libLLDB instead of linking statically against LLVM and
LLDB libraries.
- Re-export all private symbols from libLLDB with
`-DLLDB_EXPORT_ALL_SYMBOLS=ON`.


  Commit: 990996358deac9ba395b29f0845caa092975a14d
      https://github.com/llvm/llvm-project/commit/990996358deac9ba395b29f0845caa092975a14d
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/array-dtor.cpp
    A clang/test/CIR/CodeGen/cleanup-scope-tmp-with-exception.cpp
    A clang/test/CIR/CodeGen/cleanup-scope-tmp.cpp
    M clang/test/CIR/CodeGen/destructors.cpp
    M clang/test/CIR/CodeGen/dtors.cpp
    M clang/test/CIR/CodeGen/nrvo.cpp
    M clang/test/CIR/CodeGen/size-of-vla.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceptr.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-present.cpp

  Log Message:
  -----------
  [CIR] Represent Cleanups  with Cleanup scopes (#180276)

Represent the Cleanups stack explicitly with Cleanup scopes


  Commit: 179b9e26de1063eaf22c407c7207941443b7a1ad
      https://github.com/llvm/llvm-project/commit/179b9e26de1063eaf22c407c7207941443b7a1ad
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4512 diagnostic; NFC (#182576)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4512?view=msvc-170

> 'class' : assignment operator could not be generated

This diagnostic was disabled as part of enabling /W4 use in 5c73e1f
where there were 40k+ instances of the diagnostic being triggered.
However, local testing shows the diagnostic is not being generated.


  Commit: 605f4054bc422e695d441404c508fbecc0ea7ff2
      https://github.com/llvm/llvm-project/commit/605f4054bc422e695d441404c508fbecc0ea7ff2
  Author: pzhengqc <55604844+pzhengqc at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Multilib] Extend support for -fmultilib-flag to all targets (#182220)

Support for the `-fmultilib-flag` option has been added to AArch64/ARM.
This patch extends the support of the flag to all targets.


  Commit: 6e205c0d8e99c44c420afd09d258b8e8fa924373
      https://github.com/llvm/llvm-project/commit/6e205c0d8e99c44c420afd09d258b8e8fa924373
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    R clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/rocm-device-libs.cl
    M flang/test/Driver/omp-driver-offload.f90

  Log Message:
  -----------
  Reapply "clang/AMDGPU: Stop looking for oclc_correctly_rounded_sqrt control libraries" (#182877) (#182887)

This reverts commit 47da1cea9780dd3e60bad61fd96250b37469339a.


  Commit: cd200c8dfae0de1602b59011381377d147a86bdb
      https://github.com/llvm/llvm-project/commit/cd200c8dfae0de1602b59011381377d147a86bdb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcher.cpp

  Log Message:
  -----------
  [TableGen] Implement TypesAreContradictory for non-simple ValueTypeByHwMode. (#182765)

This allows a little bit more factoring in the isel table.

Assisted-by: claude


  Commit: 796a1ea79f413673cbce8ab8975c748f1dbcdc3f
      https://github.com/llvm/llvm-project/commit/796a1ea79f413673cbce8ab8975c748f1dbcdc3f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Core/ThreadedCommunication.h
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    A lldb/include/lldb/Host/windows/ConnectionConPTYWindows.h
    M lldb/include/lldb/Host/windows/PseudoConsole.h
    M lldb/source/Core/ThreadedCommunication.cpp
    M lldb/source/Host/CMakeLists.txt
    M lldb/source/Host/common/ProcessLaunchInfo.cpp
    A lldb/source/Host/windows/ConnectionConPTYWindows.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp

  Log Message:
  -----------
  [lldb][windows] fix a race condition when closing the ConPTY (#182302)

This patch fixes a race condition when closing the ConPTY of a process
on Windows.

The read operation in `ConnectionGenericFile::Read` is asynchronous
because the ConPTY does not work with synchronous reads. However, this
is prone to a race condition if the ConPTY is closed between the
`ReadFile` and the `WaitForMultipleObjects`. This eventually leads to
the data being truncated, i.e some of the STDOUT is missing.

The fix is to introduce a mutex which prevents the ConPTY from closing
while a Read loop is in progress.

At the end of the pipe, `WaitForMultipleObjects` hangs until it receives
a `ERROR_BROKEN_PIPE` event, which is signaled when closing the ConPTY.
It's important to close the Read thread before closing the ConPTY,
otherwise the thread deadlocks waiting for the `ERROR_BROKEN_PIPE` which
is never sent because the ConPTY is waiting for the thread to exit
before closing.

All of this logic is encapsulated in the `ConnectionConPTY` class which
is a subclass of `ConnectionGenericFile`. `ConnectionConPTY` only
supports reading from the ConPTY. To write to it,
`IOHandlerProcessSTDIOWindows` should be used instead.

This patch depends on:
- https://github.com/llvm/llvm-project/pull/182536

This patch replaces https://github.com/llvm/llvm-project/pull/182109.

---------

Co-authored-by: Nerixyz <nero.9 at hotmail.de>


  Commit: 17ed0a7f2711d87ba18aed6254739c127bc191d6
      https://github.com/llvm/llvm-project/commit/17ed0a7f2711d87ba18aed6254739c127bc191d6
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Account for MacroQualifiedType (#182777)

This PR fixes typeAnnotationForReturnType to account for
MacroQualifiedType.


  Commit: 181d6c342e149b5ed68c9a0cc7faecb8c71e79b6
      https://github.com/llvm/llvm-project/commit/181d6c342e149b5ed68c9a0cc7faecb8c71e79b6
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Fundamental types are trivially destructive (#182734)

This PR fixes the bug in the "trivial function analysis" that
CanTriviallyDestruct returns false for some fundamental types such as
float and nullptr_t. Return true for these types instead as they are
trivally destructive.


  Commit: 90b4ff82e5d7d5353234346e8d2e35244d328ae4
      https://github.com/llvm/llvm-project/commit/90b4ff82e5d7d5353234346e8d2e35244d328ae4
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Better diagnostics (#182614)

This PR improves NoDeleteChecker's bug report so that it's more
actionable. Namely, when a function fails "triviali function analysis",
we report the first statement or parameter which failed the triviality
check.


  Commit: 8bdef33e6ae9e69bb6f9cc4fdc2b868c0974c3a6
      https://github.com/llvm/llvm-project/commit/8bdef33e6ae9e69bb6f9cc4fdc2b868c0974c3a6
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/EntityLinker/EntityLinker.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/EntitySummaryEncoding.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/LUSummary.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/TUSummaryEncoding.h
    M clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    M clang/include/clang/Analysis/Scalable/Model/EntityId.h
    M clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Model/EntityName.h
    M clang/include/clang/Analysis/Scalable/Model/PrivateFieldNames.def
    M clang/include/clang/Analysis/Scalable/Model/SummaryName.h
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    A clang/include/clang/Analysis/Scalable/Support/ErrorBuilder.h
    A clang/include/clang/Analysis/Scalable/Support/FormatProviders.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/EntityLinker/EntityLinker.cpp
    M clang/lib/Analysis/Scalable/Model/BuildNamespace.cpp
    A clang/lib/Analysis/Scalable/Model/EntityId.cpp
    A clang/lib/Analysis/Scalable/Model/EntityLinkage.cpp
    M clang/lib/Analysis/Scalable/Model/EntityName.cpp
    A clang/lib/Analysis/Scalable/Model/SummaryName.cpp
    M clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    A clang/lib/Analysis/Scalable/Support/ErrorBuilder.cpp
    M clang/unittests/Analysis/Scalable/BuildNamespaceTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    M clang/unittests/Analysis/Scalable/EntityIdTest.cpp
    M clang/unittests/Analysis/Scalable/EntityLinkageTest.cpp
    A clang/unittests/Analysis/Scalable/EntityLinkerTest.cpp
    M clang/unittests/Analysis/Scalable/EntityNameTest.cpp
    A clang/unittests/Analysis/Scalable/ErrorBuilderTest.cpp
    M clang/unittests/Analysis/Scalable/SummaryNameTest.cpp
    M clang/unittests/Analysis/Scalable/TestFixture.cpp
    M clang/unittests/Analysis/Scalable/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Add Entity Linker and associated data structures

This PR introduces the EntityLinker algorithm that merges per-TU
summaries into a single link-unit summary. As part of this change it
adds `operator<<` support for all SSAF model types to enable them to be
formatted automatically in diagnostics and test messages, and extracts
out and improves ErrorBuilder with a cleaner API and test coverage.

rdar://162570931


  Commit: 5d3c4511f2961a14fdc485ef1f1edcf44205ae70
      https://github.com/llvm/llvm-project/commit/5d3c4511f2961a14fdc485ef1f1edcf44205ae70
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/linux/Ptrace.h
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.cpp
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.h
    M lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h
    M lldb/source/Plugins/Process/Windows/Common/arm/RegisterContextWindows_arm.cpp
    A lldb/test/API/linux/arm/tls_register/Makefile
    A lldb/test/API/linux/arm/tls_register/TestArmLinuxTLSRegister.py
    A lldb/test/API/linux/arm/tls_register/main.c
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][ARM] Support reading the thread pointer register on ARM Linux (#182438)

This implements reading the TPIDRURO register, which serves as the
thread pointer register on ARM Linux. Note that the register is not
displayed for core files because it is not included in the dump.


  Commit: 055b1efc1fe34106a8dc00a667708d5619077206
      https://github.com/llvm/llvm-project/commit/055b1efc1fe34106a8dc00a667708d5619077206
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/SandboxIR/Region.cpp
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  [SandboxIR][Region] Replace exit() with reportFatalUsageError() (#182134)

`Region::createRegionsFromMD()` parses the IR and the corresponding
metadata and forms one or more Regions. If an instruction is tagged as
being part of the "auxiliary" vector of the region, then a check
enforces that it should also be part of a region, i.e., it should have
both `!sandboxaux` and `!sandboxvec` metadata, not just `!sandboxaux`.

The check used to `exit(1)` after printing an error, but it's better to
abort using LLVM's error handling functions. Since the user can write
the IR by hand I think it makes sense to report this as a usage error
with `reportFatalUsageError()`, and not as an internal error.


  Commit: dd6e7b8ee6d932cf34f87d91b0a600e5a7ee601f
      https://github.com/llvm/llvm-project/commit/dd6e7b8ee6d932cf34f87d91b0a600e5a7ee601f
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll

  Log Message:
  -----------
  [LV] Add corner-case tests for licm of predicated memops (#182828)


  Commit: 812c6f8305d6e94ab0077e06bf0ea156fb81d86a
      https://github.com/llvm/llvm-project/commit/812c6f8305d6e94ab0077e06bf0ea156fb81d86a
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A mlir/include/mlir/Dialect/OpenACC/OpenACCParMapping.h

  Log Message:
  -----------
  [mlir][acc] Add parallelism mapping policy interface (#182890)

Add a header that defines the interface for mapping OpenACC parallelism
levels (gang, worker, vector) to target-specific parallel dimension
attributes. Alongside this,
DefaultACCToGPUMappingPolicy is introduced for an initial implementation
of ACC parallelism to GPU mapping.


  Commit: de6cadeced1794f6b747c195b5e8ddb878c8457c
      https://github.com/llvm/llvm-project/commit/de6cadeced1794f6b747c195b5e8ddb878c8457c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl

  Log Message:
  -----------
  [CIR] Fix HLSL test that crashes (#182894)

This was caused by #182609, which just changed the way the AST stores
these, which causes us to hit an NYI in a way that doesn't recover
nicely. In the future, we could probably represent a 'no op' instead of
an empty op in the IR for these cases, but there isn't much use for it,
   since it is always after NYI.

This patch changes the test to use float instead of float1 as suggested
in review, which avoids the problematic conversion.


  Commit: 36445f7b8f99dd3b3af3ba74c4d128b626a9c52c
      https://github.com/llvm/llvm-project/commit/36445f7b8f99dd3b3af3ba74c4d128b626a9c52c
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill-xfail.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.error.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll

  Log Message:
  -----------
  [AMDGPU] Fix caller/callee mismatch in SGPR assignment for inreg args (#182754)

On the callee side, `LowerFormalArguments` marks SGPR0-3 as allocated in
`CCState` before running the CC analysis. On the caller side,
`LowerCall` (and GlobalISel's `lowerCall`/`lowerTailCall`) added the
scratch resource to `RegsToPass` without marking it in `CCState`. This
caused `CC_AMDGPU_Func` to treat SGPR0-3 as available on the caller
side, assigning user inreg args there, while the callee skipped them
without marking it in `CCState`. This caused `CC_AMDGPU_Func` to treat
SGPR0-3 as available on the caller side, assigning user inreg args
there, while the callee skipped them.


  Commit: 9926ea9888322e8743e320176d0e26e0e8c273bf
      https://github.com/llvm/llvm-project/commit/9926ea9888322e8743e320176d0e26e0e8c273bf
  Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/bypass-div.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.ll
    A llvm/test/CodeGen/AMDGPU/setcc-select-hi32mask.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.ll
    M llvm/test/CodeGen/AMDGPU/srem.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll

  Log Message:
  -----------
  [AMDGPU][ISel] Reduce 64-bit `setcc` to upper 32 bits if lower 32 bits are known (#181238)

Truncate 64-bit integral `setcc`s to their upper 32-bit operands if
enough information is known about their lower 32-bit operands, subsuming
the special cases handled in #177662.

Alive2 verification for analogous IR transformations:
[xdATxK](https://alive2.llvm.org/ce/z/xdATxK)


  Commit: 6705802ce2132eecc16fe3bcbba46ef68fe75175
      https://github.com/llvm/llvm-project/commit/6705802ce2132eecc16fe3bcbba46ef68fe75175
  Author: Kern Handa <kernhanda at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl

  Log Message:
  -----------
  [lldb][bazel] Add HighlighterDefault, rename ClangHighlighter targets (#182693)

Rename `PluginClangHighlighter` to `PluginHighlighterClang` for
consistency with the directory-based naming convention, add the new
`PluginHighlighterDefault` library, and register both `HighlighterClang`
and `HighlighterDefault` in `DEFAULT_PLUGINS`.


  Commit: 9a91c50a4cc7006f74a66b8b76f2b0e2661bb27d
      https://github.com/llvm/llvm-project/commit/9a91c50a4cc7006f74a66b8b76f2b0e2661bb27d
  Author: Harrishan Raveendran <108529751+Harrish92 at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  [DAG] isKnownNeverZero - add DemandedElts argument (#182679)

Following changes were made for isKnownNeverZero :
- Added BUILDVECTOR and SPLATVECTOR cases.
- Added support for DemandedElts arguments for SELECT/VSELECT cases.  
- Added tests for constants and SELECT/VSELECT.

Closes #181656


  Commit: 79ea4980bf6d44515425d856dd1b15953fa69ea6
      https://github.com/llvm/llvm-project/commit/79ea4980bf6d44515425d856dd1b15953fa69ea6
  Author: Patryk Wychowaniec <pwychowaniec at pm.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/test/CodeGen/AVR/cmp.ll

  Log Message:
  -----------
  [AVR] Fix SETUGT during 128b -> 64b lowering (#182690)

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


  Commit: 77b31b90d7bcc86692a9dda98409768686546cd0
      https://github.com/llvm/llvm-project/commit/77b31b90d7bcc86692a9dda98409768686546cd0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [X86] Add test showing failure to fold or(buildvector(),buildvector()) pattern into a common buildvector() (#182906)


  Commit: e6f30334de720b0473f1d797c008ccf74fb300b8
      https://github.com/llvm/llvm-project/commit/e6f30334de720b0473f1d797c008ccf74fb300b8
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/CMakeLists.txt
    M clang/docs/index.rst
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    A clang/include/clang/Basic/BuiltinsAMDGPUDocs.td

  Log Message:
  -----------
  [Clang][AMDGPU][Docs] Add builtin documentation for AMDGPU builtins (#181574)

Use the documentation generation infrastructure to document the AMDGPU
builtins.

This PR starts with the ABI / Special Register builtins. Documentation
for the remaining builtin categories will be added incrementally in
follow-up patches.


  Commit: ba294608bea6e4e6641ce76d9eaf624a539c7ec9
      https://github.com/llvm/llvm-project/commit/ba294608bea6e4e6641ce76d9eaf624a539c7ec9
  Author: Damian Malarczyk <d_malarczyk at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    A clang/test/CodeGenObjC/block-layout-section.m

  Log Message:
  -----------
  Move the ObjC blocks layout bitmap to the cstring section (#182398)

This is a follow-up to https://github.com/llvm/llvm-project/pull/174705

There's one additional place in the ObjC code gen logic to make sure the
ObjC blocks layout is generated in the regular cstring section.


  Commit: b8a4bf2fdd2fb9ea9c08c39c4f21cd1aa93063b4
      https://github.com/llvm/llvm-project/commit/b8a4bf2fdd2fb9ea9c08c39c4f21cd1aa93063b4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Remove extra ReadSFBALU from SFBNDS_BFO. (#182900)

There are only 4 register operands so there should only be 4 Read.


  Commit: 8eea16004b92afb16859a4efe6def5b5c630fb2a
      https://github.com/llvm/llvm-project/commit/8eea16004b92afb16859a4efe6def5b5c630fb2a
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/test/Sema/attr-overflow-behavior-format-strings.c
    M clang/test/Sema/attr-overflow-behavior-templates.cpp
    M clang/test/Sema/attr-overflow-behavior.c
    M clang/test/Sema/attr-overflow-behavior.cpp

  Log Message:
  -----------
  [Clang][NFC] Don't redefine __trap macro in tests for PowerPC (#182898)

These `OverflowBehaviorType` tests were failing due to PowerPC already
defining a __trap macro.

We can just remove the __wrap and __trap macros as they are unused in these tests.

Signed-off-by: Justin Stitt <justinstitt at google.com>


  Commit: 5bccf343e672ac4f8ed691c1346835a3bdc53090
      https://github.com/llvm/llvm-project/commit/5bccf343e672ac4f8ed691c1346835a3bdc53090
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16fmaf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16fmaf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16fmaf128.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor `bf16fmaf128` to header-only (#182009)

Close #181627


  Commit: 4ffa61978b3d72b868e995bf89d4f864f5e8ab6d
      https://github.com/llvm/llvm-project/commit/4ffa61978b3d72b868e995bf89d4f864f5e8ab6d
  Author: Vasileios Porpodas <vasileios.porpodas at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/SandboxIR/Region.cpp
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  Revert "[SandboxIR][Region] Replace exit() with reportFatalUsageError() (#182134)"

This reverts commit 055b1efc1fe34106a8dc00a667708d5619077206.


  Commit: b19a0e01073cac3d39ad420fdbc4fbe6e759bb96
      https://github.com/llvm/llvm-project/commit/b19a0e01073cac3d39ad420fdbc4fbe6e759bb96
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/getpayload.h
    A libc/shared/math/getpayloadbf16.h
    A libc/shared/math/getpayloadf.h
    A libc/shared/math/getpayloadf128.h
    A libc/shared/math/getpayloadf16.h
    A libc/shared/math/getpayloadl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/getpayload.h
    A libc/src/__support/math/getpayloadbf16.h
    A libc/src/__support/math/getpayloadf.h
    A libc/src/__support/math/getpayloadf128.h
    A libc/src/__support/math/getpayloadf16.h
    A libc/src/__support/math/getpayloadl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/getpayload.cpp
    M libc/src/math/generic/getpayloadbf16.cpp
    M libc/src/math/generic/getpayloadf.cpp
    M libc/src/math/generic/getpayloadf128.cpp
    M libc/src/math/generic/getpayloadf16.cpp
    M libc/src/math/generic/getpayloadl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor getpayload family functions to header-only (#181824)

Refactors the payload_functions math family to be header-only.

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

Target Functions:
  - getpayload
  - getpayloadbf16
  - getpayloadf
  - getpayloadf128
  - getpayloadf16


  Commit: bf97ff0996ec2ac9fa5cc7a410364860d5466187
      https://github.com/llvm/llvm-project/commit/bf97ff0996ec2ac9fa5cc7a410364860d5466187
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake] Disable PCH when LLVM_ENABLE_MODULES is set (#182914)


  Commit: 3b9c27d1fcd3bc271bec7333804dad8fb6bdafb0
      https://github.com/llvm/llvm-project/commit/3b9c27d1fcd3bc271bec7333804dad8fb6bdafb0
  Author: Armillus <37043348+Armillus at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16addl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16addl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16addl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16addl implementation to header-only in src/__support/math folder. (#182561)

Resolves https://github.com/llvm/llvm-project/issues/181019
Part of https://github.com/llvm/llvm-project/issues/147386


  Commit: 03b70cb1f45cc4ffb0ffbd0a832ff86e93833de0
      https://github.com/llvm/llvm-project/commit/03b70cb1f45cc4ffb0ffbd0a832ff86e93833de0
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-vector-bitwise-reductions.ll

  Log Message:
  -----------
  [InstCombine] Restrict foldICmpOfVectorReduce to one-use (#182833)

Follow up on 279b3dbe ([InstCombine] Fold icmp (vreduce_(or|and) %x),
(0|-1), #182684) to fix a regression by restricting the fold to one-use.

Regression: https://godbolt.org/z/f38b169MM


  Commit: bad9e4a84972056a17fc6803cab3674405a6d3f6
      https://github.com/llvm/llvm-project/commit/bad9e4a84972056a17fc6803cab3674405a6d3f6
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts][NFC] Move instr events code into separate function (#180864)

This patch moves the code that finds which events correspond to an
instruction into a separate `getEventsFor(MachineInstr)` function.


  Commit: effb521c6ae2bbb486325ec724e98483bcd9302c
      https://github.com/llvm/llvm-project/commit/effb521c6ae2bbb486325ec724e98483bcd9302c
  Author: Samrudh Nelli <samrudhnelli at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/MDGenerator.cpp
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/assets/enum-template.mustache
    M clang-tools-extra/test/clang-doc/enum.cpp

  Log Message:
  -----------
  [clang-doc] Display enum type along with enum name in HTML view (#181347)

Displays enum type along with name.

For named variables
Previous output : enum XYZ
Current output : enum XYZ : unsigned int

For unnamed variables
Previous output : enum
Current output : enum : unsigned int

Fixes #166652


  Commit: 5edbaf9c82983eb8be0ace107ef8399fb6eac938
      https://github.com/llvm/llvm-project/commit/5edbaf9c82983eb8be0ace107ef8399fb6eac938
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/API/liblldb-private.exports

  Log Message:
  -----------
  [lldb] Export *all* private symbols when using LLDB_EXPORT_ALL_SYMBOLS (#182634)

Export *all* private symbols, from both LLDB and LLVM. The motivation
for this is to be able to create dynamically linked LLDB plugins. These
plugins cannot link any LLDB or LLVM code statically as that results in
duplicated symbols, and instead have to use the ones from libLLDB.


  Commit: b3f3b57aed375b53d1801d532333bd66417b11ef
      https://github.com/llvm/llvm-project/commit/b3f3b57aed375b53d1801d532333bd66417b11ef
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/source/Core/Module.cpp
    M lldb/source/Symbol/SymbolContext.cpp

  Log Message:
  -----------
  [lldb] Speed up SymbolContextList::AppendIfUnique (#181952)

d7fb086668dff68 changed some calls from SymbolContextList::Append to
SymbolContextList::AppendIfUnique. This has unfortunately caused a huge
slow down in operations involving a large amount of symbol contexts (for
example, trying to autocomplete from an empty input "b <TAB>" will add
every function to the list), since AppendIfUnique scans the entire
symbol context list. Speed this up by adding a hash set to quickly
answer whether a symbol context is on the list or not.

This takes the time from running "b <TAB>" when debugging yaml2obj on my
machine from 600 seconds down to 13, which is about the same as before
d7fb086668dff68.

Note that AppendIfUnique has a logic error, which has been present since
its introduction. This has to do with the behavior controlled by
"merge_symbol_into_function", which will try to merge symbols with
symbol context containing the equivalent function to that symbol.

The previous patch tried to correct this by adding
CompareConsideringPossiblyNullSymbol(), which is not quite correct.

With CompareConsideringPossiblyNullSymbol(), if symbols are added in
this order:

- Symbol context without symbol.
- Equivalent symbol context with symbol.

The list will have only one symbol context WITHOUT the symbol.

If we stop using CompareConsideringPossiblyNullSymbol() and instead go
back to the == operator which d7fb086668dff68 introduced, with symbols
added in this order, the following will happen:

- Symbol context without symbol.
- Equivalent symbol context with symbol.
- The bare symbol, with "merge_symbol_into_function = true", the list
will have the same symbol twice.

This patch does not attempt to solve this, and instead focuses on the
performance issue d7fb086668dff68 introduced.

rdar://170477680


  Commit: 5a756c8a3a6dba8c9ff2da7126741d348c40925e
      https://github.com/llvm/llvm-project/commit/5a756c8a3a6dba8c9ff2da7126741d348c40925e
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts][NFC] Make Waitcnt members private (#180772)

This patch makes Waitcnt member variables private and replaces their
accesses with calls to set() or get(). This will help us change the
implementation to an a array in the followup patch.


  Commit: 3f742e98794a855e9fbbc60f6c14eb3277d2f030
      https://github.com/llvm/llvm-project/commit/3f742e98794a855e9fbbc60f6c14eb3277d2f030
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    A clang/test/Driver/spirv-lto.c

  Log Message:
  -----------
  [Clang][Driver][SPIRV] Support LTO through the llvm-lto tool (#182347)

There is no SPIR-V linker that supports LTO and a proposal to support
basic SPIR-V linking in `lld` was
[rejected](https://github.com/llvm/llvm-project/pull/178749), so support
a basic version of LTO just by calling `llvm-lto` directly from the
SPIR-V Toolchain. `-Xlinker` can be used to specify flags to `llvm-lto`.

This should be enough for our use case.

There is also the `llvm-lto2` tool, but that requires a list of symbol
resolutions in the command line, and we can't compute that in the
driver.

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 8910926363b0cf2e692c63736eddd671b6453e5f
      https://github.com/llvm/llvm-project/commit/8910926363b0cf2e692c63736eddd671b6453e5f
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    A clang/test/SemaHLSL/Language/MatrixSplatCasts.hlsl
    M clang/test/SemaHLSL/MatrixElementOverloadResolution.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Add implicit type conversions for constant matrix types (#181939)

Fixes #175853

This PR extends implicit type conversion support to Clang's HLSL
frontend for handling ConstantMatrix types in addition to Vectors. The
logic is pretty much identical when handling a ConstantMatrix versus a
Vector so the changes are rather simple.

Assisted-by: claude-opus-4.6


  Commit: ed6cd322dec5e5d48e48dd9eceab6fa9e848b5f0
      https://github.com/llvm/llvm-project/commit/ed6cd322dec5e5d48e48dd9eceab6fa9e848b5f0
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [bazel][Clang][AMDGPU][Docs] Port e6f30334de720b0473f1d797c008ccf74fb300b8 (#182925)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: a56993a694ed02775285b9fe0e23fce8346491c9
      https://github.com/llvm/llvm-project/commit/a56993a694ed02775285b9fe0e23fce8346491c9
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUFeatures.td
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/R600Subtarget.cpp
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i32.ll
    M llvm/test/CodeGen/AMDGPU/captured-frame-index.ll
    M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes.ll
    M llvm/test/CodeGen/AMDGPU/extload-private.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/indirect-private-64.ll
    M llvm/test/CodeGen/AMDGPU/insert_subreg.ll
    M llvm/test/CodeGen/AMDGPU/load-hi16.ll
    M llvm/test/CodeGen/AMDGPU/load-lo16.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-slot-offset.ll
    M llvm/test/CodeGen/AMDGPU/parallelandifcollapse.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-no-opts.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-stored-pointer-value.ll
    M llvm/test/CodeGen/AMDGPU/split-vector-memoperand-offsets.ll
    M llvm/test/CodeGen/AMDGPU/store-hi16.ll
    M llvm/test/CodeGen/AMDGPU/target-cpu.ll
    M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
    M llvm/test/CodeGen/AMDGPU/vector-alloca.ll

  Log Message:
  -----------
  [AMDGPU] Remove `FeaturePromoteAlloca` (#177636)

It looks like `+promote-alloca` is always enabled, and `-promote-alloca`
is simply used as a switch to toggle the pass.


  Commit: 6f46681efe1204638ab025709bad2fe7382cfe6a
      https://github.com/llvm/llvm-project/commit/6f46681efe1204638ab025709bad2fe7382cfe6a
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/docs/conf.py
    M lldb/docs/use/variable.rst

  Log Message:
  -----------
  [lldb][docs] Improve documentation typehints (#182892)

Some parts of the docs uses google style docstrings, but the generated
docstrings are note formatted properly.
Add the builtin napoleon extension.
Add typehints to the `SyntheticChildrenProvider` in variable docs.


  Commit: ac9f3596626d88dab10b68dbf0d94355aea3de4a
      https://github.com/llvm/llvm-project/commit/ac9f3596626d88dab10b68dbf0d94355aea3de4a
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/BitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTfrCleanup.cpp
    R llvm/test/CodeGen/Hexagon/copy-phys-int-dbl.mir
    R llvm/test/CodeGen/Hexagon/tfr-cleanup-subreg-copy.ll
    R llvm/test/CodeGen/Hexagon/truncating-copy-double-to-int.ll

  Log Message:
  -----------
  Revert "[Hexagon] Handle subreg copies between DoubleRegs and IntRegs… (#182861)

… (#181360)"

This reverts commit 689ecf880373bb4e0f01ed5e004f19a466e869dc.


  Commit: 6ca5490b31e83852e83460520e9df135d750cc69
      https://github.com/llvm/llvm-project/commit/6ca5490b31e83852e83460520e9df135d750cc69
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir

  Log Message:
  -----------
  [CIR] Implement initial flattening of cleanup scopes with EH (#182636)

This implements flattening of cir.cleanup_scope operations that require
exception handling. Calls within the cleanup scope body that may throw
an exception are replaced by cir.try_call operations that unwind to an
exception handling block that executes the operations in the cleanup
scope's cleanup region and then unwinds to the caller using a cir.resume
operation.

If the cleanup scope is nested within a try operation, the flattening of
the try op will be responsible for updating the resume operation to flow
through its dispatch block. However, that is not yet implemented, so
only the case of a try op with no handlers is accepted after this PR.

Flattening of cleanup scopes that require exception handling nested
within other cleanup scopes is not yet implemented.

Substantial amounts of this PR were created using agentic AI tools, but
I have carefully reviewed the code, comments, and tests and made changes
as needed.


  Commit: 4e8c730fc23b3d007c3ed0a04573957a718df1d3
      https://github.com/llvm/llvm-project/commit/4e8c730fc23b3d007c3ed0a04573957a718df1d3
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [unittests][Support] Fix FileSystemTest for BSD semantics (#181487)

BSD semantics (also available on Linux with mount -o bsdgroups/grpid)
for file/directory creation are to inherit the group ID from the parent
directory, rather than using the set-group-ID bit. When running these
tests on FreeBSD (and likely other BSDs), temporary files and
directories are created underneath /tmp, which is root:wheel (0:0), and
so they, and all their descendants, have a group of wheel.

For FileSystemTest.RemoveDirectoriesNoExePerm, in order to allow
traversing the directory which has just been made non-executable, i.e.
non-searchable, so that it can be deleted, the test first sets its
permissions to all_perms. However, all_perms is not just the
user/group/owner read/write/execute bits, it also includes the
set-user-ID, set-group-ID and sticky bits. Since the directory on
FreeBSD has a group of wheel, any users not in the wheel group cannot
set the set-group-ID bit, so this will fail with EPERM, leaving the
directory non-executable, and the following removal will fail, due to
the foo child not being searchable, and then the test harness cleanup
will fail due to the directory not being empty. This test does not
actually need any of these extra permissions to be set, so use all_all
instead, which is just the normal permission bits, and therefore can be
performed.

Similarly, for FileSystemTest.permissions, we try to set the
set-group-ID bit on the temporary file. However, in this case, this is a
deliberate API feature being tested, and so we should make sure it
works. Therefore, explicitly set the group on the file at the start of
the test to be the effective group ID, i.e. what Linux will default to.

Fixes: 79f34ae7fe92 ("[llvm] Fix assertion when stat fails in
remove_directories"
Fixes: 566fdf4a2a89 ("[Support] Add support for getting file system
permissions on Windows and implement sys::fs::set/getPermissions to work
with them")


  Commit: 68945cce4d2bc9659ef3b98cbe9445ae38ef5e20
      https://github.com/llvm/llvm-project/commit/68945cce4d2bc9659ef3b98cbe9445ae38ef5e20
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/mem2reg.mlir

  Log Message:
  -----------
  [flang] Restrict mem2reg promotion through fir.declare to single-block case (#182933)

The PromotableOpInterface on fir.declare allows mem2reg to promote
allocas accessed through declare ops. However, MLIR's mem2reg computes
defining blocks and live-in sets only from direct users of the slot
pointer. Stores through fir.declare are users of the declare result, not
the alloca, so they are not registered as defining blocks. This causes
missing phi nodes at join points (loop headers, merge blocks), which
silently drops conditional updates to promoted variables.
This was observed in CUDA Fortran kernels where a loop variable updated
conditionally (e.g., mywatch = max(1, mywatch-32)) became constant after
promotion, producing incorrect results at runtime.
The fix restricts promotion through fir.declare to cases where all users
of the declare are in the same block. In single-block cases no phi nodes
are needed, so the MLIR limitation does not apply. Cross-block cases are
left unpromoted until the MLIR mem2reg infrastructure is extended to
track defining blocks through PromotableOpInterface results.

With the current behavior, this would be the result. 
```
func.func @loop_conditional_update(%arg0: i32, %cdt: i1) -> i32 {
  %c1 = arith.constant 1 : i32
  %alloca = fir.alloca i32 {bindc_name = "mywatch", uniq_name = "_QFkernelEmywatch"}
  %declare = fir.declare %alloca {uniq_name = "_QFkernelEmywatch"} : (!fir.ref<i32>) -> !fir.ref<i32>
  fir.store %arg0 to %declare : !fir.ref<i32>
  llvm.br ^loop
^loop:
  %val = fir.load %declare : !fir.ref<i32>
  llvm.cond_br %cdt, ^update, ^exit
^update:
  %new = arith.subi %val, %c1 : i32
  fir.store %new to %declare : !fir.ref<i32>
  llvm.br ^loop
^exit:
  %result = fir.load %declare : !fir.ref<i32>
  return %result : i32
}
```

```
  func.func @loop_conditional_update(%arg0: i32, %arg1: i1) -> i32 {
    %c1_i32 = arith.constant 1 : i32
    fir.declare_value %arg0 {uniq_name = "_QFkernelEmywatch"} : i32
    llvm.br ^bb1
  ^bb1:  // 2 preds: ^bb0, ^bb2
    llvm.cond_br %arg1, ^bb2, ^bb3
  ^bb2:  // pred: ^bb1
    %0 = arith.subi %arg0, %c1_i32 : i32 // Doesn't use current value. 
    fir.declare_value %0 {uniq_name = "_QFkernelEmywatch"} : i32
    llvm.br ^bb1
  ^bb3:  // pred: ^bb1
    return %arg0 : i32 // always return $arg0
  }
```

A better fix should probably be done in mem2reg to support these cases
better. I'll look into that later this week.


  Commit: 48a5119d8e7d7236a28c14d06ec215ef3366ef90
      https://github.com/llvm/llvm-project/commit/48a5119d8e7d7236a28c14d06ec215ef3366ef90
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M openmp/CMakeLists.txt
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/docs/Building.md

  Log Message:
  -----------
  [openmp] Allow testing OpenMP without a full clang build tree (#182470)

Having a build tree with "not" and "FileCheck" is still required, but if
Clang/Flang isn't configured in that build, run the tests with the same
compiler CMake uses. This is how testing worked in the standalone build
configurations that now have been removed.


  Commit: 372c65d7a3d20e74a960f1265136ddb5d3fc0bf6
      https://github.com/llvm/llvm-project/commit/372c65d7a3d20e74a960f1265136ddb5d3fc0bf6
  Author: Jinsong Ji <jinsong.ji at intel.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/Operator.h

  Log Message:
  -----------
  [NFC][IR] Fix MSVC C4706 diagnostic w/ 741b2cda32e1 (#182682)

Fix error:

llvm\include\llvm\IR\Operator.h(279) : error C2220: the following
warning is treated as an error
llvm\include\llvm\IR\Operator.h(279) : warning C4706: assignment within
conditional expression


  Commit: 0b66a3aa56dde0fb58ab213e6b7aeb935dcb03fa
      https://github.com/llvm/llvm-project/commit/0b66a3aa56dde0fb58ab213e6b7aeb935dcb03fa
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [bazel] Add missing llc test dep (#182937)

Used by mlir/test/Dialect/X86Vector/dot-bf16.mlir, which seems to not be
running due to some other misconfiguration.


  Commit: 423356326bdedbb2325471a9cc76470ec1ab5b39
      https://github.com/llvm/llvm-project/commit/423356326bdedbb2325471a9cc76470ec1ab5b39
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp

  Log Message:
  -----------
  [NFC] [FlowSensitive] add mock task header for coroutines



Reviewers: jvoung, rohanjr

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


  Commit: df58e0f500eb28c1dfe90054928af8c399f36bbf
      https://github.com/llvm/llvm-project/commit/df58e0f500eb28c1dfe90054928af8c399f36bbf
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [FlowSensitive] [StatusOr] add test involving co_return



Reviewers: jvoung

Reviewed By: jvoung

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


  Commit: b4564abb013bce01372be75e839b86d44a65fe7e
      https://github.com/llvm/llvm-project/commit/b4564abb013bce01372be75e839b86d44a65fe7e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [NFC] [FlowSensitive] [StatusOr] add test for coroutine crash



Reviewers: jvoung

Reviewed By: jvoung

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


  Commit: 9829d082af865f78c9ad1afa10351331e00a14e1
      https://github.com/llvm/llvm-project/commit/9829d082af865f78c9ad1afa10351331e00a14e1
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SISchedule.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll

  Log Message:
  -----------
  [AMDGPU] Update gfx1250 sched model to latest table (#182923)


  Commit: cb0b13d9d7fe0798d33074ae48afa8da98a16f17
      https://github.com/llvm/llvm-project/commit/cb0b13d9d7fe0798d33074ae48afa8da98a16f17
  Author: Tal Keren <tkeren at paloaltonetworks.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lld/MachO/LTO.cpp
    A lld/test/MachO/lto-slp-vectorize-pm.ll

  Log Message:
  -----------
  [lld][MachO] Enable LoopVectorization and SLPVectorization for ThinLTO (#182748)

Commit 21a4710c67a97838dd75cf60ed24da11280800f8 previously enabled
LoopVectorization and SLPVectorization CodeGen options for the ELF and
COFF LTO backends. Since the Mach-O LTO port did not exist at the time,
it missed this configuration.

This patch adds these options to the Mach-O LTO setup for consistency
with the other backends. Without this, SLP and loop vectorization passes
are silently skipped during Mach-O LTO for O2 and O3 builds.


  Commit: 8604b52e380fb37a3599539b1d87a68666ab6ed5
      https://github.com/llvm/llvm-project/commit/8604b52e380fb37a3599539b1d87a68666ab6ed5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    A llvm/test/Transforms/SafeStack/SPARC/safestack.ll

  Log Message:
  -----------
  RuntimeLibcalls: Fix adding __safestack_pointer_address by default (#182936)

This was accidentally added to the default set of libcalls, so move
it out of the giant let block over functions in the default set.

Should fix regression on SPARC bot.


  Commit: c716009d710d7b5d9c6c5ab67d97a2975b7ef6e0
      https://github.com/llvm/llvm-project/commit/c716009d710d7b5d9c6c5ab67d97a2975b7ef6e0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Remove unnecessary setOperationAction for P extension. NFC

We default all vector operations to Expand for P so this one is
redundant.


  Commit: 1c7cb39849193eabe223bef46da35329be5c0dc6
      https://github.com/llvm/llvm-project/commit/1c7cb39849193eabe223bef46da35329be5c0dc6
  Author: CatherineMoore <catmoore at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  [Clang][Docs] Update OpenMP support status for loop transformations (#182591)

Update loop fusion transformation codegen status to done and add
additional PR links. Mark loop index set splitting parsing as in
progress.

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: df128ce63e8d7abce77ce0e1cd388ade0f21e501
      https://github.com/llvm/llvm-project/commit/df128ce63e8d7abce77ce0e1cd388ade0f21e501
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/EntityLinker/LUSummary.h

  Log Message:
  -----------
  [clang][ssaf][NFC] Avoid incomplete EntitySummary type breakage (#182946)

When parsing LUSummary.h as a standalone header unit, EntitySummary is
an incomplete type, causing compilation to fail:

```
__memory/unique_ptr.h:72:19: error: invalid application of 'sizeof' to an incomplete type 'clang::ssaf::EntitySummary'
   72 |     static_assert(sizeof(_Tp) >= 0, "cannot delete an incomplete type");
...
clang/include/clang/Analysis/Scalable/EntityLinker/LUSummary.h:48:12: note: in instantiation of member function 'std::map<clang::ssaf::SummaryName, std::map<clang::ssaf::EntityId, std::unique_ptr<clang::ssaf::EntitySummary>>>::map' requested here
   48 |   explicit LUSummary(NestedBuildNamespace LUNamespace)
      |            ^
clang/include/clang/Analysis/Scalable/EntityLinker/LUSummary.h:27:7: note: forward declaration of 'clang::ssaf::EntitySummary'
   27 | class EntitySummary;
```

This is not a total breakage because this header file builds
successfully when used in a .cpp file that includes EntitySummary.h
prior to this.

See https://llvm.org/docs/CodingStandards.html#self-contained-headers


  Commit: 6eb63c69e189c65c0d4d843cced568e03caf2f69
      https://github.com/llvm/llvm-project/commit/6eb63c69e189c65c0d4d843cced568e03caf2f69
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h

  Log Message:
  -----------
  [CodeGen] Remove legacy getTgtMemIntrinsic overload (#175846)

It is now fully unused.


  Commit: 476492bd1638eaa1e1a5a845307f25ac966d0fe3
      https://github.com/llvm/llvm-project/commit/476492bd1638eaa1e1a5a845307f25ac966d0fe3
  Author: David Green <david.green at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll

  Log Message:
  -----------
  [AArch64] Add basic scmp and ucmp costs. (#182180)

This adds basic llvm.scmp and llvm.ucmp costs. Scalars are costed as
cmp+cset+csinv. Neon vectors can use cmgt - cmgt as the vectors write
full vector lanes.


  Commit: c3a86ff2d0b397d757345fad7e29c2a6e7dbc823
      https://github.com/llvm/llvm-project/commit/c3a86ff2d0b397d757345fad7e29c2a6e7dbc823
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/test/CodeGen/Hexagon/extract-hvx-subvector-pred-small.ll

  Log Message:
  -----------
  [Hexagon] Fix extractHvxSubvectorPred shuffle mask for small predicates (#181364)

The loop generating the shuffle mask in extractHvxSubvectorPred used
HwLen/ResLen as the iteration count, but each iteration produces 8
elements (ResLen * Rep where Rep = 8/ResLen). This means the total mask
size was (HwLen/ResLen) * 8, which only equals HwLen when ResLen == 8.
For smaller predicate subvectors (e.g., <4 x i1> or <2 x i1>), the mask
was too large, causing an assertion failure in getVectorShuffle.

Fix by using HwLen/8 as the loop bound, which correctly produces HwLen
elements regardless of ResLen.


  Commit: 4a788031e8fc00eeae58a50665b499e6e87be850
      https://github.com/llvm/llvm-project/commit/4a788031e8fc00eeae58a50665b499e6e87be850
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  AMDGPU: Cleanup the handling of flags in getTgtMemIntrinsic (#179469)

Some of the flag handling seems a bit inconsistent and dodgy, but this
is meant to be a pure refactoring for now.


  Commit: 3df1c6f88bfbbd76d9256c55358bb75e02e33779
      https://github.com/llvm/llvm-project/commit/3df1c6f88bfbbd76d9256c55358bb75e02e33779
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/include/llvm/Transforms/Vectorize/VPlanTestPass.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    A llvm/lib/Transforms/Vectorize/VPlanTestPass.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-licm.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-merge-blocks.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-remove-dead-recipes.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-simplify-recipes.ll
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-widen-from-metadata.ll

  Log Message:
  -----------
  [VPlan] Add simple driver option to run some individual transforms. (#178522)

Add an alternative to test VPlan in more isolation via a new
`vplan-test-transform` option, which builds VPlan0 for each loop in the
input IR and then can invoke a set of transforms on it.

In order to allow different recipe types to be created, a new
widen-from-metadata transform is added, which transforms VPInstructions
to different recipes, based on custom !vplan.widen metadata. Currently
this supports creating widen & replicate recipes, but can easily be
extended in the future.

Currently the handling is intentionally bare-bones, to be extended
gradually as needed.

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


  Commit: 6d37110e091569509f54e2b1f3ef35e8a50e5b70
      https://github.com/llvm/llvm-project/commit/6d37110e091569509f54e2b1f3ef35e8a50e5b70
  Author: Daniel Thornburgh <mysterymath at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    R llvm/test/Transforms/SafeStack/SPARC/safestack.ll

  Log Message:
  -----------
  Revert "RuntimeLibcalls: Fix adding __safestack_pointer_address by default" (#182949)

Reverts llvm/llvm-project#182936


  Commit: 6b352aa8ea54bd53ca7b396639b563c8744aa011
      https://github.com/llvm/llvm-project/commit/6b352aa8ea54bd53ca7b396639b563c8744aa011
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    R llvm/include/llvm/Transforms/Vectorize/VPlanTestPass.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    R llvm/lib/Transforms/Vectorize/VPlanTestPass.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    R llvm/test/Transforms/LoopVectorize/VPlan/vplan-licm.ll
    R llvm/test/Transforms/LoopVectorize/VPlan/vplan-merge-blocks.ll
    R llvm/test/Transforms/LoopVectorize/VPlan/vplan-remove-dead-recipes.ll
    R llvm/test/Transforms/LoopVectorize/VPlan/vplan-simplify-recipes.ll
    R llvm/test/Transforms/LoopVectorize/VPlan/vplan-widen-from-metadata.ll

  Log Message:
  -----------
  Revert "[VPlan] Add simple driver option to run some individual transforms. (#178522)"

This reverts commit 3df1c6f88bfbbd76d9256c55358bb75e02e33779.

Causes build-failures without assertions
https://lab.llvm.org/buildbot/#/builders/159/builds/41683


  Commit: a347e1298c98405e5bff1d4bb1e2e3c7f532f893
      https://github.com/llvm/llvm-project/commit/a347e1298c98405e5bff1d4bb1e2e3c7f532f893
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp

  Log Message:
  -----------
  [Offload] Enable memory usage printing with `alloc` debug type (#182938)


  Commit: 4f59da55d7103c0897d4faae3795067332cac061
      https://github.com/llvm/llvm-project/commit/4f59da55d7103c0897d4faae3795067332cac061
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] EmitFromMemory when emitting load of vector and matrix element LValues (#178315)

Fixes #177712

The MatrixElt and VectorElt cases of `EmitLoadOfLValue` did not convert
the scalar value from its load/store type into its primary IR type like
the other cases do, which caused issues with HLSL in particular which
requires bools to be converted to and from i32 and i1 forms for its
load/store and primary IR types respectively.

This PR fixes the issue by applying `EmitFromMemory` to the loaded
scalar.


  Commit: 9146da3a7bee5c62a12fed9b423c8292209da926
      https://github.com/llvm/llvm-project/commit/9146da3a7bee5c62a12fed9b423c8292209da926
  Author: PiJoules <leonardchan at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/CMakeLists.txt
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/asan/asan_rtl_x86_64.S

  Log Message:
  -----------
  [ASan][Fuchsia] Have Fuchsia use a dynamic shadow start (#180880)

The dynamic shadow global is still set to zero, but this will change in the future.


  Commit: a8f3c97d3aa4943d03f657c8b086dbca4b6b50dd
      https://github.com/llvm/llvm-project/commit/a8f3c97d3aa4943d03f657c8b086dbca4b6b50dd
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/InstCount.cpp
    A llvm/test/Analysis/InstCount/instcount.ll
    R llvm/test/Other/instcount.ll

  Log Message:
  -----------
  Implemented metric that gets biggest function's size (#182632)

This metric gets the size of the biggest function.


  Commit: 23302678e8a45529f62cb3601d2cc315d236376a
      https://github.com/llvm/llvm-project/commit/23302678e8a45529f62cb3601d2cc315d236376a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/test/Driver/cl-offload.cu
    M clang/test/Driver/cuda-arch-translation.cu
    M clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip
    M clang/test/Driver/hip-code-object-version.hip
    M clang/test/Driver/hip-gz-options.hip
    M clang/test/Driver/hip-macros.hip
    M clang/test/Driver/hip-offload-arch.hip
    M clang/test/Driver/hip-options.hip
    M clang/test/Driver/hip-sanitize-options.hip
    M clang/test/Driver/hip-save-temps.hip
    M clang/test/Driver/hip-temps-windows.hip
    M clang/test/Driver/hip-thinlto.hip
    M clang/test/Driver/hip-toolchain-device-only.hip
    M clang/test/Driver/hip-toolchain-mllvm.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hip-toolchain-opt.hip
    M clang/test/Driver/no-gpu-bundle-respected.hip
    M clang/unittests/Tooling/ToolingTest.cpp

  Log Message:
  -----------
  [HIP] Move HIP to the new driver by default (#123359)

Summary:
This patch matches CUDA, moving the HIP compilation jobs to the new
driver by default. The old behavior will return with
`--no-offload-new-driver`. The main difference is that objects compiled
with the old driver are no longer compatible and will need to be
recompiled or the old driver used.


  Commit: 19daed352f218f866ebcbbf3f35b14918588d8a1
      https://github.com/llvm/llvm-project/commit/19daed352f218f866ebcbbf3f35b14918588d8a1
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/CMakeLists.txt
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/asan/asan_rtl_x86_64.S

  Log Message:
  -----------
  Revert "[ASan][Fuchsia] Have Fuchsia use a dynamic shadow start" (#182972)

Reverts llvm/llvm-project#180880

This is breaking Fuchsia's CI. something in the CMake needs to be
adjusted. Reverting on the author's request.


  Commit: 757066c95e150fb3d80d687ff85707a186aab407
      https://github.com/llvm/llvm-project/commit/757066c95e150fb3d80d687ff85707a186aab407
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp

  Log Message:
  -----------
  [NFCi][AsmPrinter] Refactor getting analyses to callbacks

As part of making AsmPrinter work with the new pass manager, we need to
be able to override how we get analyses. This patch does that by
refactoring getting all analyses/other related functionality to
callbacks that are set by default but can be overriden later (like by a
NewPM wrapper pass).

Reviewers: aeubanks

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


  Commit: 683d15f81050c3109577118e16846fee4e48637c
      https://github.com/llvm/llvm-project/commit/683d15f81050c3109577118e16846fee4e48637c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86TargetMachine.h
    M llvm/tools/llc/NewPMDriver.cpp

  Log Message:
  -----------
  [CodeGen][NewPM] Plumb MCContext through buildCodeGenPipeline

Otherwise we cannot create an MCStreamer without getting MMI, which we
cannot do until we have started running AsmPrinter without also plumbing
MMI through CodeGenPassBuilder.

Reviewers: arsenm, paperchalice, aeubanks

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


  Commit: abc443ba0aa7b997249220a45be7dc51405997d1
      https://github.com/llvm/llvm-project/commit/abc443ba0aa7b997249220a45be7dc51405997d1
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp

  Log Message:
  -----------
  [CodeGen][NewPM] Adjust pipeline for AsmPrinter

AsmPrinter needs to be split into three passes (begin, per MF, end) to
avoid the need to materialize all machine functions at the same time.
Update the CodeGenPassBuilder hooks for this.

Reviewers: aeubanks, paperchalice, arsenm

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


  Commit: 25f69d7a3feefbf96f3d58d8ca1d8fce45d4543d
      https://github.com/llvm/llvm-project/commit/25f69d7a3feefbf96f3d58d8ca1d8fce45d4543d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h

  Log Message:
  -----------
  [NFCi][NewPM][x86] Use callbacks to get analyses in AsmPrinter

This allows for overriding these call backs when using the NewPM which
has different methods for obtaining analysis results.

Reviewers: RKSimon, arsenm, phoebewang, mingmingl-llvm, aeubanks

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


  Commit: 6b63c59a5855d24e441a0dcdb4371bb4f1612b7f
      https://github.com/llvm/llvm-project/commit/6b63c59a5855d24e441a0dcdb4371bb4f1612b7f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    A llvm/test/CodeGen/X86/npm-asmprint.ll

  Log Message:
  -----------
  [NewPM][X86] Port AsmPrinter to NewPM

This patch makes AsmPrinter work with the NewPM. We essentially create
three new passes that wrap different parts of AsmPrinter so that we can
separate out doIntialization/doFinalization without needing to
materialize all MachineFunctions at the same time. This has two main
drawbacks for now:

1. We do not transfer any state between the three new AsmPrinter passes.
   This means that debuginfo/CFI currently does not work. This will be
   fixed in future passes by moving this state to MachineModuleInfo.
2. We probably incur some overhead by needing to setup up analysis
   callbacks for every MF rather than just per module. This should not
   be large, and can be optimized in the future on top of this if
   needed.
3. This solution is not really clean. However, a lot of cleanup is going
   to be difficult to do while supporting two pass managers. Once we
   remove LegacyPM support, we can make the code much cleaner and better
   enforce invariants like a lack of state between
   doInitialization/runOnMachineFunction/doFinalization.

Reviewers: arsenm, aeubanks, paperchalice

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


  Commit: a17a305f055a9baa88b524f99653a93e082fa5c9
      https://github.com/llvm/llvm-project/commit/a17a305f055a9baa88b524f99653a93e082fa5c9
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/InstCount.cpp
    M llvm/test/Analysis/InstCount/instcount.ll

  Log Message:
  -----------
  [LLVM] Metric added - largest number of basic blocks in a single func… (#182970)

This metric gets the size of the biggest count of basic blocks in a
single function.


  Commit: b311c02c2ce4c18ee321fddbbade749dd244e643
      https://github.com/llvm/llvm-project/commit/b311c02c2ce4c18ee321fddbbade749dd244e643
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/Utils/LoopFusionUtils.cpp
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix assert in slice compute cost (#182712)

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


  Commit: 05a039489d7e01924583a41ec33ee2e41923d335
      https://github.com/llvm/llvm-project/commit/05a039489d7e01924583a41ec33ee2e41923d335
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16mul.h
    A libc/shared/math/bf16mulf.h
    A libc/shared/math/bf16mulf128.h
    A libc/shared/math/bf16mull.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16mul.h
    A libc/src/__support/math/bf16mulf.h
    A libc/src/__support/math/bf16mulf128.h
    A libc/src/__support/math/bf16mull.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16mul.cpp
    M libc/src/math/generic/bf16mulf.cpp
    M libc/src/math/generic/bf16mulf128.cpp
    M libc/src/math/generic/bf16mull.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16mul family to header-only (#182018)

Refactors the bf16mul math family to be header-only.

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

Target Functions:
  - bf16mul
  - bf16mulf
  - bf16mulf128
  - bf16mull


  Commit: 13838efa3c8f8861ae98de9f0deec2c6c13d0728
      https://github.com/llvm/llvm-project/commit/13838efa3c8f8861ae98de9f0deec2c6c13d0728
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/X86_64.cpp
    R lld/test/ELF/Inputs/ztext.s
    A lld/test/ELF/x86-x32-abs.s
    M lld/test/ELF/ztext.s

  Log Message:
  -----------
  [ELF] Adjust allowed dynamic relocation types for x86-64 (#182905)

First, disallow R_X86_64_PC64 - generally only absolute relocations are
allowed in getDynRel. glibc and musl don't support R_X86_64_PC64 as
dynamic relocations.

Second, support R_X86_64_32 as dynamic relocation for the ILP32 ABI
(x32). GNU ld's behavior looks like:

- R_X86_64_32 => R_X86_64_RELATIVE
- R_X86_64_64 with addend 0 => R_X86_64_RELATIVE
- R_X86_64_64 with non-zero addend => R_X86_64_RELATIVE64 (unsupported
  by musl; compilers do not generate such constructs to the best of my
  knowledge)

For now we require R_X86_64_64 to be resolved at link-time for x32.

Fix #140465


  Commit: ccfd59a03efbbd9487252697dc57a9ac6b71a698
      https://github.com/llvm/llvm-project/commit/ccfd59a03efbbd9487252697dc57a9ac6b71a698
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/load-ext.ll

  Log Message:
  -----------
  [NFC][WebAssembly] Expanding load-ext testcases for the MVP CPU target (#182864)

Some features tested in load-ext require sign-ext. 
To test this, add tests targeting the MVP CPU.


  Commit: 3b2c1db8709766e8c2252e9fb19fcff493869c16
      https://github.com/llvm/llvm-project/commit/3b2c1db8709766e8c2252e9fb19fcff493869c16
  Author: Twice <twice at apache.org>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Support type definitions in Python-defined dialects (#182805)

In this PR, we added basic support of type definitions in Python-defined
dialects, including:
- IRDL codegen for type definitions
- Type builders like `MyType.get(..)` and type parameter accessors (e.g.
`my_type.param1`)
- Use Python-defined types in Python-defined oeprations

```python
class TestType(Dialect, name="ext_type"):
    pass

class Array(TestType.Type, name="array"):
    elem_type: IntegerType[32] | IntegerType[64]
    length: IntegerAttr

class MakeArrayOp(TestType.Operation, name="make_array"):
    arr: Result[Array]

class MakeArray3Op(TestType.Operation, name="make_array3"):
    arr: Result[Array[IntegerType[32], IntegerAttr[IntegerType[32], 3]]]
```


  Commit: 1b47242dcda0cf8cdd20858f793f85ab2d2629dc
      https://github.com/llvm/llvm-project/commit/1b47242dcda0cf8cdd20858f793f85ab2d2629dc
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    A llvm/test/Transforms/PGOProfile/chr-convergent.ll

  Log Message:
  -----------
  [CHR] Skip regions containing convergent calls (#180882)

CHR (Control Height Reduction) merges multiple biased branches into a
single speculative check, cloning the region into hot/cold paths. On
GPU targets, the merged branch may be divergent (evaluated per-thread),
splitting the wavefront: some threads take the hot path, others the
cold path.

A convergent call like ds_bpermute (a cross-lane operation on AMDGPU)
requires a specific set of threads to be active — when thread X reads
from thread Y, thread Y must be active and participating in the same
call. After CHR cloning, thread Y may have gone to the cold path while
thread X is on the hot path, so the hot-path ds_bpermute reads a stale
register value from thread Y instead of the intended value.

This caused a miscompilation in rocPRIM's lookback scan: CHR duplicated
a region containing ds_bpermute, and the hot-path copy executed with a
different set of active threads, reading incorrect cross-lane data and
causing a memory access fault.

The fix skips any region containing convergent or noduplicate calls,
following the same pattern as SimplifyCFG's block-duplication guard.


  Commit: 9b4c99a1e4887cdb9c045e6ec06d7d832add07cb
      https://github.com/llvm/llvm-project/commit/9b4c99a1e4887cdb9c045e6ec06d7d832add07cb
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp

  Log Message:
  -----------
  [AsmPrinter] Use default capture for assertion only lambda (#182986)

Otherwise we get an unused variable warning/error in non-assertion
builds.


  Commit: d5bf514200046fd104c63fee8a786a04f52a78c0
      https://github.com/llvm/llvm-project/commit/d5bf514200046fd104c63fee8a786a04f52a78c0
  Author: modiking <mmo at nvidia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/scalarize-non-coalescable-v2f32.ll

  Log Message:
  -----------
  [NVPTX] Scalarize v2f32 instructions if input operand guarantees need for register coalescing (#180113)

The support of f32 packed instructions in #126337 revealed performance
regressions on certain kernels. In one case, the cause comes from
loading a v4f32 from shared memory but then accessing them as {r0, r2}
and {r1, r3} from the full load of {r0, r1, r2, r3}.

This access pattern guarantees the registers requires a coalescing
operation which increases register pressure and degrades performance.
The fix here is to identify if we can prove that an v2f32 operand comes
from non-contiguous vector extracts and if so scalarizes the operation
so the coalescing operation is no longer needed.

I've found that ptxas can see through the extra unpacks/repacks of
contiguous registers this causes in MIR. However in the full test case
the packing of the final scalar->vector results does generate additional
costs especially since the only users unpack them. An additional MIR
pass is possible to catch the case

Assisted-by: Cursor / claude-4.6-opus-high

---------

Co-authored-by: Princeton Ferro <princetonferro at gmail.com>


  Commit: 09ab9a16e2dbecf4019ac5bcb2cb4b6624121749
      https://github.com/llvm/llvm-project/commit/09ab9a16e2dbecf4019ac5bcb2cb4b6624121749
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp

  Log Message:
  -----------
  [MemRefToEmitC] fix typo (#182991)


  Commit: 3de98281d48ad3e00c823eb6426bf2fec9e74cf6
      https://github.com/llvm/llvm-project/commit/3de98281d48ad3e00c823eb6426bf2fec9e74cf6
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

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

  Log Message:
  -----------
  [MLIR][CMake] Disable PCH reuse for C API libraries (#182862)

C API libraries override the symbol visibility default, which is incompatible with PCH.


  Commit: 0ab1d23fbfa2ae0ba14315cb11678d2289510f66
      https://github.com/llvm/llvm-project/commit/0ab1d23fbfa2ae0ba14315cb11678d2289510f66
  Author: Shivam Kunwar <75530356+phyBrackets at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerCompileUnit.h
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    A llvm/test/tools/llvm-dwarfutil/ELF/X86/odr-backward-ref-addr.test

  Log Message:
  -----------
  [DWARFLinker] Use DIEEntry for backward ref_addr references (#181881)

The classic DWARF linker avoids `DIEEntry` for `DW_FORM_ref_addr`
references, using raw `DIEInteger` values with manual offset computation
instead. A stale FIXME explains this was because "the implementation
calls back to DwarfDebug to find the unit offset", but this is no longer
true. `DIEEntry` resolves offsets via
`DIEUnit::getDebugSectionOffset()`, which has no `DwarfDebug`
dependency.


And the real constraint is that forward references may point to
placeholder `DIEs` that never get adopted into a unit tree (due toODR
pruning), so `DIEEntry` cannot resolve them(a test failed during
refactoring this). However, backward references are safe, the target DIE
is already cloned and parented in a unit tree.


  Commit: d44e957d1426693ffee4383422de6de73cd6589f
      https://github.com/llvm/llvm-project/commit/d44e957d1426693ffee4383422de6de73cd6589f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][AST] Make ASTContext::InterpContext mutable (#182884)

Do the `const_cast` only once, in `ASTContext::getInterpContext()`.


  Commit: 03bb37060273590b01132bb8365cc6d5bc863f93
      https://github.com/llvm/llvm-project/commit/03bb37060273590b01132bb8365cc6d5bc863f93
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4us_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotus_vx.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvdot4a8i.td
    R llvm/lib/Target/RISCV/RISCVInstrInfoZvqdotq.td
    M llvm/lib/Target/RISCV/RISCVSelectionDAGInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/pr148084.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvdot4a8i.ll
    R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4su.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4u.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4us.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdot.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotsu.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotu.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotus.ll
    A llvm/test/CodeGen/RISCV/rvv/zvdot4a8i-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
    M llvm/test/DebugInfo/RISCV/relax_dwo_ranges.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/rvv/zvdot4a8i-invalid.s
    A llvm/test/MC/RISCV/rvv/zvdot4a8i.s
    R llvm/test/MC/RISCV/rvv/zvqdotq-invalid.s
    R llvm/test/MC/RISCV/rvv/zvqdotq.s
    M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV][llvm] Rename zvqdotq to zvdot4a8i (#179393)

The renaming PR is here:
https://github.com/riscv/riscv-isa-manual/pull/2576
Note that this also update the version number.


  Commit: 762ad000070fa30a318d187eb67058318dff026a
      https://github.com/llvm/llvm-project/commit/762ad000070fa30a318d187eb67058318dff026a
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    A mlir/test/Dialect/GPU/module-to-binary-invalid-format.mlir

  Log Message:
  -----------
  [mlir][gpu] Validate `gpu-module-to-binary` format (#182842)

`GpuModuleToBinaryPass::runOnOperation` now treats an unsupported
`format` value as a pass failure after emitting `"Invalid format
specified."`.

Add a regression test in
`mlir/test/Dialect/GPU/module-to-binary-invalid-format.mlir`.

Fix: https://github.com/llvm/llvm-project/issues/77052
Fix: https://github.com/llvm/llvm-project/issues/116344
Fix: https://github.com/llvm/llvm-project/issues/116346
Fix: https://github.com/llvm/llvm-project/issues/116352


  Commit: a96daba8403dfe69fd0a243254c0099d0f60c0c5
      https://github.com/llvm/llvm-project/commit/a96daba8403dfe69fd0a243254c0099d0f60c0c5
  Author: Shivam Kunwar <75530356+phyBrackets at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerCompileUnit.h

  Log Message:
  -----------
  [DWARFLinker] Fix buildbot crash: NewUnit can be null during garbage (#182993)

The assert added in
[0ab1d23fbfa2ae0ba14315cb11678d2289510f66](https://github.com/llvm/llvm-project/commit/0ab1d23fbfa2ae0ba14315cb11678d2289510f66)
is incorrect, NewUnit is legitimately null for compile units that are
skipped during garbage collection (e.g. dwarf5-macro.test). Revert to
the original null check.


  Commit: bf3ac05ed2664021e89937bda78cc5fc151f1705
      https://github.com/llvm/llvm-project/commit/bf3ac05ed2664021e89937bda78cc5fc151f1705
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-cvt-f16.hip

  Log Message:
  -----------
  [Clang][AMDGPU] Change __fp16 to _Float16 in GFX1250 CVT builtin definitions (#182893)

Change the type signature `gfx1250 cvt` builtins from `__fp16` to
`_Float16` in the tablegen builtin definitions.


  Commit: 863813cace92f198f731dd8a135b5c8a48813cbf
      https://github.com/llvm/llvm-project/commit/863813cace92f198f731dd8a135b5c8a48813cbf
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Merge interfaces into lldbPluginScriptInterpreterPython (NFC) (#182962)

Make the interfaces part of lldbPluginScriptInterpreterPython instead of
putting them into their own static library. This avoids the need for an
extra static archive and more importantly a bunch of code duplication
between the two CMakeLists.txt.


  Commit: 6654737d9af69df8b27483b66690fb44456fe567
      https://github.com/llvm/llvm-project/commit/6654737d9af69df8b27483b66690fb44456fe567
  Author: Karthika Devi C <quic_kartc at quicinc.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-neon-simd-ldst-one.ll
    M llvm/test/CodeGen/AArch64/arm64-sli-sri-opt.ll
    M llvm/test/CodeGen/AArch64/arm64-tbl.ll
    A llvm/test/CodeGen/AArch64/const-vector-big-endian.ll
    M llvm/test/CodeGen/AArch64/constant-pool-partition.ll
    M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fixed-vector-interleave.ll
    M llvm/test/CodeGen/AArch64/neon-abd.ll
    M llvm/test/CodeGen/AArch64/neon-mov.ll
    M llvm/test/CodeGen/AArch64/neon-stepvector.ll
    M llvm/test/CodeGen/AArch64/pr58350.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/shuffles.ll
    M llvm/test/CodeGen/AArch64/srem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/AArch64/urem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll

  Log Message:
  -----------
  [AArch64] Optimize 64-bit constant vector builds (#177076)

This patch optimizes the creation of constant 64-bit vectors (e.g.,
v2i32, v4i16) by avoiding expensive loads from the constant pool. The
optimization works by packing the constant vector elements into a single
i64 immediate and bitcasting the result to the target vector type. This
replaces a memory access with more efficient immediate materialization.
To ensure this transformation is efficient, a check is performed to
verify that the immediate can be generated in two or fewer mov
instructions. If it requires more, the compiler falls back to using the
constant pool.
The optimization is disabled for bigendian targets for now.


  Commit: 3f024d08355d40e935d89c19d799ccdd298e95a7
      https://github.com/llvm/llvm-project/commit/3f024d08355d40e935d89c19d799ccdd298e95a7
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Core/Module.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
    M lldb/source/Plugins/ObjectContainer/Mach-O-Fileset/ObjectContainerMachOFileset.cpp
    M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
    M lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp

  Log Message:
  -----------
  [lldb] A few small code modernizations and cleanups [NFC] (#182656)

I was reading through ObjectContainerBSDArchive and came across some
dead method decls, a less-than-completely-clear `shared_ptr` typedef in
`ObjectContainerBSDArchive::Archive` for a shared_ptr<Archive> which was
a little unclear when reading a decl like `shared_ptr archive_sp;` for a
local variable.


  Commit: 0b8bb80e27c6051794873a16a0eaf63501a6a1c7
      https://github.com/llvm/llvm-project/commit/0b8bb80e27c6051794873a16a0eaf63501a6a1c7
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/MC/MCContext.cpp
    M llvm/test/MC/ELF/section-sym-err.s

  Log Message:
  -----------
  [MC] Fix crash in x=0; .section x (#183001)

When an equated symbol (e.g. `x=0`) is followed by `.section x`,
getOrCreateSectionSymbol reports an "invalid symbol redefinition"
error but continues to reuse the equated symbol as a section symbol.
This causes an assertion failure in MCObjectStreamer::changeSection
when `setFragment` is called on the equated symbol.

Fix this by clearning `Sym`.


  Commit: 9c0875926827389380f541d93982f0e3f3f8b78d
      https://github.com/llvm/llvm-project/commit/9c0875926827389380f541d93982f0e3f3f8b78d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    A llvm/test/Transforms/SafeStack/AArch64/safestack.ll
    A llvm/test/Transforms/SafeStack/SPARC/safestack.ll

  Log Message:
  -----------
  Reapply "RuntimeLibcalls: Fix adding __safestack_pointer_address by default" (#182949) (#183005)

This reverts commit 6d37110e091569509f54e2b1f3ef35e8a50e5b70.

Now with aarch64 test.


  Commit: 1911488ca3b27e006588f5e2a02e63dc85ba3f3f
      https://github.com/llvm/llvm-project/commit/1911488ca3b27e006588f5e2a02e63dc85ba3f3f
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd_features.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vopd3.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vopd_errs.s

  Log Message:
  -----------
  [AMDGPU] Add VOPD to gfx13 (#182815)

Co-authored-by: Jay Foad <jay.foad at amd.com>


  Commit: 610b40706ff74d2e7785937ed03baa364652dc61
      https://github.com/llvm/llvm-project/commit/610b40706ff74d2e7785937ed03baa364652dc61
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_aliases.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_dpp8.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_err.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_t16_err.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_t16_promote.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2_dpp8.s
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop2.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop2_dpp16.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop2_dpp8.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop3_from_vop2.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop3_from_vop2_dpp16.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx13_dasm_vop3_from_vop2_dpp8.txt

  Log Message:
  -----------
  [AMDGPU] Add VOP2 to gfx13 (#182812)

Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>


  Commit: d59d00a70092c0e8be15d13431ced45a1f8463c7
      https://github.com/llvm/llvm-project/commit/d59d00a70092c0e8be15d13431ced45a1f8463c7
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/popcount_vmask.ll

  Log Message:
  -----------
  [AArch64] Match CTPOP combine without zero extend  (#182859)

Helps improve: https://github.com/llvm/llvm-project/issues/182625.

This does not fully solve the issues with using `ctpop` as the vector
type chosen for the reduction is not ideal in all cases. This results in
extra extends, which can be seen in a few test cases.


  Commit: ea6fee062da1b03b12bb0bf8b180da8e39bcfd51
      https://github.com/llvm/llvm-project/commit/ea6fee062da1b03b12bb0bf8b180da8e39bcfd51
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/SafeStack/SPARC/lit.local.cfg

  Log Message:
  -----------
  SafeStack: Add missing lit.local.cfg to SPARC subdirectory

Forgot to commit file in 8604b52e380fb37a3599539b1d87a68666ab6ed5


  Commit: 14ba1ece8996c2d080e09c507a549bbb95f1957c
      https://github.com/llvm/llvm-project/commit/14ba1ece8996c2d080e09c507a549bbb95f1957c
  Author: Ravil Dorozhinskii <ravil.aviva.com at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [WIP][ROCDL] Added SWMMAC ops for gfx12 and gfx1250 (#181943)

This PR adds SWMMAC ops for gfx12 and gfx1250 arch.


  Commit: 33025a267d716feac257cb052ef183440d76691b
      https://github.com/llvm/llvm-project/commit/33025a267d716feac257cb052ef183440d76691b
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libcxx/include/__iterator/wrap_iter.h
    M lldb/test/API/commands/expression/import-std-module/iterator/TestIteratorFromStdModule.py

  Log Message:
  -----------
  [libc++] Make `__wrap_iter` comparison operators hidden friends (#179590)

Prelude to #179389


  Commit: f80205becd384e73e3dfc6ece97297ab1e8a35f9
      https://github.com/llvm/llvm-project/commit/f80205becd384e73e3dfc6ece97297ab1e8a35f9
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/test/Conversion/MemRefToSPIRV/atomic.mlir

  Log Message:
  -----------
  [mlir][SPIRV] Add sub-element-byte lowering support for atomic_rmw ori/andi ops (#179831)

When the memref element type (e.g., i8) is narrower than the SPIR-V
storage type (e.g., i32 on Vulkan), ori and andi can be lowered with a
single wide atomic instruction because OR-with-0 and AND-with-1 are
identity operations.

The revision follows `IntStoreOpPattern` to compute offsets/sizes via
`adjustAccessChainForBitwidth` method and `getOffsetForBitwidth` method.
Additionally, it handles the returned value (which is the old value by
definition), which is different from `IntStoreOpPattern`. E.g., the
check of `spirv::Capability::Kernel` is the same.


https://github.com/llvm/llvm-project/blob/07ebb18e07fb9e009b1f738d6214a49c7bbe8fee/mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp#L847-L867

There are refactoring opportunities and it is not performed within the
revision because the current implementation is already complicated. The
refactoring can be happenned in a follow-up with its own patch, so
reviewing this revision is easier.

Signed-off-by: hanhanW <hanhan0912 at gmail.com>

---------

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 1bc2446c78d4a30eb29f0a6bb7d7d12d3f08d97c
      https://github.com/llvm/llvm-project/commit/1bc2446c78d4a30eb29f0a6bb7d7d12d3f08d97c
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lld/test/wasm/call-indirect.s
    M lld/test/wasm/invalid-mvp-table-use.s
    M lld/test/wasm/multi-table.s
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
    M llvm/test/MC/WebAssembly/reloc-code.s
    M llvm/test/MC/WebAssembly/reloc-pic.s
    M llvm/test/MC/WebAssembly/reloc-pic64.s
    M llvm/test/MC/WebAssembly/tail-call-encodings.s
    M llvm/test/MC/WebAssembly/weak-alias.s

  Log Message:
  -----------
  [WebAssembly] Use generic CPU by default in llvm-mc (#181460)

Other tools, such as `llc`, use `generic` cpu by default, if you don't
give any `-mcpu`:

https://github.com/llvm/llvm-project/blob/75f738b0b2a15281c6f285380ea947e973a6e02f/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp#L38-L39

But `llvm-mc` didn't do that. This makes `generic` also the default CPU
for `llvm-mc`.


  Commit: a84ee1416b6c179a3d45939a6490f5268ee601bf
      https://github.com/llvm/llvm-project/commit/a84ee1416b6c179a3d45939a6490f5268ee601bf
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M compiler-rt/test/builtins/CMakeLists.txt
    M compiler-rt/test/builtins/Unit/divsf3_test.c
    M compiler-rt/test/builtins/Unit/mulsf3_test.c

  Log Message:
  -----------
  [compiler-rt][ARM] Enable strict mode in divsf3/mulsf3 tests (#179918)

Commit 5efce7392f3f6cc added optimized AArch32 assembly versions of
mulsf3 and divsf3, with more thorough tests. The new tests included test
cases specific to Arm's particular NaN handling rules, which are
disabled on most platforms, but were intended to be enabled for Arm.

Unfortunately, they were not enabled under any circumstances, because I
made a mistake in `test/builtins/CMakeLists.txt`: the command-line `-D`
option that should have enabled them was added to the cflags list too
early, before the list was reinitialized from scratch. So it never ended
up on the command line.

Also, the test file mulsf3.S only even _tried_ to enable strict mode in
Thumb1, even though the Arm/Thumb2 implementation would also have met
its requirements.

Because the strict-mode tests weren't enabled, I didn't notice that they
would also have failed absolutely everything, because they checked the
results using the wrong sense of comparison! I used `==`, but that
comparison was supposed to be a drop-in replacement for
`compareResultF`, which returns zero for equality. Changed the tests to
use `!=`.

Finally, I've also added a macro to each test so that it records the
source line number of each failing test case. That way, when a test
fails, you can find it in the test source more easily, without having to
search for the hex numbers mentioned in the failure message.


  Commit: da1e0d9fcf5d1a1404c49e62599a625895c4b1d7
      https://github.com/llvm/llvm-project/commit/da1e0d9fcf5d1a1404c49e62599a625895c4b1d7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/test/Shell/SymbolFile/NativePDB/inline_sites.test
    M lldb/test/Shell/SymbolFile/NativePDB/lookup-by-types.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/tag-types.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Unconditionally set access control to AS_public (#182956)

This patch removes all our manual adjustments to the access control
specifiers of Clang decls we create from DWARF.

This has led to occasional subtle bugs in the past (the latest being
https://github.com/llvm/llvm-project/issues/171913) and it's ultimately
redundant because Clang already has provisions for LLDB to bypass access
control for C++ and Objective-C. Access control doesn't affect name
lookup so really we're doing a lot of bookkeeping for not much benefit.
The only "feature" that relied on this was that `type lookup <foo>`
would print the access specifier in the output structure layout. I'm not
convinced that's worth keeping the infrastructure in place for (but
happy to be convinced otherwise).

I'd rather lean fully into the Clang access control bypass instead.

Note, i still kept the `AccessType` parameters to the various
`TypeSystemClang` APIs to reduce the size of the diff. A follow-up NFC
change will remove those parameters and adjust all the call-sites.


  Commit: 12d8360727c0f366f293faaf294c9f9bf953f38d
      https://github.com/llvm/llvm-project/commit/12d8360727c0f366f293faaf294c9f9bf953f38d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_segment_if.h
    A libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.segmented.pass.cpp

  Log Message:
  -----------
  [libc++] Add segmented iterator optimization to std::equal (#179242)

```
Benchmark                                                 97fa3e593693    a820f8f10736    Difference    % Difference
------------------------------------------------------  --------------  --------------  ------------  --------------
std::equal(deque<int>)_(it,_it,_it)/1024                        510.92           82.64       -428.27         -83.82%
std::equal(deque<int>)_(it,_it,_it)/1048576                  518795.61        87141.29    -431654.32         -83.20%
std::equal(deque<int>)_(it,_it,_it)/50                           29.24            6.77        -22.46         -76.84%
std::equal(deque<int>)_(it,_it,_it)/8                             4.20            3.71         -0.49         -11.61%
std::equal(deque<int>)_(it,_it,_it)/8192                       3972.84          643.83      -3329.01         -83.79%
std::equal(deque<int>)_(it,_it,_it,_it)/1024                    417.45           81.52       -335.93         -80.47%
std::equal(deque<int>)_(it,_it,_it,_it)/1048576              539228.26        87480.92    -451747.34         -83.78%
std::equal(deque<int>)_(it,_it,_it,_it)/50                       22.25            7.25        -15.00         -67.41%
std::equal(deque<int>)_(it,_it,_it,_it)/8                         4.75            4.44         -0.31          -6.45%
std::equal(deque<int>)_(it,_it,_it,_it)/8192                   3259.01          641.31      -2617.70         -80.32%
std::equal(deque<int>)_(it,_it,_it,_it,_pred)/1024              532.68          327.58       -205.10         -38.50%
std::equal(deque<int>)_(it,_it,_it,_it,_pred)/1048576        600755.28       402988.04    -197767.24         -32.92%
std::equal(deque<int>)_(it,_it,_it,_it,_pred)/50                 27.26           25.29         -1.97          -7.22%
std::equal(deque<int>)_(it,_it,_it,_it,_pred)/8                   5.20            5.58          0.38           7.31%
std::equal(deque<int>)_(it,_it,_it,_it,_pred)/8192             4204.16         2847.30      -1356.86         -32.27%
std::equal(deque<int>)_(it,_it,_it,_pred)/1024                  531.32          329.03       -202.30         -38.07%
std::equal(deque<int>)_(it,_it,_it,_pred)/1048576            598948.55       403822.65    -195125.90         -32.58%
std::equal(deque<int>)_(it,_it,_it,_pred)/50                     26.28           16.18        -10.10         -38.43%
std::equal(deque<int>)_(it,_it,_it,_pred)/8                       4.44            3.70         -0.74         -16.67%
std::equal(deque<int>)_(it,_it,_it,_pred)/8192                 4184.03         2902.98      -1281.05         -30.62%
std::equal(list<int>)_(it,_it,_it)/1024                        1168.78         1168.51         -0.27          -0.02%
std::equal(list<int>)_(it,_it,_it)/1048576                  1283003.12      1281885.44      -1117.69          -0.09%
std::equal(list<int>)_(it,_it,_it)/50                            60.19           44.38        -15.81         -26.27%
std::equal(list<int>)_(it,_it,_it)/8                              3.07            3.07          0.00           0.15%
std::equal(list<int>)_(it,_it,_it)/8192                       10367.41        11075.24        707.83           6.83%
std::equal(list<int>)_(it,_it,_it,_it)/1024                     728.32          734.18          5.86           0.80%
std::equal(list<int>)_(it,_it,_it,_it)/1048576               951276.58       953928.39       2651.81           0.28%
std::equal(list<int>)_(it,_it,_it,_it)/50                        31.86           32.32          0.46           1.44%
std::equal(list<int>)_(it,_it,_it,_it)/8                          3.11            3.10         -0.01          -0.34%
std::equal(list<int>)_(it,_it,_it,_it)/8192                   14940.68        16058.91       1118.22           7.48%
std::equal(list<int>)_(it,_it,_it,_it,_pred)/1024               803.49          813.53         10.05           1.25%
std::equal(list<int>)_(it,_it,_it,_it,_pred)/1048576        1012708.15      1026207.55      13499.40           1.33%
std::equal(list<int>)_(it,_it,_it,_it,_pred)/50                  38.68           39.24          0.56           1.46%
std::equal(list<int>)_(it,_it,_it,_it,_pred)/8                    4.07            4.07         -0.00          -0.08%
std::equal(list<int>)_(it,_it,_it,_it,_pred)/8192             16632.08        18073.63       1441.55           8.67%
std::equal(list<int>)_(it,_it,_it,_pred)/1024                  1162.99         1162.48         -0.51          -0.04%
std::equal(list<int>)_(it,_it,_it,_pred)/1048576            1291522.30      1303819.01      12296.72           0.95%
std::equal(list<int>)_(it,_it,_it,_pred)/50                      45.73           46.32          0.59           1.29%
std::equal(list<int>)_(it,_it,_it,_pred)/8                        4.35            4.40          0.04           1.03%
std::equal(list<int>)_(it,_it,_it,_pred)/8192                 15035.93        14598.06       -437.87          -2.91%
std::equal(vector<bool>)_(aligned)/1024                           0.22            0.22          0.00           0.04%
std::equal(vector<bool>)_(aligned)/1048576                        0.22            0.22          0.00           0.12%
std::equal(vector<bool>)_(aligned)/50                             0.22            0.22          0.00           0.02%
std::equal(vector<bool>)_(aligned)/8                              0.22            0.22          0.00           0.03%
std::equal(vector<bool>)_(aligned)/8192                           0.22            0.22          0.00           0.05%
std::equal(vector<bool>)_(unaligned)/1024                         6.34            6.39          0.04           0.70%
std::equal(vector<bool>)_(unaligned)/1048576                   6809.31         6833.52         24.21           0.36%
std::equal(vector<bool>)_(unaligned)/50                           1.11            0.92         -0.19         -17.55%
std::equal(vector<bool>)_(unaligned)/8                            1.11            1.05         -0.06          -5.29%
std::equal(vector<bool>)_(unaligned)/8192                        59.27           59.92          0.65           1.10%
std::equal(vector<int>)_(it,_it,_it)/1024                        80.39           80.59          0.20           0.25%
std::equal(vector<int>)_(it,_it,_it)/1048576                  72546.36        73803.43       1257.07           1.73%
std::equal(vector<int>)_(it,_it,_it)/50                           3.92            4.43          0.51          12.92%
std::equal(vector<int>)_(it,_it,_it)/8                            1.46            1.47          0.01           0.75%
std::equal(vector<int>)_(it,_it,_it)/8192                       553.63          559.59          5.95           1.07%
std::equal(vector<int>)_(it,_it,_it,_it)/1024                    78.69           78.37         -0.32          -0.40%
std::equal(vector<int>)_(it,_it,_it,_it)/1048576              72238.51        73582.13       1343.62           1.86%
std::equal(vector<int>)_(it,_it,_it,_it)/50                       4.18            4.62          0.44          10.52%
std::equal(vector<int>)_(it,_it,_it,_it)/8                        1.68            1.66         -0.01          -0.87%
std::equal(vector<int>)_(it,_it,_it,_it)/8192                   549.35          555.24          5.89           1.07%
std::equal(vector<int>)_(it,_it,_it,_it,_pred)/1024             361.08          363.32          2.24           0.62%
std::equal(vector<int>)_(it,_it,_it,_it,_pred)/1048576       391367.63       394209.88       2842.25           0.73%
std::equal(vector<int>)_(it,_it,_it,_it,_pred)/50                15.24           15.83          0.59           3.87%
std::equal(vector<int>)_(it,_it,_it,_it,_pred)/8                  3.18            3.19          0.01           0.40%
std::equal(vector<int>)_(it,_it,_it,_it,_pred)/8192            2992.57         3026.90         34.32           1.15%
std::equal(vector<int>)_(it,_it,_it,_pred)/1024                 362.45          365.46          3.01           0.83%
std::equal(vector<int>)_(it,_it,_it,_pred)/1048576           399898.16       402718.88       2820.72           0.71%
std::equal(vector<int>)_(it,_it,_it,_pred)/50                    14.79           14.79         -0.01          -0.04%
std::equal(vector<int>)_(it,_it,_it,_pred)/8                      2.45            2.52          0.06           2.64%
std::equal(vector<int>)_(it,_it,_it,_pred)/8192                3062.16         3088.11         25.95           0.85%
Geomean                                                         253.49          200.79        -52.70         -20.79%
```


  Commit: 7c5c58cdc6553c969a11fee51bfd23ae659220d4
      https://github.com/llvm/llvm-project/commit/7c5c58cdc6553c969a11fee51bfd23ae659220d4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vselect.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] getFauxShuffleMask - OR(SHUF(),SHUF()) - treat undemanded elements as undef (#182678)

We have to be careful when attempting to decode OR() patterns as
shuffles - we can't forward demanded undef elements in both sources as
an undef result as it can lead to infinite loops during widening
(#49393).

But if we don't demand the element in the first place (based off
demanded elts masks during recursive shuffle combines), then it doesn't
matter what the elements contain and we can treat it as a
SM_SentinelUndef shuffle element.

Noticed while working on #137422


  Commit: 5c002d0dddaec699ed234925aa987f62266af6f3
      https://github.com/llvm/llvm-project/commit/5c002d0dddaec699ed234925aa987f62266af6f3
  Author: Hussam Alhassan <hsm.link at proton.me>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [NFC][AArch64] AArch64ConditionOptimizer extract shared instruction finding logic (#182244)

Extract cmp/cond instruction finding logic from cross- and intra-block
paths into shared functions


  Commit: 9d762ad27954078489240224f3cdc0482639deb6
      https://github.com/llvm/llvm-project/commit/9d762ad27954078489240224f3cdc0482639deb6
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    A bolt/test/AArch64/bti-long-jmp-ignored-nop.s
    M bolt/test/AArch64/bti-long-jmp-ignored.s

  Log Message:
  -----------
  [BOLT][BTI] Patch ignored functions in place when targeting them with indirect branches (#177165)

When applying BTI fixups to indirect branch targets, ignored functions
are
considered as a special case:
- these hold no instructions,
- have no CFG,
- and are not emitted in the new text section.

The solution is to patch the entry points in the original location.

If such a situation occurs in a binary, recompilation using the
-fpatchable-function-entry flag is required. This will place a nop at
all
function starts, which BOLT can use to patch the original section.

Without the extra nop, BOLT cannot safely patch the original .text
section.

An alternative solution could be to also ignore the function from which
the stub starts. This has not been tried as LongJmp pass - where most
stubs are inserted - is currently not equipped to ignore functions.

Testing: both the success and failure cases are covered with lit tests.


  Commit: cfaa67bb627d499763e849939f47fac2c551a8df
      https://github.com/llvm/llvm-project/commit/cfaa67bb627d499763e849939f47fac2c551a8df
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll

  Log Message:
  -----------
  [Thumb2] mve-vmovimm.ll - regenerate with missing check prefixes (#183019)

Add prefixes to discriminate between -mattr=+mve and -mattr=+mve.fp to
add missing check coverage

Fixes update_llc_test_checks warnings and simplifies regeneration for an
upcoming patch


  Commit: e4245f2fc54880433c8fb0e196755aeec6efd4ce
      https://github.com/llvm/llvm-project/commit/e4245f2fc54880433c8fb0e196755aeec6efd4ce
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  [cmake] forward LLVM_EXTERNAL_*_SOURCE_DIR to runtimes (#180399)

Allow runtime source directories to live outside the top-level tree by
honoring LLVM_EXTERNAL_*_SOURCE_DIR and propagating the values via
RUNTIMES_CMAKE_ARGS.


  Commit: ffd341d670281cae7d4eb688e9aaffc98364833a
      https://github.com/llvm/llvm-project/commit/ffd341d670281cae7d4eb688e9aaffc98364833a
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h

  Log Message:
  -----------
  [MLIR] [Python] Added a missing cast to `__repr__` in the adaptors (#182867)

Without it the return type is inferred as `nanobind::object` which
results in invalid type stubs, since `__repr__` must return `str`.


  Commit: a3f9e63d8240f98a1903d3357400535b7129df28
      https://github.com/llvm/llvm-project/commit/a3f9e63d8240f98a1903d3357400535b7129df28
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat_err.s

  Log Message:
  -----------
  [AMDGPU][MC] Validate atomics with TH_ATOMIC_RETURN (#182888)

Have AsmParser validate that atomics that use th:TH_ATOMIC_RETURN also
have an extra operand representing the destination as opposed to no-rtn
variants.

In cases where it was not specified parsing would pass because it would
assume it was a no-rtn variant but would still set th bits properly
after parsing modifiers. Register for destination would default to v0
(encoded as 0).

Also update invalid tests.


  Commit: c94cf327470d9edbd65c792d6ce38bca07ec542c
      https://github.com/llvm/llvm-project/commit/c94cf327470d9edbd65c792d6ce38bca07ec542c
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/test/Transforms/InstCombine/memcmp-constant-fold.ll

  Log Message:
  -----------
  [LLVM][ConstantFolding] Add vector ConstantInt/FP support to ReadDataFromGlobal. (#182530)


  Commit: e5a40fef50d2604b9e0fb393955f414501b405c7
      https://github.com/llvm/llvm-project/commit/e5a40fef50d2604b9e0fb393955f414501b405c7
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopInterchange/reduction2mem-limitation.ll
    M llvm/test/Transforms/LoopInterchange/reduction2mem.ll

  Log Message:
  -----------
  [LoopInterchange] Update tests for reduction2mem (NFC) (#181629)

The current ongoing work on DependenceAnalysis will degrade its analysis
capability. As a result, some existing tests will start to fail, meaning
that those tests are no longer meaningful. To preserve their original
intent, they need to be updated so that DependenceAnalysis can still
analyze them accurately.
This patch updates the test cases for the reduction2mem feature in
LoopInterchange. Specifically, it replaces the loop bounds with constant
values, which should not alter the intent of the tests.


  Commit: 37eee8a99f0b4e9ab2ebfa6ec6c338718e7f9b66
      https://github.com/llvm/llvm-project/commit/37eee8a99f0b4e9ab2ebfa6ec6c338718e7f9b66
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll

  Log Message:
  -----------
  [DA] Rewrite the formula in the Strong SIV test (#179665)

In the Strong SIV test, given two addrecs `{c0,+,a}` and `{c1,+,a}`, the
following inequality is evaluated:

`|c0 - c1| >s |a| * BTC`, where `BTC` is the backedge-taken count of the
loop.

To evaluate this correctly, at least the following checks are necessary.

- `c0 - c1` doesn't overflow
- For all absolute-value calculations `|x|`, `x` is not the signed
minimum value
- `|a| * BTC` doesn't overflow
- `0 <=s BTC`, which is currently missed
- The addrecs have `nsw`, which is also currently missed

Enumerating these conditions and inserting them one by one is risky, and
I believe it makes the software flaky, so it should be avoided. It's
also unclear if these conditions are sufficient.

This patch replaces the current implementation with one that uses
`ConstantRange` so that we don't need to check any condition by
ourselves.

Fixes the test case for the Strong SIV test added in #179664. I believe
a similar fix can be applied for other tests as well.


  Commit: 864506500733ef2813430b3d67138593b3abc04c
      https://github.com/llvm/llvm-project/commit/864506500733ef2813430b3d67138593b3abc04c
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Transforms/MemCpyOpt/store-to-memset-constant-splat.ll

  Log Message:
  -----------
  [LLVM][ValueTracking] Add vector ConstantInt/FP support to isBytewiseValue(). (#182519)


  Commit: f1bf37e6bea86587b7a55919994174cc8d8ccfab
      https://github.com/llvm/llvm-project/commit/f1bf37e6bea86587b7a55919994174cc8d8ccfab
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp
    M mlir/lib/Dialect/Shard/Transforms/ShardingPropagation.cpp

  Log Message:
  -----------
  [mlir][shard] Simple fixes to harden sharding propagation and partitioning (#183028)


  Commit: eff183b6a7e351e10444977fc2110edc2a518e6f
      https://github.com/llvm/llvm-project/commit/eff183b6a7e351e10444977fc2110edc2a518e6f
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-pmull2.ll
    M llvm/test/CodeGen/AArch64/aarch64-scal-to-vec-bitcast-insert.ll
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-intrinsics.ll
    M llvm/test/CodeGen/AArch64/arm64-fixed-point-scalar-cvt-dagcombine.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-select_cc.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-v8.1a.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt.ll
    M llvm/test/CodeGen/AArch64/arm64-vshift.ll
    M llvm/test/CodeGen/AArch64/avoid-pre-trunc.ll
    M llvm/test/CodeGen/AArch64/concat-vector-add-combine.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/fp-intrinsics-vector.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/ragreedy-local-interval-cost.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-llrint.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-lrint.ll
    M llvm/test/CodeGen/AArch64/vector-llrint.ll
    M llvm/test/CodeGen/AArch64/vector-lrint.ll
    M llvm/test/CodeGen/AArch64/zext.ll

  Log Message:
  -----------
  [AArch64] Wrap integer SCALAR_TO_VECTOR nodes in bitcasts  (#172837)

This patch changes lowering of SCALAR_TO_VECTOR node with i32 or i64 by
inserting bitconvert to/from floating point type infront of its
operands. This bitconverts serve as a hint to instruction selector and
they make it clear that the operand and return value of this node need
to be NEON registers.

Depends on: #179315

---------

Co-authored-by: Kerry McLaughlin <kerry.mclaughlin at arm.com>


  Commit: db9d0245d14c2c48727af5f269e579f284e20611
      https://github.com/llvm/llvm-project/commit/db9d0245d14c2c48727af5f269e579f284e20611
  Author: Henry Baba-Weiss <henry.babaweiss at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/utils/vim/ftplugin/tablegen.vim

  Log Message:
  -----------
  [vim] Set commentstring for TableGen files (#182654)

Neovim supports [commenting and uncommenting
lines](https://neovim.io/doc/user/various.html#commenting) based on what
the 'commentstring' option is set to, but this isn't set for TableGen
files. The filetype plugin for C++ built into both vim and neovim sets
'commentstring' to `// %s`, so use that in the TableGen filetype plugin
as well.


  Commit: 75383421c1c6b8a33e762b42b83242dbd85e466e
      https://github.com/llvm/llvm-project/commit/75383421c1c6b8a33e762b42b83242dbd85e466e
  Author: Matej Košík <m4tej.kosik at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp

  Log Message:
  -----------
  [lldb] generalize the GDBRemoteCommunicationClient::GetVContSupported method (#182287)

This is a conservative generalization of the
`GDBRemoteCommunicationClient::GetVContSupported` method so that:
- the new version of this method handles the reply to the `vCont?`
packet the same way as the original version of this method
- the new version of this method can be easily adapted to situation when
the actions are represented by multiple letters.

Imagine that, in addition to the [existing
actions](https://sourceware.org/gdb/current/onlinedocs/gdb.html/Packets.html#vCont-packet):
- `c`
- `C`
- `s`
- `S`
- `t`
- `r`

the other party would also advertise that it supports (e.g.) `sc` action
(meaning e.g. that we can ask the other party to step into microcode).

The new version of this method can be easily adapted to handle such a
case without compromising correct handling of the original actions
represented by single characters.

---------

Co-authored-by: Matej Košík <matej.kosik at codasip.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 0ad19bcceaa3798197a2f9760b9cc0c1e4fbe954
      https://github.com/llvm/llvm-project/commit/0ad19bcceaa3798197a2f9760b9cc0c1e4fbe954
  Author: Gábor Spaits <gaborspaits1 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  [ValueTracking][unittest] Add `impliesPoison` unit tests for `select` instruction (NFC) (#183029)

I was playing with `impliesPoison` and `select`. I have seen that there
are `impliesPoison` unit tests, but none of them were testing how it
behaves with the `select` instruction.

Since `select` propagates poison in a different way compared to the
other instructions, it can be good thing to have some tests checking
that.


  Commit: 173956e9c7ee50409a5302af8b6754068a6f1fdc
      https://github.com/llvm/llvm-project/commit/173956e9c7ee50409a5302af8b6754068a6f1fdc
  Author: Aleksandr Nogikh <nogikh at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/CodeGen/alloc-token-lower.c

  Log Message:
  -----------
  [AllocToken] Test alloc-token code generation for __size_returning_new (#183049)

The alloc-token-lower.c test only covered standard (and non-standard)
malloc-annotated allocation function.

Ensure that the code generation works as intended also for the standard
malloc_span-annotated functions with the example of
__size_returning_new.


  Commit: c08079d8e7673bd15d2aa39f3ce51085afe84de8
      https://github.com/llvm/llvm-project/commit/c08079d8e7673bd15d2aa39f3ce51085afe84de8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll

  Log Message:
  -----------
  [SLP]Add single-use check for the bitcasted reduction

If the reduced value, to be bitcasted, is used multiple times, it will
require emission of the extractelement instruction. Such nodes should
not be bitcasted, should be vectorized as vector instructions.

Fixes https://github.com/llvm/llvm-project/pull/181940#issuecomment-3950734168


  Commit: ba6c7d02a6b0f236c37ad031766d1f06474a4e6f
      https://github.com/llvm/llvm-project/commit/ba6c7d02a6b0f236c37ad031766d1f06474a4e6f
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp

  Log Message:
  -----------
  [AArch64] Remove NoNaNsFPMath uses (#180462)

Remove `NoNaNsFPMath`, users should use `nnan` only.


  Commit: f5fa773d4bcb45a1f8a1c0592951046fa9d41ef3
      https://github.com/llvm/llvm-project/commit/f5fa773d4bcb45a1f8a1c0592951046fa9d41ef3
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir

  Log Message:
  -----------
  [MemRefToEmitC] avoid crash when lower global from MemRef to EmitC (#182984)

Fixed #181533.
Improve the robust when handling rank 0 special case


  Commit: d75ca401a4fd9f64b344e8c61a3c26ba5693300a
      https://github.com/llvm/llvm-project/commit/d75ca401a4fd9f64b344e8c61a3c26ba5693300a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/utils/TableGen/Basic/SequenceToOffsetTable.h
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [LLVM][CodeGen] Consolidate sub-register index names into a single string (#182651)

Use `SequenceToOffsetTable` to emit a consolidated string for
sub-register index names and use a table of offsets to source these
names. This follows the same scheme used for register names and help the
static storage for this data (64-bit pointer to 32-bit int per
subregister-index).

Additionally, fix a small bug in `SequenceToOffsetTable` for empty
tables on Windows (i.e, when `EmitLongStrLiterals` = false). When the
table is empty, we would generate `0 \n 0` as the table contents and
fail compilation for Windows. Fixed that omitting the extra `0` after
the call to `emit` in that case. Also force using this logic when Size
== 0 to avoid modifying the `EmitLongStrLiterals = true` case to handle
empty tables.


  Commit: e6962bd1bbaa4925d3b84e3a7c5e2c6a87744e60
      https://github.com/llvm/llvm-project/commit/e6962bd1bbaa4925d3b84e3a7c5e2c6a87744e60
  Author: Jinsong Ji <jinsong.ji at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/src/__support/RPC/rpc_server.h

  Log Message:
  -----------
  [LibC][RPC] Define LIBC_COPT_PRINTF_DISABLE_WIDE on Windows (#178482)

https://github.com/llvm/llvm-project/pull/176110

RPC headers are being used directly from offload.
The default setting in config.json won't take effect.
Set it in the rpc_server.h

---------

Co-authored-by: Michael Jones <michaelrj at google.com>


  Commit: 2e40d2bc7fabfbe2492e32166bed2cceb5e4628c
      https://github.com/llvm/llvm-project/commit/2e40d2bc7fabfbe2492e32166bed2cceb5e4628c
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/test/Transforms/LICM/hoist-add-sub.ll

  Log Message:
  -----------
  [LICM] Handle disjoint or's in hoistAdd (#182915)

`disjoint or` is identical to addition and there is no reason not to
handle it in `hoistAdd`.


  Commit: 72c0a074db02659517cab27087487c21512e96a5
      https://github.com/llvm/llvm-project/commit/72c0a074db02659517cab27087487c21512e96a5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Move out canNarrowOps (NFC). (#167309)

Move definition of canNarrowOps out to static function, to make it
easier to extend + generalize

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


  Commit: 94d4cb5f7b363b93d57c8e97bf850c2d9ff2aee7
      https://github.com/llvm/llvm-project/commit/94d4cb5f7b363b93d57c8e97bf850c2d9ff2aee7
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/address-space.c
    M clang/test/CIR/CodeGen/alloc-size.c
    A clang/test/CIR/CodeGen/arg-attrs.cpp
    M clang/test/CIR/CodeGen/array-ctor.cpp
    M clang/test/CIR/CodeGen/array-dtor.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/asm-label-inline-builtins.c
    M clang/test/CIR/CodeGen/assign-operator.cpp
    M clang/test/CIR/CodeGen/base-to-derived.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/binop.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    M clang/test/CIR/CodeGen/builtin-floating-point.c
    M clang/test/CIR/CodeGen/call-via-class-member-funcptr.cpp
    M clang/test/CIR/CodeGen/call.c
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/cleanup-scope-tmp-with-exception.cpp
    M clang/test/CIR/CodeGen/cleanup-scope-tmp.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/cmp.cpp
    M clang/test/CIR/CodeGen/complex.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/ctor-alias.cpp
    M clang/test/CIR/CodeGen/ctor.cpp
    M clang/test/CIR/CodeGen/cxx-conversion-operators.cpp
    M clang/test/CIR/CodeGen/cxx-default-init.cpp
    M clang/test/CIR/CodeGen/cxx-rewritten-binary-operator.cpp
    M clang/test/CIR/CodeGen/cxx-special-member-attr.cpp
    M clang/test/CIR/CodeGen/defaultarg.cpp
    M clang/test/CIR/CodeGen/delegating-ctor.cpp
    M clang/test/CIR/CodeGen/delete.cpp
    M clang/test/CIR/CodeGen/derived-to-base.cpp
    M clang/test/CIR/CodeGen/destructors.cpp
    M clang/test/CIR/CodeGen/dtor-alias.cpp
    M clang/test/CIR/CodeGen/dtors.cpp
    M clang/test/CIR/CodeGen/forrange.cpp
    M clang/test/CIR/CodeGen/function-to-pointer-decay.c
    M clang/test/CIR/CodeGen/global-array-dtor.cpp
    M clang/test/CIR/CodeGen/global-constant-storage.cpp
    M clang/test/CIR/CodeGen/global-init.cpp
    M clang/test/CIR/CodeGen/if.cpp
    M clang/test/CIR/CodeGen/inline-cxx-func.cpp
    M clang/test/CIR/CodeGen/kr-func-promote.c
    M clang/test/CIR/CodeGen/label-values.c
    M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/member-functions.cpp
    M clang/test/CIR/CodeGen/multi-vtable.cpp
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/no-prototype.c
    M clang/test/CIR/CodeGen/nrvo.cpp
    M clang/test/CIR/CodeGen/pack-indexing.cpp
    M clang/test/CIR/CodeGen/placement-new.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/static-local.cpp
    M clang/test/CIR/CodeGen/stmt-expr.cpp
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.c
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/ternary.cpp
    M clang/test/CIR/CodeGen/trivial-ctor-const-init.cpp
    M clang/test/CIR/CodeGen/vbase.cpp
    M clang/test/CIR/CodeGen/virtual-destructor-calls.cpp
    M clang/test/CIR/CodeGen/virtual-function-calls.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGen/vtt.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceIntrin.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceMinMaxIntrin.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512fp16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vbmi2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlbf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlfp16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c
    M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
    M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_printf.cpp
    M clang/test/CIR/CodeGenCUDA/kernel-call.cu
    M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
    M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenMP/parallel.c
    M clang/test/CIR/Lowering/array.cpp
    M clang/test/CIR/Lowering/basic.cpp

  Log Message:
  -----------
  [CIR] Implement basic attributes for this/arguments (#182910)

Similar to what I did for return types in #181052, this patch adds
support for 4 of the function attributes on arguments (noundef, nonnull,
    dereferenceable, align).  The logic for these is all pretty similar
(though SLIGHTLY different enough from eachother unfortunately), so they
are being submitted together. This handles 'this' and normal arguments.


  Commit: a9e29e7ae3a5a9255d68e8992322673c4c81944c
      https://github.com/llvm/llvm-project/commit/a9e29e7ae3a5a9255d68e8992322673c4c81944c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    A clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp

  Log Message:
  -----------
  [CIR] Implement LValue reinterpret/const cast (#182926)

These two are very simple and call into the Rvalue code/LValue lowering
code we already had for these, but weren't exposed as top-level LValues.
This patch adds them to the list (plus adds a comment for those that
    we're missing!), as well as adds a test.


  Commit: 06c673ed49eaa504123b23791d393172e94eabbf
      https://github.com/llvm/llvm-project/commit/06c673ed49eaa504123b23791d393172e94eabbf
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/test/CIR/CodeGenCXX/global-refs.cpp

  Log Message:
  -----------
  [CIR] Add support for globals reference variables (#182608)

These are fairly simple, particularly if they don't need special
cleanups (which is left unimplemented), but this provides init for a
global reference variable.


  Commit: f927ffe0f934a9c43641e4a59a57c34d6d9c1f0c
      https://github.com/llvm/llvm-project/commit/f927ffe0f934a9c43641e4a59a57c34d6d9c1f0c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    A clang/test/CIR/CodeGenCXX/lvalue-nttp.cpp

  Log Message:
  -----------
  [CIR] Implement LValue SubstNonTypeTemplateParmExpr lowering (#182920)

This just lowers to the expression that is its replacement, which in
this case causes it to just be the l-value in the expression.


  Commit: 74f2ab494299818cd5ed9a82efbacd92d8be126c
      https://github.com/llvm/llvm-project/commit/74f2ab494299818cd5ed9a82efbacd92d8be126c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGenCXX/sizeof-pack.cpp

  Log Message:
  -----------
  [CIR] Handle sizeof-pack lowering: (#182973)

This is just a compile time constant, so we just have to make sure we
get the value and lower it in the correct type, otherwise this is a
fairly trivial task.


  Commit: bddc8e20bd136ba8c1829dde50c16e4734fcfa3a
      https://github.com/llvm/llvm-project/commit/bddc8e20bd136ba8c1829dde50c16e4734fcfa3a
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU] Replace getAllocatedType with getAllocationSize in PromoteAlloca (#179523)

Some progress towards using size-based APIs instead of unreliable
querying of alloca element types. The removal of the mis-accounting of
alignment to global variable size might have a minor functional impact
in edge cases where the overestimation of size used pushed it just over
the threshold to stop optimizing, and it wasn't already canonicalized by
an earlier pass.

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: bc8302d52bb4bb88552afb2fe64b8cc1c544ed73
      https://github.com/llvm/llvm-project/commit/bc8302d52bb4bb88552afb2fe64b8cc1c544ed73
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    A llvm/test/Transforms/MemCpyOpt/stack-move-offset.ll

  Log Message:
  -----------
  Reapply "[MemCpyOpt] support offset slices for performStackMoveOptzn and processMemCpy" (#180002)

In particular, support offset of src, since offset of dest will be a
followup change when dest is allowed to be not full-sized with copy.

Extracted from https://github.com/llvm/llvm-project/pull/150792

The miscomputation in the original version was due to incorrect
checking for ModRef, causing incorrect elimination of temporary
buffers: When checking for clobbering stores in performStackMoveOptzn,
use SrcPtr instead of SrcAlloca for the MemoryLocation. When SrcPtr is
offset into the alloca, but DstPtr is still not offset, we need to
check the actual copied region [SrcPtr, SrcPtr+Size) rather than
[SrcAlloca, SrcAlloca+Size) for ModRef. This check can become more
complex once DstOffset is non-zero or not-full-sized, as indicated in
the code comments.

Fixes https://github.com/llvm/llvm-project/issues/177185
Reverts https://github.com/llvm/llvm-project/pull/177482
Relands https://github.com/llvm/llvm-project/pull/176436

Co-authored-by: Gabriel Baraldi <baraldigabriel at gmail.com>


  Commit: 142218186d9c56165b7710e2b2ead2fe02482b15
      https://github.com/llvm/llvm-project/commit/142218186d9c56165b7710e2b2ead2fe02482b15
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M flang/test/Lower/forall/forall-where-2.f90
    M flang/test/Lower/forall/forall-where.f90
    M flang/test/Lower/forall/test9.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 20) (#182997)

Tests converted from test/Lower/forall: forall-where.f90,
forall-where-2.f90, test9.f90.
Tests converted from test/Lower: host-associated-functions.f90,
host-associated.f90


  Commit: 049cfda67c43c44f39e6f1d8e51cabcc491fcfce
      https://github.com/llvm/llvm-project/commit/049cfda67c43c44f39e6f1d8e51cabcc491fcfce
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/startup/gpu/CMakeLists.txt
    R libc/startup/gpu/amdgpu/CMakeLists.txt
    R libc/startup/gpu/amdgpu/start.cpp
    R libc/startup/gpu/nvptx/CMakeLists.txt
    R libc/startup/gpu/nvptx/start.cpp
    A libc/startup/gpu/start.cpp
    M llvm/tools/CMakeLists.txt
    M llvm/tools/llvm-gpu-loader/CMakeLists.txt
    R llvm/tools/llvm-gpu-loader/amdhsa.cpp
    M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
    M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.h
    R llvm/tools/llvm-gpu-loader/nvptx.cpp
    R llvm/tools/llvm-gpu-loader/server.h

  Log Message:
  -----------
  [LLVM] Port 'llvm-gpu-loader' to use LLVMOffload (#162739)

Summary:
This patch rewrites the `llvm-gpu-loader` utility to use the LLVMOffload
interface. This heavily simplifies it while re-using the already
existing support. Another benefit is that I can now easily do this
dynamically so we can always build this utility without needing to find
non-standard packages.

One issue is mentioned in
https://github.com/llvm/llvm-project/issues/159636 where this will now
take extra time if you have both installed on the same machine. This is
just slightly annoying since most people don't have both CUDA and ROCm
at the same time so I don't consider it a blocker. I will work later to
address it.

Slightly unfortunate environment variable usage, I will also expose that
better in the future.

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


  Commit: 3c209130f5276377f9b9477732140a2fb3f38a8d
      https://github.com/llvm/llvm-project/commit/3c209130f5276377f9b9477732140a2fb3f38a8d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll

  Log Message:
  -----------
  [IVDesc] Reject invariant stores  in different blocks.

We cannot compare stores in different blocks.

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


  Commit: 6738c46b810068a4f427d57581d80e07b12fa4bf
      https://github.com/llvm/llvm-project/commit/6738c46b810068a4f427d57581d80e07b12fa4bf
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/tools/llvm-gpu-loader/CMakeLists.txt

  Log Message:
  -----------
  [LLVM] Add missing binary format dependency to llvm-gpu-loader


  Commit: 1eb8ab769c0c0b5a0cb071122b79f2030af16a7e
      https://github.com/llvm/llvm-project/commit/1eb8ab769c0c0b5a0cb071122b79f2030af16a7e
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt

  Log Message:
  -----------
  [AMDGPU] Add VOPC to gfx13 (#182293)

Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>


  Commit: 170a99dc6028af21ba0331214ef03e0ac5fafda1
      https://github.com/llvm/llvm-project/commit/170a99dc6028af21ba0331214ef03e0ac5fafda1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp

  Log Message:
  -----------
  [LLVM] Fix accidentally included POSIX header on Windows

Summary:
This used to only build on Linux, I forgot that these changes would
cause it to be built on Windows.


  Commit: 2f09fe70aa40f07107f5c7b946ac95e67888cdf9
      https://github.com/llvm/llvm-project/commit/2f09fe70aa40f07107f5c7b946ac95e67888cdf9
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/Linalg/bufferize.mlir

  Log Message:
  -----------
  [mlir][linalg] Implement bufferization for UnPackOp. (#182837)

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 1ecc1535ffd29472687290d5023c3a8a52e49a91
      https://github.com/llvm/llvm-project/commit/1ecc1535ffd29472687290d5023c3a8a52e49a91
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGenCXX/global-refs.cpp

  Log Message:
  -----------
  [CIR] Fix global-refs test that got committed in github 'race' (#183068)

Despite my best efforts, this crossed in the air with the attributes on
arguments patch, and thus had a problem with the test. This patch
updates the test to be tolerant of the attributes.


  Commit: 600919ac3259aeb9d4967c1225f192120411978c
      https://github.com/llvm/llvm-project/commit/600919ac3259aeb9d4967c1225f192120411978c
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/spirv-openmp-toolchain.c
    M offload/test/offloading/info.c

  Log Message:
  -----------
  [Offload][clang-linker-wrapper][SPIRV] Tell spirv-link to not optimize out exported symbols (#182930)

`spirv-link` seems to internalize all symbols, which ends up causing the
OpenMP Device Environment global generated by the OMP FE to get
optimized out which causes `liboffload` to run in the wrong
parallelization mode which breaks at least one liboffload lit test.

Pass `--create-library` to tell it not to do that.

```
  --create-library
               Link the binaries into a library, keeping all exported symbols.
```

This fixes the test.

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

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 9f2351c27e2e7417880dd99fc8516fff713a5ffe
      https://github.com/llvm/llvm-project/commit/9f2351c27e2e7417880dd99fc8516fff713a5ffe
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGenCUDA/const-var.cu
    M clang/test/CodeGenCUDA/constexpr-variables.cu
    M clang/test/CodeGenCUDA/host-used-device-var.cu

  Log Message:
  -----------
  [HIP] Do not apply 'externally_initialized' to constant device variables (#182157)

Summary:
>From the Language reference:
> By default, global initializers are optimized by assuming that global
variables defined within the module are not modified from their initial
values before the start of the global initializer. This is true even for
variables potentially accessible from outside the module, including
those with external linkage or appearing in @llvm.used or dllexported
variables. This assumption may be suppressed by marking the variable
with externally_initialized.

This is intended because device programs can be modified beyond the
normal lifetime expected by the optimization pipeline. However, for
constant variables we should be able to safely assume that these are
truly constant within the module. In the vast majority of cases these
will not get externally visible symbols, but even `extern const` uses we
should assert that the user should not be writing them if they are
marked const.


  Commit: 3e2fb2e7cb169b564dac2fe9cf37458bbe5a3b5c
      https://github.com/llvm/llvm-project/commit/3e2fb2e7cb169b564dac2fe9cf37458bbe5a3b5c
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libsycl/src/detail/global_objects.cpp
    M libsycl/src/detail/global_objects.hpp
    M libsycl/src/detail/platform_impl.cpp

  Log Message:
  -----------
  [libsycl] Fix for static vars deinit order (libsycl vs liboffload) (#181366)

both libsycl & liboffload uses static variables. 
on Linux static variable destructor is called earlier than the method
with `__attribute__((destructor(...)))`.
this fix helps to avoid crash due to liboffload static variable early
destruction.

the approach utilizes the following rule
"For each local object obj with static storage duration, obj is
destroyed as if a function calling the destructor of obj were registered
with
[std::atexit](https://en.cppreference.com/w/cpp/utility/program/atexit.html)
at the completion of the constructor of obj."
from `std::exit`.
in the first call of get_platforms we call liboffload's iterateDevices
that leads to liboffload static storage initialization. Then we
initialize our own local static var after this to be able to call our
shutdown methods earlier and before the liboffload objects are
destructed at the end of program.

Important note:
SYCL RT follows SYCL 2020 specification that doesn't declare any
init/shutdown methods that can help to avoid usage of static variables.

---------

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 7a83886fa23884455d7b6ba0199721bd090d7a3b
      https://github.com/llvm/llvm-project/commit/7a83886fa23884455d7b6ba0199721bd090d7a3b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [X86] lowerShuffleAsLanePermuteAndRepeatedMask - consistently move V2.isUndef handling inside the function. NFC. (#183069)

Matches other "lane permute + shuffle" functions.


  Commit: 8854dd05b45927853bd5fbc4cc074c51d25bec15
      https://github.com/llvm/llvm-project/commit/8854dd05b45927853bd5fbc4cc074c51d25bec15
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [IR] Specify alloca with poison element count (#183072)

An alloca with a poison element count is undefined behavior.

This matches existing behavior of optimizations. This also matches the
behavior of llubui for `poison`, but llubi currently does not report
immediate UB for `undef` element counts. A future patch will fix that.


  Commit: 25dd013b71dfe6de5e4e67281eba5ee5bf44f64a
      https://github.com/llvm/llvm-project/commit/25dd013b71dfe6de5e4e67281eba5ee5bf44f64a
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    A clang/test/CIR/CodeGen/assume-attr.cpp

  Log Message:
  -----------
  [CIR] Implement 'assume' attribute lowering (#182960)

This attribute applies to null statements and emits an assume-op
sometimes. This patch adds this for statements, which includes the
infrastructure for AttributedStmt lowering.

---------

Co-authored-by: Sirui Mu <msrlancern at gmail.com>


  Commit: 76699fb9e662865e40bfe840522f114cc900ab82
      https://github.com/llvm/llvm-project/commit/76699fb9e662865e40bfe840522f114cc900ab82
  Author: Kirill Vedernikov <kvedernikov at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/wmma-ptx91-sm120a.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx91-sm120f.py
    M llvm/test/CodeGen/NVPTX/wmma.py
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/nvvm-mma-blockscale.mlir
    M mlir/test/Dialect/LLVMIR/nvvm-mma-sparse-blockscale.mlir

  Log Message:
  -----------
  [MLIR][NVVM][NVPTX] Support for new mma/mma.sp variants from PTX 9.1 (#182325)

This change adds support for `.scale_vec::4X` with `.ue8m0` as `.stype`
with `.kind::mxf4nvf4` for `mma/mma.sp` instructions introduced in [PTX
ISA
9.1](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html?highlight=mma%2520sp#ptx-isa-version-9-1).

Also, it updates MLIR mma/mma.sp block scale tests with struct usage
instead of vector.


  Commit: 251e9c429b376bf75ce7de29e7cf73688688890a
      https://github.com/llvm/llvm-project/commit/251e9c429b376bf75ce7de29e7cf73688688890a
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libsycl/src/detail/global_objects.cpp

  Log Message:
  -----------
  [libsycl] Fix build after global dtor change (#183077)

Fixes build after https://github.com/llvm/llvm-project/pull/181366

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 6e5cc825327dd042af78734616ad465aea54afcd
      https://github.com/llvm/llvm-project/commit/6e5cc825327dd042af78734616ad465aea54afcd
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll

  Log Message:
  -----------
   [LAA][LV]Allow recognition of strided pointers with constant stride (#171151)

This patch fixes an issue found during LoopAccessAnalysis with respect
to recognizing strided pointers that make use of runtime constants. Loop
accesses of the form `p[base + offset * const]` , where `const` is a
runtime constant
should be considered for vectorization. However, it was found that there
were cases that these access patterns weren't recognized. This patch
resolves
this by adding an explicit pattern match within LAA.

---------

Co-authored-by: Florian Hahn <flo at fhahn.com>


  Commit: 14375d43db3636976c003042a56eab311f9ec2d3
      https://github.com/llvm/llvm-project/commit/14375d43db3636976c003042a56eab311f9ec2d3
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/Driver/darwin-header-search-libcxx-2.cpp
    M clang/test/Driver/rocm-detect-lib-llvm.hip

  Log Message:
  -----------
  [clang] Clean up large clang binaries copied into test temp directories (#182304)

I noticed a couple of tests leave behind copies of clang binaries they
copy into their temp directories. Replicate the cleanup from another
test (clang/test/Driver/clang_f_opts_withspaces.c) to remove these.


  Commit: 7160a4409add79895c52b6e2a407b3686c1b4fae
      https://github.com/llvm/llvm-project/commit/7160a4409add79895c52b6e2a407b3686c1b4fae
  Author: Rahul Kayaith <rkayaith at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/test/python/ir/array_attributes.py

  Log Message:
  -----------
  [mlir][python] Fix segfault in DenseResourceElementsAttr.get_from_buffer for 0-d tensors (#183070)

When `ndim == 0`, `view->strides[view->ndim - 1]` is an out-of-bounds
access (unsigned underflow to `SIZE_MAX`). Use `view->itemsize` for
alignment instead, since a scalar buffer is trivially aligned to its
element size.

Fixes iree-org/iree-turbine#1312.


  Commit: 783eeb2ccfcac136f2191bda705ecd4a1a553718
      https://github.com/llvm/llvm-project/commit/783eeb2ccfcac136f2191bda705ecd4a1a553718
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/test/lib/Dialect/Linalg/TestLinalgFusionTransforms.cpp

  Log Message:
  -----------
  [MLIR][Linalg][NFC] Simplify tiling canonical pattern (#182909)

Prepare for better composition of canonicalization patterns by splitting
the linalg own canonicalizers from others for particular purposes (ex.
tiling).

Once dialects have their own registration mechanisms, specific passes
can just add more ops/dialects using a yet-to-be-created helper that
would be similar to the existing
`populateLinalgTilingCanonicalizationPatterns`.


  Commit: fff4a4642b7fed78bed4223f5eaf7cf1839ff048
      https://github.com/llvm/llvm-project/commit/fff4a4642b7fed78bed4223f5eaf7cf1839ff048
  Author: Rajat Bajpai <rbajpai at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/IR/EnumAttr.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Target/LLVMIR/nvvm/fence-invalid.mlir

  Log Message:
  -----------
  [MLIR][ODS][NVVM] Add EnumAttrIsOneOf/IsNoneOf constraints and use them in NVVM fence ops (#182662)

Add `EnumAttrIsOneOf` and `EnumAttrIsNoneOf` to `EnumAttr.td`, a generic
`AttrConstraint`s that restrict an `EnumAttr` to an allowlist or
denylist
of cases respectively. These are the enum analogs of the existing
`IntIsOneOf` constraint for integer attributes.

`EnumAttrIsOneOf` restricts the attribute to a closed set of permitted
cases. `EnumAttrIsNoneOf` excludes specific cases while allowing all
others, which is more ergonomic when the disallowed set is smaller than
the allowed set and more future-proof when new enum cases are added.

This replaces hand-written verifier logic with ODS-generated
verification, eliminating the `FenceSyncRestrictOp` verifier entirely
and simplifying both `FenceProxyOp` and `FenceProxySyncRestrictOp`
verifiers.

It can also be parameterized through base class hierarchies, allowing
derived ops to specify their own allowed subsets:

```
class MyBase<string mnemonic, list<EnumCase> allowed>
    : NVVM_Op<mnemonic>,
      Arguments<(ins
        ConfinedAttr<MyEnumAttr,
          [EnumAttrIsOneOf<MyEnumAttr, allowed>]>:$kind)>;

def Op1 : MyBase<"op1", [CaseA, CaseB]>;
def Op2 : MyBase<"op2", [CaseB, CaseC, CaseD]>;
```


  Commit: e147b3a05ee7f592e02a400ebea9fa1b2a62f8bb
      https://github.com/llvm/llvm-project/commit/e147b3a05ee7f592e02a400ebea9fa1b2a62f8bb
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ScopedNoAliasAA.h
    M llvm/lib/Analysis/ScopedNoAliasAA.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll

  Log Message:
  -----------
  [VPlan] Fix alias logic in canHoistOrSinkWithNoAliasCheck (#179504)

The correct way to check if two memory locations may alias is outlined
in ScopedNoAliasAAResult::alias: extract this into a helper, to fix the
current logic.


  Commit: 2e7d07a33725a82ecfc514e27f047ece3ff13d4c
      https://github.com/llvm/llvm-project/commit/2e7d07a33725a82ecfc514e27f047ece3ff13d4c
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cpp
    M compiler-rt/lib/sanitizer_common/weak_symbols.txt
    M compiler-rt/lib/tsan/go/buildgo.sh

  Log Message:
  -----------
  [sanitizer_common] [Darwin] Adopt _dyld_get_dyld_header (#182943)


  Commit: 1c11f94550e115ead5d7e5048cbac830a35d9513
      https://github.com/llvm/llvm-project/commit/1c11f94550e115ead5d7e5048cbac830a35d9513
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_i386.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_i386.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_x86_64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_x86_64.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.h
    R lldb/source/Plugins/Process/FreeBSDKernel/CMakeLists.txt
    R lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_x86_64.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_x86_64.h
    R lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.h
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/TestFreeBSDKernelLiveCore.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/TestFreeBSDKernelVMCore.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-amd64.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-arm64.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-i386.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/README.rst
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/copy-sparse.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/lldb-minimize-processes.patch
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/test.script
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-amd64-full.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-amd64-minidump.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-arm64-minidump.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-i386-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/TestFreeBSDKernelLive.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/TestFreeBSDKernelVMCore.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-amd64.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-arm64.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-i386.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/README.rst
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/copy-sparse.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/libfbsdvmcore-hacks.patch
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/lldb-minimize-processes.patch
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/test.script
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-full.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-arm64-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-i386-minidump.bz2
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Rename to FreeBSDKernelCore (#182878)

There are two different ways to debug FreeBSD's kernel: core and remote
debugging. Remote debugging is done through `gdb-remote` plugin while
kernel dump and live core debugging is done through `freebsd-kernel`.
The name `freebsd-kernel` is vague for this reason, and following
`elf-core` and `mach-core`'s example, it would be clearer if this plugin
is renamed to `freebsd-kernel-core`.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: f2f3300af4498fe53ad5e3b62c1a1a2f61106fbd
      https://github.com/llvm/llvm-project/commit/f2f3300af4498fe53ad5e3b62c1a1a2f61106fbd
  Author: Gergo Stomfai <stomfaig at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [X86] add X86DomainReassignmentPass to x86 npm pipeline (#183088)

Seems that the pass has already been ported, but was not hooked into the
npm pipeline


  Commit: f9e0a999bc646a830b90992c592e3f922e7d533a
      https://github.com/llvm/llvm-project/commit/f9e0a999bc646a830b90992c592e3f922e7d533a
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/test/Transforms/LoopUnroll/debug.ll
    M llvm/test/Transforms/LoopUnroll/full-unroll-avoid-partial.ll
    M llvm/test/Transforms/LoopUnroll/guard-cost-for-unrolling.ll

  Log Message:
  -----------
  [LoopUnrollPass] Fix capitalization in `LLVM_DEBUG` (#182429)

Carve out changes to existing debug messages from #178476.


  Commit: 1a81673922a3f5b75f342e416e925a69822c4613
      https://github.com/llvm/llvm-project/commit/1a81673922a3f5b75f342e416e925a69822c4613
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp

  Log Message:
  -----------
  [NFCI][analyzer] Add a clean way to generate nodes (#182377)

Currently the most common way for generating nodes is a complicated and
confusing boilerplate approach, which appears in many places:
- A `NodeBuilderContext` is constructed from a `CoreEngine &` and two
other irrelevant arguments.
- A short-lived temporary `NodeBuilder` is constructed from the
`NodeBuilderContext` and some almost irrelevant node sets.
- `NodeBuilder::generateNode()` is invoked once and accesses the graph
through the `CoreEngine &` to generate the node.

To simplify this, I'm cutting out the wrapper layers and extracting the
"main logic" of the method `NodeBuilder::generateNode()` to a new method
called `CoreEngine::makeNode()`. Eventually I intend to replace most use
of `NodeBuilder`s with direct calls to this method.

To ensure that this new `makeNode()` doesn't generate non-sink nodes
with `PosteriorlyOverconstrained` state, I moved the
`isPosteriorlyOverconstrained()` check from `CoreEngine::generateNode()`
to `makeNode()`.

This is technically speaking not an NFC change, because it prevents
`BranchNodeBuilder::generateNode()` from generating non-sink nodes with
`PosteriorlyOverconstrained` state (previously it was able to do so
because it calls `NodeBuilder::generateNodeImpl()` instead of
`NodeBuilder::generateNode()`).

However I labelled this as an NFCI change, as I'm fairly confident that
this won't lead to any observable changes because:
- `PosteriorlyOverconstrained` states are very rare.
- A state derived from a `PosteriorlyOverconstrained` state is also
posteriorly overconstrained, so if `BranchNodeBuilder` fails to sink the
execution path, it will be sunk anyway at the next transition which is
done by a plain `NodeBuilder`.

Note that simulated paths with a `PosteriorlyOverconstrained` state do
not correspond to real paths that can occur during the actual execution
of the program, so the analyzer should stop following them as soon as
possible. For more explanation see the doc-comment above the data member
`bool PosteriorlyOverconstrained` within `ProgramState`.


  Commit: e8d8f8cfccd68f780cf261d622445784980cdd26
      https://github.com/llvm/llvm-project/commit/e8d8f8cfccd68f780cf261d622445784980cdd26
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    A llvm/test/Transforms/SimplifyCFG/AArch64/switch-to-lookup-table-vector-splat.ll

  Log Message:
  -----------
  [LLVM][SimplifyCFG] Make validLookupTableConstant explicitly reject vector types. (#182555)

validLookupTableConstant indirectly rejects vectors through its
selection of supported Constant classes. However, this is not sufficient
when ContantInt/FP are used to represent constant vector splats and so
I've added an explicit bailout.


  Commit: 5a4a5db4776f50a43624392eb2e18863504e5372
      https://github.com/llvm/llvm-project/commit/5a4a5db4776f50a43624392eb2e18863504e5372
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/CUFDialect.td
    M flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.td
    M flang/include/flang/Optimizer/Dialect/FIRDialect.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
    M mlir/include/mlir/IR/DialectBase.td
    M mlir/include/mlir/IR/OperationSupport.h
    M mlir/include/mlir/TableGen/Dialect.h
    M mlir/lib/TableGen/Dialect.cpp
    M mlir/test/mlir-tblgen/op-attribute.td
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
    M mlir/tools/mlir-tblgen/OpFormatGen.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp
    M mlir/unittests/Bytecode/BytecodeTest.cpp
    M mlir/unittests/IR/OpPropertiesTest.cpp

  Log Message:
  -----------
  [MLIR] Remove deprecated setting usePropertiesForAttributes (#182327)

This was slotted for removal in LLVM 19 in the release notes of LLVM 17,
we're way past it now.

If your dialect still has:

> let usePropertiesForAttributes = 1;

Then you can just remove this line (it was the default value).
If you were setting it to 0:

> let usePropertiesForAttributes = 0;

Then you need to adopt the new behavior, please report any issue with
this migration.


  Commit: 7ed50d61af54cc35673310053a3056c76fb6c891
      https://github.com/llvm/llvm-project/commit/7ed50d61af54cc35673310053a3056c76fb6c891
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/StringRef.h
    M llvm/unittests/ADT/StringRefTest.cpp

  Log Message:
  -----------
  [ADT] Add StringRef::rfind_if/rfind_if_not (#182928)

As a parity to `StringRef::find_if/find_if_not`.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: f3c5ab0388a17f08dc791c95d093c9c9b3264dcf
      https://github.com/llvm/llvm-project/commit/f3c5ab0388a17f08dc791c95d093c9c9b3264dcf
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/memcpy_const_compare.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Pre-commit memcpy test with complex constant length (#182170)

Test memcpy lowering with complex constant length.  Length is given by:

`i64 add (i64 sub (i64 16, i64 ptrtoint (ptr addrspacecast (ptr
addrspace(4) null to ptr) to i64)), i64 13)`

Thus, loop guard should not be needed.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 61d40e22c47da133a74c26774eeebbbfe65cfe7e
      https://github.com/llvm/llvm-project/commit/61d40e22c47da133a74c26774eeebbbfe65cfe7e
  Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [SDPatternMatch] Add `m_ConstInt` overloads with `uint64_t`/`int64_t` operands (#182615)

Adds overloads
```cpp
auto m_ConstInt(uint64_t &);
auto m_ConstInt(int64_t &);
```
which behave analogously to `m_ConstInt(APInt &)`, but only match if the
captured integer fits within 64 bits.


  Commit: 15fa8b002636a5f339722a58d2b977f752a5ff08
      https://github.com/llvm/llvm-project/commit/15fa8b002636a5f339722a58d2b977f752a5ff08
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/asanrtl.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/hip.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/ockl.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_abi_version_600.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_isa_version_900.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_wavefrontsize64_off.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_wavefrontsize64_on.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/ocml.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/opencl.bc
    M clang/test/Driver/rocm-device-libs.cl

  Log Message:
  -----------
  clang/AMDGPU: Stop checking for finite only and unsafe math control libraries (#182865)

These will be imminently deleted. Just ignore them if they are not
present.


  Commit: f0289f00b5b85fda63cde96cda3eb38693adc534
      https://github.com/llvm/llvm-project/commit/f0289f00b5b85fda63cde96cda3eb38693adc534
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/isel-hvx-rescale-predicate.ll

  Log Message:
  -----------
  [Hexagon] Avoid contracting predicates in createHvxPrefixPred (#183081)

The function createHvxPrefixPred should only need to expand a predicate
to match the result's bytes-per-bit. Otherwise, contracting of the
predicate may lead to an input that is shorter than 4 bytes, making it
unsuitable for VINSERTW0.

When calling createHvxPrefixPred for vector concatention, re-group the
inputs to the concat to make sure that the resulting inputs to
createHvxPrefixPred would not need contraction.

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


  Commit: ea524fb666cbdc3e827243df9241490a744c06ae
      https://github.com/llvm/llvm-project/commit/ea524fb666cbdc3e827243df9241490a744c06ae
  Author: Moritz Sichert <moritz at cedardb.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaCoroutine.cpp
    A clang/test/SemaCXX/coroutine-inherited-allocator.cpp

  Log Message:
  -----------
  [Clang] Fix coroutine promise with inherited allocation functions (#179141)

The compiler frontend crashed when the promise class overloads operator
new/delete without a regular function declaration. This happens when the
promise class derives from a base class and takes the allocation
functions from the base class with:
    using Base::operator new;
    using Base::operator delete;

This was initially introduced by
1cd59264aa2fb4b0ba70ff03c1298b1b5c21271e.

This should also fix #164088


  Commit: 16d0090ffc80e859131583f3dcea1f85c6a67e05
      https://github.com/llvm/llvm-project/commit/16d0090ffc80e859131583f3dcea1f85c6a67e05
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CodeGenCUDA/device-const-var-linkage.cu

  Log Message:
  -----------
  [CUDA/HIP] Externalize __device__ const variables accessed by host code (#177292)

In standard C++, const variables at namespace scope have internal
linkage. For __device__ const variables, this makes them invisible to
runtime symbol lookup APIs (cudaGetSymbolAddress/hipGetSymbolAddress).

Reading a __device__ const variable from host code is a valid usage
pattern — the host may need to know the value at runtime. This is
also needed by libcudacxx's cuda::get_device_address.

This patch extends the existing CUDADeviceVarODRUsedByHost tracking
to cover __device__ const variables. When host code references such a
variable, it gets externalized (same mechanism used for static device
vars). Variables only used in device code keep internal linkage and
can still be constant-folded.

The fix is in SemaExpr: __device__ const variables are classified as
CVT_Both (due to an implicit CUDAConstantAttr), so the ODR-use
tracking is extended to include CVT_Both variables with an explicit
CUDADeviceAttr, distinguishing them from plain const variables.


  Commit: a04eb62de6961f4300f780664b0207fac6f4497d
      https://github.com/llvm/llvm-project/commit/a04eb62de6961f4300f780664b0207fac6f4497d
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Add JSON serialization support for `TUSummary::LinkageTable`

This change adds full read/write support for the
`TUSummary::LinkageTable` field that maps each entity to its linkage
kind. The deserialization step validates that the set of entity ids in
`LinkageTable` exactly matches the set in `IdTable` in a single `O(N log
N)` pass. Existing tests have been updated and new tests have been added
to ensure 100% coverage of the new code.


  Commit: ff929a21e95cd637ddf6ec9b1036eeaa4ce395d5
      https://github.com/llvm/llvm-project/commit/ff929a21e95cd637ddf6ec9b1036eeaa4ce395d5
  Author: Tommy Chiang <ototot at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/Sema/unroll-template-value-crash.cpp

  Log Message:
  -----------
  [Sema] Guard transformed loop-hint expression before use (#182752)

`TransformLoopHintAttr` called `TransformExpr(...).get()` without
checking that the transformed expression was usable.

For `#pragma GCC unroll v()` instantiated with `v = int`, expression
transformation fails and Clang can assert while validating the loop
hint.

Check `ExprResult::isUsable()` before calling `get()` and keep the
original attribute on failure.

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


  Commit: 59661a295552c7fd766c4a5e81e2ce2ddd723515
      https://github.com/llvm/llvm-project/commit/59661a295552c7fd766c4a5e81e2ce2ddd723515
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M mlir/docs/Dialects/Vector.md

  Log Message:
  -----------
  [LLVM][LangRef] Restrict vscale to be a signed power-of-two integer. (#183080)

There is no known requirement to support non-power-of-two
values of vscale and yet said support is leading to unnecessary
complexity within LLVM.


  Commit: a637cde428065f3a6207b8ce4d84f6d159476df0
      https://github.com/llvm/llvm-project/commit/a637cde428065f3a6207b8ce4d84f6d159476df0
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp

  Log Message:
  -----------
  [CIR][NFC] Update the constructor sites of `CIRGenFPOptionsRAII`  (#182187)

As support for RAII FP options has been upstreamed (#179121), this patch
removes `CIRGenFPOptionsRAII` from the `MissingFeatures` list and
updates its expected constructor sites.


  Commit: 03388af3197b85bb3047ea4aa7791633662bb821
      https://github.com/llvm/llvm-project/commit/03388af3197b85bb3047ea4aa7791633662bb821
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/setpayload.h
    A libc/shared/math/setpayloadbf16.h
    A libc/shared/math/setpayloadf.h
    A libc/shared/math/setpayloadf128.h
    A libc/shared/math/setpayloadf16.h
    A libc/shared/math/setpayloadl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/setpayload.h
    A libc/src/__support/math/setpayloadbf16.h
    A libc/src/__support/math/setpayloadf.h
    A libc/src/__support/math/setpayloadf128.h
    A libc/src/__support/math/setpayloadf16.h
    A libc/src/__support/math/setpayloadl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/setpayload.cpp
    M libc/src/math/generic/setpayloadbf16.cpp
    M libc/src/math/generic/setpayloadf.cpp
    M libc/src/math/generic/setpayloadf128.cpp
    M libc/src/math/generic/setpayloadf16.cpp
    M libc/src/math/generic/setpayloadl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor setpayload family to header-only (#182922)

part of #181823


  Commit: 1b9fea021840f17c41ea980300d0fc45e7285909
      https://github.com/llvm/llvm-project/commit/1b9fea021840f17c41ea980300d0fc45e7285909
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [X86] lowerV64I8Shuffle - avoid lowerShuffleAsRepeatedMaskAndLanePermute call on VBMI targets (#183109)

Shuffle combining fails to fold the inner shuffles first, but luckily the LanePermuteAnd* methods are enough if we have VPERMB as a fallback

Fixes #137422


  Commit: 423719304c3d597e065f16767c3d2a226bc83416
      https://github.com/llvm/llvm-project/commit/423719304c3d597e065f16767c3d2a226bc83416
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [bazel][libc][math] Fix fmul->mul for bf16mul family (#182018)  (#183112)

#182018 made these header only but added the build targets as fmul
instead of mul


  Commit: 8ed290cd1d5c0bf9111dc309add1c156dd212281
      https://github.com/llvm/llvm-project/commit/8ed290cd1d5c0bf9111dc309add1c156dd212281
  Author: Julian Pokrovsky <raventid at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/asinpif16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/asinpif16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/asinpif16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor asinpif16 to Header Only (#179021)

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

Part of #147386

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


  Commit: 67c1dd1c35a10086d403a7dc943d3edf948175df
      https://github.com/llvm/llvm-project/commit/67c1dd1c35a10086d403a7dc943d3edf948175df
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [gn] port 796a1ea79f41


  Commit: 3b5a05d0b27fc47458326419ec43d3bf335f1bb3
      https://github.com/llvm/llvm-project/commit/3b5a05d0b27fc47458326419ec43d3bf335f1bb3
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  Revert "[VPlan] Strengthen materializeFactors with assert (NFC) (#181665)" (#183014)

This PR did not solve the TODO as intended. Reverting so the TODO is not
lost.

This reverts commit aab9412a69a07787e9ec98b25709d709b7b537a6.


  Commit: f1fb4a52287f97a4d86b6c0c73d565b35d0e7173
      https://github.com/llvm/llvm-project/commit/f1fb4a52287f97a4d86b6c0c73d565b35d0e7173
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [FlowSensitive] ignore co_await / co_yield for PropagateResultObject (#182624)

This fixes a crash when encountering co_await


  Commit: 1b42a665b15dfa245980521a4031055bce9a1bce
      https://github.com/llvm/llvm-project/commit/1b42a665b15dfa245980521a4031055bce9a1bce
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/shift-i512.ll

  Log Message:
  -----------
  [X86] shift-i512.ll - add test coverage for shift+extract patterns as suggested on #132601 (#183111)


  Commit: fa2941904151b1f7660603ced47f81a510628efd
      https://github.com/llvm/llvm-project/commit/fa2941904151b1f7660603ced47f81a510628efd
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/src/__support/FPUtil/bfloat16.h
    M libc/test/src/__support/FPUtil/bfloat16_test.cpp

  Log Message:
  -----------
  [libc][math] Bfloat16 `*= (Multiply assign)` operator support (#182882)

This PR intends to add *= operator support for Bfloat16 and tests for
it.


  Commit: 61a18adb3c21960940fcf9a485b32c7590f0ea96
      https://github.com/llvm/llvm-project/commit/61a18adb3c21960940fcf9a485b32c7590f0ea96
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll

  Log Message:
  -----------
  [NFC][ThinLTO] Check that refs between split modules have the same GUID (#182982)

Right now, the GUIDs are computed from the names with the hash suffix.
Once we land [this
RFC](https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801),
we'll want to use the original symbol's GUID, and also ensure any refs
to such symbols (in the case of a split module) keep that GUID. This
test prepares that.

Note that an effect of the aforementioned RFC is that the GUIDs will be
different from the ones checked in the test (but will still be the same
wrt eachother)


  Commit: d75a3d49aa8b0c37a4a374aa7083669bd79ef62c
      https://github.com/llvm/llvm-project/commit/d75a3d49aa8b0c37a4a374aa7083669bd79ef62c
  Author: Rahul Kayaith <rkayaith at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/TableGen.cmake

  Log Message:
  -----------
  [cmake] Don't pass -no-warn-on-unused-template-args to mlir-src-sharder (#183084)

Building with `LLVM_ENABLE_WARNINGS=OFF` fails when generating sharded
test ops:

```bash
cmake -S llvm -B build -G Ninja \
  -DLLVM_ENABLE_PROJECTS="mlir" \
  -DLLVM_ENABLE_WARNINGS=OFF
cmake --build build --target MLIRTestOpsShardGen
```

```
mlir-src-sharder: Unknown command line argument '-no-warn-on-unused-template-args'.
```

`mlir-src-sharder` calls `ResetCommandLineParser()` on startup, so it
doesn't recognize flags registered by the TableGen library. The
`tablegen()` cmake function already excludes `--long-string-literals=0`
for `MLIR_SRC_SHARDER` — this adds the same guard for
`-no-warn-on-unused-template-args`.


  Commit: 901636112c6a45385a0ef421d32a5fb95374f56e
      https://github.com/llvm/llvm-project/commit/901636112c6a45385a0ef421d32a5fb95374f56e
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/source/Target/StackFrameList.cpp

  Log Message:
  -----------
  [lldb/Target] Revert overly broad locking in StackFrameList::FetchFramesUpTo (#182969)


  Commit: b47e416fe7761ac47265133a30903709414a1809
      https://github.com/llvm/llvm-project/commit/b47e416fe7761ac47265133a30903709414a1809
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    M llvm/test/CodeGen/SystemZ/fmuladd-soft-float.ll
    M llvm/test/CodeGen/SystemZ/remat.ll

  Log Message:
  -----------
  [SystemZ] Extend #179838 to include more loads to rematerialize (#182782)

Extend #179838 to include more loads to rematerialize.

---------

Co-authored-by: anoopkg6 <anoopkg6 at github.com>


  Commit: 19e05e62c31fc6a2d62acb2e1e9ae62c2a840b41
      https://github.com/llvm/llvm-project/commit/19e05e62c31fc6a2d62acb2e1e9ae62c2a840b41
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewTypes.def

  Log Message:
  -----------
  [LLVM][PDB] Add missing type/symbol IDs (#182743)

This adds all missing `LF_` and `S_` constants found in
`msdia140.dll`/`mspdbcore.dll`. It doesn't add the record definitions.
Most of them are unknown.

Some definitions would be great to have:

- `LF_{CLASS,STRUCTURE,UNION,INTERFACE}2` The structure is similar to
the versions without `2`. See
https://redirect.github.com/microsoft/microsoft-pdb/issues/50#issuecomment-737890766
and
https://github.com/microsoft/pdb-rs/blob/23def87dfed8cb78dd2916c9607a0caa19e8e549/codeview/src/types/visitor.rs#L518-L523.
We'll probably need to duplicate `ClassRecord` and friends for this.
>From the comment, it sounded like MSVC would generate these, but I
haven't been successful in getting it to generate these.
- `S_ASSOCIATION` is generated when compiling C++ 20 coroutines.
- `S_REGREL32_INDIR` (and similar) also generated in C++ 20 coroutines
and for (unoptimized) structured bindings (#34392). Seems to correspond
to
[`LocationType::LocIsRegRelAliasIndir`](https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/locationtype?view=visualstudio)
([Symbol
Locations](https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/symbol-locations?view=visualstudio))
from the DIA SDK. If I understand correctly, this is just `S_REGREL32`
except that you'd add `offsetInUDT` to the offset. Example:
  ```
40000000 13100000 00000000 4F01 5F5F 636F726F 5F667261 6D655F70 74720000
  offset  | type   |off. in | reg| name (0-terminated)
                    UDT
  ```
  I'm guessing the others are similar, but I don't have any example.


We're also missing some x86 and arm64 sub-registers for XMM/YMM that are
present in `cvconst.h`.


  Commit: 5e9570508feaf6a0873aeae9275beaf52322eb7b
      https://github.com/llvm/llvm-project/commit/5e9570508feaf6a0873aeae9275beaf52322eb7b
  Author: valium007 <49368101+valium007 at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    A clang/test/CIR/CodeGen/call-no-decl.c

  Log Message:
  -----------
  [CIR] Fix cir.call verifier error for implicitly declared variadic functions (#182626)

Fixes #182175


  Commit: 4a1f565c85f637f8f07a090ea09169b2acf3c114
      https://github.com/llvm/llvm-project/commit/4a1f565c85f637f8f07a090ea09169b2acf3c114
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/setpayloadsig.h
    A libc/shared/math/setpayloadsigbf16.h
    A libc/shared/math/setpayloadsigf.h
    A libc/shared/math/setpayloadsigf128.h
    A libc/shared/math/setpayloadsigf16.h
    A libc/shared/math/setpayloadsigl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/setpayloadsig.h
    A libc/src/__support/math/setpayloadsigbf16.h
    A libc/src/__support/math/setpayloadsigf.h
    A libc/src/__support/math/setpayloadsigf128.h
    A libc/src/__support/math/setpayloadsigf16.h
    A libc/src/__support/math/setpayloadsigl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/setpayloadsig.cpp
    M libc/src/math/generic/setpayloadsigbf16.cpp
    M libc/src/math/generic/setpayloadsigf.cpp
    M libc/src/math/generic/setpayloadsigf128.cpp
    M libc/src/math/generic/setpayloadsigf16.cpp
    M libc/src/math/generic/setpayloadsigl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor setpayloadsig family to header-only (#183113)

closes : #181823


  Commit: 980c24897e1d6114e8a5795045e6b1b39bee1887
      https://github.com/llvm/llvm-project/commit/980c24897e1d6114e8a5795045e6b1b39bee1887
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    A lldb/test/API/tools/lldb-dap/conpty-drain/Makefile
    A lldb/test/API/tools/lldb-dap/conpty-drain/TestDAP_conpty_drain.py
    A lldb/test/API/tools/lldb-dap/conpty-drain/main.c

  Log Message:
  -----------
  [lldb] fix Makefile.rules cross platform macros (#183090)

This patch fixes cross platform Makefile.rules macros and adds the
`ECHO_TO_EXISTING_FILE` macros.

Using `echo` in a macro to write to a file had quoting issues.


  Commit: ab14dab5ec4c7159ed439e1735bdb1455fd4b785
      https://github.com/llvm/llvm-project/commit/ab14dab5ec4c7159ed439e1735bdb1455fd4b785
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp

  Log Message:
  -----------
  [CIR] Fix Codegen for Vector logical op with FP (#182761)

Previously, we perform nq comparison between LHS, RHS, and zero attr
with the type of the logical Op, but in the case of a vector with FP
element type, the verifier will fail because we perform a comparison of
a vector of FP and a vector of int (the result type of the logical op in
this case is vector of int)


  Commit: ba0e08287659820b26f60fb3ef4a0b89bb983354
      https://github.com/llvm/llvm-project/commit/ba0e08287659820b26f60fb3ef4a0b89bb983354
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td

  Log Message:
  -----------
  [RISCV] Document some of the names we require for getNamedOperandIdx. NFC (#182687)


  Commit: 04ca29ed5444b5be94c3d75d605e7e2ca266d478
      https://github.com/llvm/llvm-project/commit/04ca29ed5444b5be94c3d75d605e7e2ca266d478
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Expand more TruncStore and LoadExt operations for P extension. (#182995)


  Commit: 6cb5a05cecf2f3b98a36a513f22b967b05084062
      https://github.com/llvm/llvm-project/commit/6cb5a05cecf2f3b98a36a513f22b967b05084062
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/CXX/drs/cwg2947.cpp
    M clang/test/CXX/drs/cwg29xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Add marking to CWG2947 test (#181832)

052f2f8cd17f3ff8bcb7b53a777a232d9ac36965 accidentally changed the status
of CWG2947 from "Clang 23" to "No", because the test was missing the
special comment that `make_cxx_dr_status` scripts consumes. This PR adds
the special comments and restores the original status of CWG2947.


  Commit: f4577641d15a6625966a018715c98ba8fad65c83
      https://github.com/llvm/llvm-project/commit/f4577641d15a6625966a018715c98ba8fad65c83
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    R lldb/test/API/tools/lldb-dap/conpty-drain/Makefile
    R lldb/test/API/tools/lldb-dap/conpty-drain/TestDAP_conpty_drain.py
    R lldb/test/API/tools/lldb-dap/conpty-drain/main.c

  Log Message:
  -----------
  Merge commit '74ad4baef073' from llvm.org/main into next (#183126)


  Commit: d269c36bafc6b9f06b8a79e618abfd2a417d6071
      https://github.com/llvm/llvm-project/commit/d269c36bafc6b9f06b8a79e618abfd2a417d6071
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp

  Log Message:
  -----------
  [WebAssembly] Optimize `WebAssemblyCFGSort`'s post sort verifications. (#182458)

Currently, the post-sort verifications `WebAssemblyCFGSort` does in
assertion builds is quite expensive. Given the example of
[usagi-coffee/tree-sitter-abl](https://github.com/usagi-coffee/tree-sitter-abl),
we have one MASSIVE function with nearly 120K blocks. Sorting this is
fast, but the verifications after take some 40+ seconds (on my machine).

The culprit was the manipulation of the region `OnStack`. I've tried to
replace that with interval based verifications to make sure the regions
are well formed, well nested, and that the numbers of the blocks within
a region are within the interval of the numbers of the header and bottom
of the region.

This brings the aforementioned example down to well under a second spent
in the pass in an assertions build.


  Commit: 08b0f39dcf1ad764896ff776004328e8ae45f390
      https://github.com/llvm/llvm-project/commit/08b0f39dcf1ad764896ff776004328e8ae45f390
  Author: Gauravsingh Sisodia <xaerru at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGen/implicit-value-init-expr.cpp

  Log Message:
  -----------
  [CIR][CodeGen] Implement VisitImplicitValueInitExpr in CIRGenExprScalar.cpp (#182256)

MRE:
```cpp
#include <vector>

std::vector<int> V;
```
```shell
$ ./bin/clang++ -fclangir -c test.cpp
error: ClangIR code gen Not Yet Implemented: ScalarExprEmitter: implicit value init
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
....
```
This PR fixes the crash by upstreaming:

https://github.com/llvm/clangir/blob/c1e076e803a04862443fa2ede13c35144fa79268/clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp#L397-L399


  Commit: 93a5e37b9346fe061921fae311d61a4641d3a78e
      https://github.com/llvm/llvm-project/commit/93a5e37b9346fe061921fae311d61a4641d3a78e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M .github/workflows/prune-unused-branches.py

  Log Message:
  -----------
  [Github] Make prune unused branches workflow correctly handle reverts (#183114)

Revert branches were not being correctly excluded from the list of
branches to delete as we never even looked for them. Look for them, and
add some comments to explain.

I have verified that after this patch, the workflow only deletes
branches that are not associated with any PR.


  Commit: 796e7ebbe59bb7101c92064e4006a8aab0482989
      https://github.com/llvm/llvm-project/commit/796e7ebbe59bb7101c92064e4006a8aab0482989
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M .github/workflows/prune-unused-branches.py

  Log Message:
  -----------
  [Github] Turn on prune-unused-branches workflow (#182985)

This patch turns on the prune-unused-branches workflow for everyone
rather than just my user branches now that all feedback from the
discourse thread has been addressed.


  Commit: f7243c4af76499bb3a5f334eb5585c05ba9be9bc
      https://github.com/llvm/llvm-project/commit/f7243c4af76499bb3a5f334eb5585c05ba9be9bc
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Improve workgroup to subgroup distribution pattern for mulit-reduction op (#182178)

This PR improves the multi-reduction op pattern in wg distribution to
save the partially reduced tile to slm using the same rank as the tile
before reduced, instead of forcing them to using 2d slm tile. This
simplifies the layout assignment at later stage.


  Commit: 6f251689a8a95207bbb60ac7c72bc3ad68ac58df
      https://github.com/llvm/llvm-project/commit/6f251689a8a95207bbb60ac7c72bc3ad68ac58df
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/src/__support/math/asinpif16.h

  Log Message:
  -----------
  [libc][math] Fix code consistency in asinpif16 lambda (#183140)


  Commit: 544e75ebd9d11648761d860f94f41c5b2867440f
      https://github.com/llvm/llvm-project/commit/544e75ebd9d11648761d860f94f41c5b2867440f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    A lldb/test/API/tools/lldb-dap/conpty-drain/Makefile
    A lldb/test/API/tools/lldb-dap/conpty-drain/TestDAP_conpty_drain.py
    A lldb/test/API/tools/lldb-dap/conpty-drain/main.c

  Log Message:
  -----------
  Revert "Merge commit '74ad4baef073' from llvm.org/main into next (#183126)" (#183135)


  Commit: 4ef6a8a16ee711cdcccd630877fc1811999d3324
      https://github.com/llvm/llvm-project/commit/4ef6a8a16ee711cdcccd630877fc1811999d3324
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/nextdown.h
    A libc/shared/math/nextdownbf16.h
    A libc/shared/math/nextdownf.h
    A libc/shared/math/nextdownf128.h
    A libc/shared/math/nextdownf16.h
    A libc/shared/math/nextdownl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/nextdown.h
    A libc/src/__support/math/nextdownbf16.h
    A libc/src/__support/math/nextdownf.h
    A libc/src/__support/math/nextdownf128.h
    A libc/src/__support/math/nextdownf16.h
    A libc/src/__support/math/nextdownl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/nextdown.cpp
    M libc/src/math/generic/nextdownbf16.cpp
    M libc/src/math/generic/nextdownf.cpp
    M libc/src/math/generic/nextdownf128.cpp
    M libc/src/math/generic/nextdownf16.cpp
    M libc/src/math/generic/nextdownl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor nextdown family to header-only (#181679)

closes #181678


  Commit: 17eb0ebee85dc89d00a445ac364cd3e3b14ef535
      https://github.com/llvm/llvm-project/commit/17eb0ebee85dc89d00a445ac364cd3e3b14ef535
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Skip permission-based tests when permissions are not enforced (#183128)

`JSONFormatTest/NoReadPermission` and
`JSONFormatTest/WriteStreamOpenFailure` are negative tests that expect
file operations to fail when Unix permissions are revoked. These tests
unexpectedly succeed instead of failing if they are run as root, or
executed in environments with non-standard filesystem semantics that do
not enforce permission checks.

This change adds a `permissionsAreEnforced()` helper to the
`JSONFormatTest` fixture that detects if:
  - The process is running as root `(getuid() == 0)`
- A probe file with read permission removed can still be opened,
indicating that file permission has no effect in the current
environment. The probe file's permissions are restored before returning
so `TearDown` can clean up the temp directory unconditionally.

This method is used to skip the two negative tests rather than failing
with a spurious assertion error.

rdar://170917013
rdar://170916929


  Commit: a8821e26dff873955d61c16cb25e7e9981d21681
      https://github.com/llvm/llvm-project/commit/a8821e26dff873955d61c16cb25e7e9981d21681
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/fminp-fmaxp.ll
    A llvm/test/CodeGen/AArch64/sminp-smaxp.ll
    A llvm/test/CodeGen/AArch64/uminp-umaxp.ll

  Log Message:
  -----------
  [AArch64] optimize manual pairwise min/max (#182785)

Like https://github.com/llvm/llvm-project/pull/181549 but for min/max. I
believe that the behavior for `fminp`/`fmaxp` is correct based on

-
https://developer.arm.com/architectures/instruction-sets/intrinsics/vmax_f32
-
https://developer.arm.com/architectures/instruction-sets/intrinsics/vmaxv_f32

both using `FPMin` and `FPMAX` and 

```
defm FMAXP   : SIMDThreeSameVectorFP<1,0,0b110,"fmaxp", int_aarch64_neon_fmaxp>;
defm FMAX    : SIMDThreeSameVectorFP<0,0,0b110,"fmax", any_fmaximum>;
```

so using `any_fmaximum` for the patterns for `fmaxp` should be OK?


  Commit: 334aa966ec55a6be62f0c924d8c695bbe36e6cd4
      https://github.com/llvm/llvm-project/commit/334aa966ec55a6be62f0c924d8c695bbe36e6cd4
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    R lldb/test/API/tools/lldb-dap/conpty-drain/Makefile
    R lldb/test/API/tools/lldb-dap/conpty-drain/TestDAP_conpty_drain.py
    R lldb/test/API/tools/lldb-dap/conpty-drain/main.c

  Log Message:
  -----------
  Revert "[lldb] fix Makefile.rules cross platform macros (#183090)" (#183142)


  Commit: a41cedaa73136531e410f238a77b315c2c2c43ab
      https://github.com/llvm/llvm-project/commit/a41cedaa73136531e410f238a77b315c2c2c43ab
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/test/API/commands/process/attach/TestProcessAttach.py

  Log Message:
  -----------
  [lldb] Make TestProcessAttach.py more reliable (#183141)

This test occasionally fails on GreenDragon. When the directory already
exists and we enter the exception block, the `os.errno` symbol is not
found because it was deprecated in Python 3.7.

Instead, replace `os.mkdir` with `os.makedirs` because it can handle a
directory already existing.


  Commit: e1be4dfe1ef889c51d7e1704782a31dc65bb745c
      https://github.com/llvm/llvm-project/commit/e1be4dfe1ef889c51d7e1704782a31dc65bb745c
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
    A llvm/test/CodeGen/Hexagon/disable-packetizer-nvj.ll

  Log Message:
  -----------
  [Hexagon] Disable new value jumps when packetizer is disabled (#180615)

New value jumps require the feeder instruction to be in the same packet
as the consumer (.new) instruction. When --disable-packetizer is used,
each instruction is placed in its own packet, making it impossible to
satisfy this requirement.

Previously, using --disable-packetizer would cause an assertion failure
in the MCCodeEmitter: "Couldn't find producer". This change fixes the
crash by checking the DisablePacketizer flag in the NewValueJump pass
and skipping NVJ generation when packetization is disabled.


  Commit: 262a678cb6ba50edb25861d37d790027643571ce
      https://github.com/llvm/llvm-project/commit/262a678cb6ba50edb25861d37d790027643571ce
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/call-no-decl.c

  Log Message:
  -----------
  [CIR][NFC] Fix Call no decl test (#183137)

Update the call-no-decl test file to ignore for parameter attribute `{llvm.noundef}`


  Commit: e36fe2e17139ef31cb08acc205a9546e78cf369e
      https://github.com/llvm/llvm-project/commit/e36fe2e17139ef31cb08acc205a9546e78cf369e
  Author: Elia Geretto <egeretto at qti.qualcomm.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [PAC][Headers] Silence warnings in `ptrauth.h` macro expansions (#183107)

This commit ensures that
`-Wgnu-statement-expression-from-macro-expansion` is not triggered when
`ptrauth.h` is included, but pointer authentication is not available.

Fixes #171461.


  Commit: 14656962c03620569c8fc55807851e22ab99de72
      https://github.com/llvm/llvm-project/commit/14656962c03620569c8fc55807851e22ab99de72
  Author: Stephen Chou <stephenchouca at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineLoopUtils.cpp
    A llvm/test/CodeGen/Hexagon/swp-peel-prolog-crash.mir

  Log Message:
  -----------
  [MachinePipeliner] Fix crash during prolog peeling (#182189)

Fix crash during prolog peeling when loop preheader terminates with a
fallthrough conditional branch

The crash was happening due to the wrong preheader layout successor
being passed to `updateTerminator`; in general, the loop kernel will not
be the layout successor after prolog peeling. Fix this by passing the
right layout successor.


  Commit: eee3db408f6fb94c034b0617a53dad87833c3dbf
      https://github.com/llvm/llvm-project/commit/eee3db408f6fb94c034b0617a53dad87833c3dbf
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/src/__support/CPP/bit.h

  Log Message:
  -----------
  [libc] Remove MSAN_UNPOISON from `bit_cast` and `bit_copy` (#183124)

The `MSAN_UNPOISON` calls were manually unpoisoning the source memory,
which can hide legitimate bugs where uninitialized memory is being
copied.

`MSAN_UNPOISON` should not be used in such wide spread utilities as
`bit_cast` and `bit_copy` but rather close to API boundary where
have no better way to avoid uninitialized bits.

* `MSAN_UNPOISON` was add to `bit_copy` with #165015, but it looks like
a copy-paste from `bit_cast`.
* `bit_cast` has it from #70067, but I can't find valid reproducer any
more. If it's still the issue, `MSAN_UNPOISON` \
  should move close the source of uninitialized values.


  Commit: 5a69f1c3acb7b2b65612368282875f669e041cd6
      https://github.com/llvm/llvm-project/commit/5a69f1c3acb7b2b65612368282875f669e041cd6
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp

  Log Message:
  -----------
  [clang-tidy] Simplify and generalize `performance-string-view-conversions` (#182783)

This change teaches the check to detect the redundant `string_view ->
string -> string_view` conversion chain in places besides function calls
(notably, in constructor calls), all with less code.

No release note, because this check hasn't been released yet.


  Commit: b66fae37edb1b9107e79e66273fccb7b70e24327
      https://github.com/llvm/llvm-project/commit/b66fae37edb1b9107e79e66273fccb7b70e24327
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/GVN.cpp
    A llvm/test/Transforms/GVN/PRE/protected-field-ptr.ll

  Log Message:
  -----------
  GVN: Inhibit PRE for llvm.protected.field.ptr.

Similar case to #151649.

Reviewers: fmayer, nikic

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


  Commit: 27533c7e84793e5e2500fabc7a8fcac89e86fe95
      https://github.com/llvm/llvm-project/commit/27533c7e84793e5e2500fabc7a8fcac89e86fe95
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lld/test/ELF/lto/linker-script-symbols-ipo.ll
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    A llvm/test/CodeGen/X86/prefalign.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll
    M llvm/test/tools/gold/X86/multiple-sections.ll

  Log Message:
  -----------
  Reland "CodeGen: Emit .prefalign directives based on the prefalign attribute."

The result of the MachineFunction preferred alignment query is emitted
as a .prefalign directive if supported, otherwise it gets combined into
the minimum alignment.

Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019

Reland of #155529 with fix for gold test case.

Reviewers: fmayer, nikic, arsenm

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


  Commit: 82593722f585335f53b0609fb108de151f65271c
      https://github.com/llvm/llvm-project/commit/82593722f585335f53b0609fb108de151f65271c
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/openmp-taskloop-no-context-struct.mlir

  Log Message:
  -----------
  [OMPIRBuilder] Replace getAllocatedType with getAllocationSize (#181844)

Replace size queries using getTypeStoreSize(getAllocatedType()) with
getAllocationSize(DL) in createTaskloop, createTask, emitTargetTask, and
emitTargetTaskProxyFunction. For GEP type arguments in
emitNonContiguousDescriptor and emitOffloadingArrays, use the local
ArrayTy/PointerArrayType variables already in scope instead of
re-querying the alloca.

The store size of a struct is the same as the allocation size, so this
part should be NFC, and removes unnecessary uses of getAllocatedType, in
pursuit of the eventual deprecation of the getAllocatedType interface.

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 603c315355313bb22f863e0aa26b80238c5b3ae2
      https://github.com/llvm/llvm-project/commit/603c315355313bb22f863e0aa26b80238c5b3ae2
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-fuse.mlir

  Log Message:
  -----------
  [MLIR][Transform] Allow any kind of transform param in mixed args (#183163)

Changes check to be on the interface so that `!transform.any_param`
typed values are accepted in addition to `!transform.param<...>`.


  Commit: e0477ce1b3c30e2ec536901e2e7d8589dd370e4a
      https://github.com/llvm/llvm-project/commit/e0477ce1b3c30e2ec536901e2e7d8589dd370e4a
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/lib/Sema/SemaExpr.cpp

  Log Message:
  -----------
  [Sema] Set __builtin_wasm placeholder type to v* instead of i (#181146)

The `rewriteBuiltinFunctionDecl` was unconditionally rewriting
BuiltinFnTy to FunctionTy, by taking the type from the FDecl instead of
copying it from the Fn. That confused BuildResolvedCallExpr immediately
afterward, which sets `ResultTy = Context.BoolTy` if the type is
declared to be Function rather than BuiltinFn. Thus this only usually
matters when also using custom type checking, since otherwise this
eventually extracts the type from the FuncT and overwrites the type
extracted from the builtin, but that ability is disabled for builtins
with custom type checking marked. Either change here is sufficient alone
for the current __builtin_wasm declarations, but doing both changes
seemed more conservative for possible future builtins.

This was introduced originally in
b919c7d9eb8598b7f631c1edcd0b874bbdaf99d6.

Analysis assisted by Claude Sonnet 4.5


  Commit: d1e29a4bf1418fddd66cad32e9eda76f20b9c68a
      https://github.com/llvm/llvm-project/commit/d1e29a4bf1418fddd66cad32e9eda76f20b9c68a
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/aarch64/CMakeLists.txt
    A libc/startup/linux/aarch64/irelative.cpp
    M libc/startup/linux/do_start.cpp
    A libc/startup/linux/irelative.h
    M libc/startup/linux/riscv/CMakeLists.txt
    A libc/startup/linux/riscv/irelative.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    A libc/startup/linux/x86_64/irelative.cpp
    M libc/test/integration/startup/linux/CMakeLists.txt
    A libc/test/integration/startup/linux/irelative_no_ifunc_test.cpp
    A libc/test/integration/startup/linux/irelative_test.cpp

  Log Message:
  -----------
  [libc] Enable ifunc support in static startup (#182841)

Resolves ifunc targets before `main()` runs in static libc

This enables static binaries to use ifunc-based dispatch during early
process startup, so optimized implementations can be selected based on
CPU features. Without this relocation step in startup, those targets are
not ready when program code begins executing.

This change:
- adds IRELATIVE relocation handling for x86_64, AArch64, ARMv7 and RISC-V,
- reads `AT_HWCAP` / `AT_HWCAP2` from auxv and passes them to resolvers
where required (notably AArch64),
- runs IRELATIVE processing after base-address discovery and before TLS
setup,
- adds integration tests for both the ifunc path and the no-ifunc path,
- Changed the load bias type for ptrdiff_t to intptr_t to align with
IRELATIVE handling, which uses intptr_t for load bias calculations.


  Commit: 28c34edab4c2bed535ff4832740ec49dbef19f99
      https://github.com/llvm/llvm-project/commit/28c34edab4c2bed535ff4832740ec49dbef19f99
  Author: marius doerner <marius.doerner1 at icloud.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Sema/Sema.h
    M clang/test/Sema/nonnull.c

  Log Message:
  -----------
  [clang] Check upperbound for attribute param index (#180424)

Fixes #176638

The `ParamIdx` class encodes attribute's parameter indexes in 30 bits,
check if assignments overflow and issue an "attribute parameter out of
bounds" error in that case.


  Commit: c91fc0056478455f24f3e35b6cac153aa30948f2
      https://github.com/llvm/llvm-project/commit/c91fc0056478455f24f3e35b6cac153aa30948f2
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules

  Log Message:
  -----------
  [lldb] fix Makefile cross platform macros (#183131)

This patch fixes cross platform Makefile.rules macros and adds the
`ECHO_TO_EXISTING_FILE` macros.

Using `echo` in a macro to write to a file had quoting issues.

This is a reland of https://github.com/llvm/llvm-project/issues/183090.


  Commit: 75cbd584ee179ce3960fe661c0c56636b4d9057b
      https://github.com/llvm/llvm-project/commit/75cbd584ee179ce3960fe661c0c56636b4d9057b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/test/Driver/hip-temps-linux.hip

  Log Message:
  -----------
  [HIP] Adjust test after #123359

Summary:
Just make this use the old driver for now, since that appraently worked.
Delete this later


  Commit: efc98de8e725b111a0bd38a3f2768af33a63a3da
      https://github.com/llvm/llvm-project/commit/efc98de8e725b111a0bd38a3f2768af33a63a3da
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/abseil/UncheckedStatusOrAccessCheck.cpp
    M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StdNamespaceModificationCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
    M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStaticCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
    M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Remove ad-hoc `unless(isExpansionInSystemHeader())` from matchers (#183020)

#151035 centralized the code to skip matching nodes in system headers,
so individual checks no longer need the
`unless(isExpansionInSystemHeader())` boilerplate to achieve that. You
can verify that the logic introduced in that PR is equivalent to
`unless(isExpansionInSystemHeader())`; they both essentially boil down
to
`!SourceManager.isInSystemHeader(Node.getBeginLoc())`:

https://github.com/llvm/llvm-project/blob/7c5c58cdc6553c969a11fee51bfd23ae659220d4/clang/include/clang/ASTMatchers/ASTMatchers.h#L283-L291

https://github.com/llvm/llvm-project/blob/7c5c58cdc6553c969a11fee51bfd23ae659220d4/clang/lib/ASTMatchers/ASTMatchFinder.cpp#L1363-L1372

I audited all the uses of `isExpansionInSystemHeader` in the codebase,
and the only one I found that wasn't redundant was one in
`TaggedUnionMemberCountCheck.cpp`.


  Commit: 804572136ea33ec067cf0d5bb8f5a0b004c650a8
      https://github.com/llvm/llvm-project/commit/804572136ea33ec067cf0d5bb8f5a0b004c650a8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Allow recursive narrowing in interleave group narrowing. (#167310)

This allows canNarrowOps to recursively check if operands can be
narrowed, enabling narrowing of longer chains of operations that
feed interleave groups.

Depends on https://github.com/llvm/llvm-project/pull/167309.

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


  Commit: 23ea5d537dedb31e767876a871790c111e6ef6b6
      https://github.com/llvm/llvm-project/commit/23ea5d537dedb31e767876a871790c111e6ef6b6
  Author: Serafean <Serafean at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    A clang/test/Index/index-auto.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [clang][libclang]Check auto type for type constraints (#172472)

the "auto" keyword was visited by the default visitor only, making any
type constraints unavailable through the libclang API.

Add an explicit visitor for AutoType, check for constraints, and visit
those.

Fixes issue #166580

I modeled the visiting after
https://github.com/llvm/llvm-project/blob/main/clang/tools/libclang/CIndex.cpp#L1346
, and the tests after what I found in
https://github.com/llvm/llvm-project/blob/main/clang/test/Index/index-concepts.cpp
. Hopefully it fits.


  Commit: ac45132c2f64ff6b189a5cd15c2b4e257433d243
      https://github.com/llvm/llvm-project/commit/ac45132c2f64ff6b189a5cd15c2b4e257433d243
  Author: PiJoules <leonardchan at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/asan/asan_rtl_x86_64.S

  Log Message:
  -----------
  Reapply "[ASan][Fuchsia] Have Fuchsia use a dynamic shadow start" (#182972) (#183154)

This reverts commit 19daed352f218f866ebcbbf3f35b14918588d8a1 but keeping
the original cmake in compiler-rt/lib/asan/CMakeLists.txt as is. Prior
we were attempting to use clang-cl for building ASM with all the normal
flags but extra flags are needed to force clang-cl to be used as an
assembler. For now, it's just easier to not touch any of the cmake
machinery and omit building the assembly for windows builds, but we
still keep the `#if` in the asm file to avoid having a fuchsia-specific
exclusion.


  Commit: 07053e4d2e8f59413e115b1ba10bcd59250c982f
      https://github.com/llvm/llvm-project/commit/07053e4d2e8f59413e115b1ba10bcd59250c982f
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stopped-events/TestDAP_stopped_events.py

  Log Message:
  -----------
  [LLDB]Fix logic in matches method for thread comparison (#179873)

The method claims to check if a is a subset of b, but the implementation
`a | b ==a` actually checks if b is a subset of a. This patch updated
the docstring.


  Commit: 4a7bffc2c41adf94c48ac14e89de453c08b03bdc
      https://github.com/llvm/llvm-project/commit/4a7bffc2c41adf94c48ac14e89de453c08b03bdc
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/CodeGen/prefalign.c
    M clang/test/CodeGenCXX/member-alignment.cpp
    A clang/test/Driver/prefalign.c

  Log Message:
  -----------
  CodeGen, Driver: Introduce -fpreferred-function-alignment option.

This option may be used to specify a function's preferred alignment.
The -falign-functions option and the aligned attribute now control
both the minimum alignment and the preferred alignment for consistency
with gcc. In contrast to the previous approach implemented in #149444
the preferred alignment is retained for member functions.

Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019

Reviewers: vitalybuka, MaskRay, AaronBallman, jansvoboda11

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


  Commit: 85354c6d8bc929c8a70266b90d69ec5eaea35470
      https://github.com/llvm/llvm-project/commit/85354c6d8bc929c8a70266b90d69ec5eaea35470
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  [ORC] Simplify WaitingOnGraph::Coalescer::remove. (#183175)

WaitingOnGraph::Coalescer::remove used to apply a should-remove
predicate to all SuperNodes currently registered with the coalescer.
This commit updates it to take a single SuperNode at a time, similar to
standard container erase methods.

To enable this, WaitingOnGraph::Coalescer now holds a map of registered
SuperNodes to hashes.

This allows us to remove individual SuperNodes, rather than checking all
SuperNodes in the Coalescer against a should-remove predicate.


  Commit: e3af23de34ebdabfafdb876e0a6befa13b0c9c83
      https://github.com/llvm/llvm-project/commit/e3af23de34ebdabfafdb876e0a6befa13b0c9c83
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/unittests/DAP/ProtocolRequestsTest.cpp

  Log Message:
  -----------
  [lldb-dap] Correct types in cancel reqs. (#183169)

Correcting the types in cancel arguments. The `progressId` should have
been a string and updating the requestId to default to 0.


  Commit: 8cbbd5b561de495d6a8f4be4f5c4462c812c5b91
      https://github.com/llvm/llvm-project/commit/8cbbd5b561de495d6a8f4be4f5c4462c812c5b91
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M libc/include/llvm-libc-types/struct_stat.h
    M libc/test/src/sys/time/utimes_test.cpp

  Log Message:
  -----------
  [libc] Add backwards-compatibility macro to struct stat. (#182601)

Older code may use `st_atime` which recorded timestamps with one-second
precision, instead of `struct timespec st_atim` that is available in
later POSIX versions.

Add `#define st_atime` (& friends) to type declaration as suggested in
https://man7.org/linux/man-pages/man3/stat.3type.html


  Commit: 7faf98bda1188d209b220665cead27a914178f3b
      https://github.com/llvm/llvm-project/commit/7faf98bda1188d209b220665cead27a914178f3b
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-tile.mlir

  Log Message:
  -----------
  [MLIR][Transform] tile_using_for: allow transform.any_param in mixed args (#183178)

Changes check to be on the interface so that `!transform.any_param`
typed values are accepted in addition to `!transform.param<...>`.


  Commit: 023b7dad0fd8122045b7d07bd98fe7f66a94d099
      https://github.com/llvm/llvm-project/commit/023b7dad0fd8122045b7d07bd98fe7f66a94d099
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M clang/docs/ClangIRCleanupAndEHDesign.md
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp
    M clang/test/CIR/IR/catch-param.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/try-catch.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir

  Log Message:
  -----------
  [CIR] Update the design for structured catch handler representation (#183134)

This updates the design for catch handler regions in CIR try operations
to add an EH token argument to the regions and to use the
`cir.begin_catch` and `cir.end_catch` operations in the structured
representation rather than a `cir.catch_param`. This matches the
flattened representation and will make flattening easier to implement.

This leaves the generation of begin_catch and end_catch operands in the
`CXXABI` interface and Itanium implementation. However, because this
representation is no longer target-specific, I intend to move this code
to `CIRGenFunction` in a future change.

I used AI tools to generate many of the changes in this PR, but I have
carefully reviewed the changes and updated as needed.


  Commit: d7347c0b81aecaaa73ce8f167556c6ca5c449495
      https://github.com/llvm/llvm-project/commit/d7347c0b81aecaaa73ce8f167556c6ca5c449495
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  Revert "[ORC] Simplify WaitingOnGraph::Coalescer::remove. (#183175)"

Revert commit 85354c6d8bc while I investigate the bot failure at
https://lab.llvm.org/buildbot/#/builders/187/builds/17163.


  Commit: 8e43a5a39cea6d453de137173ae0310d77a4d923
      https://github.com/llvm/llvm-project/commit/8e43a5a39cea6d453de137173ae0310d77a4d923
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
    M lldb/test/API/lang/objc/objc-ivar-stripped/TestObjCIvarStripped.py

  Log Message:
  -----------
  [lldb] Disable shared build for TestHiddenIvars.py and TestObjCIvarStripped.py (#183188)

These tests sporadically fail on Green Dragon. My hypothesis is that one
test is rebuilding while another is trying to load a dSYM leading to a
mismatch.


  Commit: 8c3e8e526b78b10174529e42181ae655107f834c
      https://github.com/llvm/llvm-project/commit/8c3e8e526b78b10174529e42181ae655107f834c
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/wsloop-linear.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm-invalid.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M mlir/test/Target/LLVMIR/openmp-simd-guided.mlir

  Log Message:
  -----------
  [flang][mlir][OpenMP] Allow for flexible typing of linear step variables (#182816)

This PR allows for flexible typing of linear step variables. The format
of the linear clause is also changed to: `linear(linear_var : type =
linear_step : type)`; this format closely follows the formatting of the
allocate/allocators clauses.

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

Co-authored-by: urvi-rav <urvi.rav at hpe.com>


  Commit: 549626702518d8ef0af45f4438d755a99f50e38c
      https://github.com/llvm/llvm-project/commit/549626702518d8ef0af45f4438d755a99f50e38c
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/test/CodeGen/SPIRV/pointers/ptrcast-bitcast.ll

  Log Message:
  -----------
  [SPIRV] Add Intermediate cast when Vector From/To types are of different element size and type (#182166)

fixes https://github.com/llvm/llvm-project/issues/177838

- Replaced assert(TargetTypeSize == SourceTypeSize) with a conditional:
when sizes differ, compute a BitcastType with the target's element type
but sized to match the source's total bitwidth
- Instead of unconditionally returning after bitcast, only return early
if BitcastType == TargetType (same-size case), otherwise fall through to
the shuffle logic
- Updated the final assert to use AssignValue->getType() since that may
now be the intermediate type rather than SourceType


  Commit: 65215d5b95d5a495f6cf82c25a7be4e8f2be144c
      https://github.com/llvm/llvm-project/commit/65215d5b95d5a495f6cf82c25a7be4e8f2be144c
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Options/Options.td
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    A clang/lib/CIR/Dialect/Transforms/IdiomRecognizer.cpp
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    A clang/test/CIR/Transforms/idiom-recognizer.cpp

  Log Message:
  -----------
  [CIR] Initial upstreaming of idiom recognizer pass (#172486)

This PR Upstreams the Idiom Recognizer pass

cc @bcardosolopes


  Commit: 9a42d3a25cc997d25cd5d9de3c1123d7c1c992d0
      https://github.com/llvm/llvm-project/commit/9a42d3a25cc997d25cd5d9de3c1123d7c1c992d0
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  [MLIR][XeGPU] Enable one-step subgroup distribution of cross-lane reduction to shuffle op (#182698)

This PR simplifies the current two-step distribution implementation for
vector.multi-reduction op on cross-lane reduction. Instead of first
lowering to vector.reduction op and further distribution, it directly
lowers to shuffles op. This removes the complexity of setting xegpu
layout for the intermediate operations (extract/insert/reduction)
generated on the fly during subgroup distribution pass.


  Commit: 37538bec5737ab805c3f625e32dc690c2e66b971
      https://github.com/llvm/llvm-project/commit/37538bec5737ab805c3f625e32dc690c2e66b971
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [lldb][DWARFASTParserClang][NFC] Make ParsedDWARFTypeAttributes parameter a const-ref (#183024)

In https://github.com/llvm/llvm-project/pull/182956 we stopped using
access specifiers from DWARF for most Clang decls we create. This
parameter no longer needs to be modified and we can make it a
`const-ref`.


  Commit: 276f3f356a6944e202cd9d155c74b4b022d66707
      https://github.com/llvm/llvm-project/commit/276f3f356a6944e202cd9d155c74b4b022d66707
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Sema/Template.h
    M clang/lib/Sema/SemaConcept.cpp
    M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Check the underlying type dependency in concept checking guards (#183010)

In the concept parameter mapping patch, we partially preserved sugar for
concept checking. However, in dependent contexts there may be
non-dependent aliases that still require concept checking to filter out
unwanted functions.

No release note because of being a regression.

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


  Commit: 5cb8191595d3331d9d333cd441b63f2af535760a
      https://github.com/llvm/llvm-project/commit/5cb8191595d3331d9d333cd441b63f2af535760a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Lua/Lua.cpp
    R lldb/source/Plugins/ScriptInterpreter/Lua/Lua.h
    A lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
    A lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.h
    M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
    M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
    M lldb/unittests/ScriptInterpreter/Lua/LuaTests.cpp

  Log Message:
  -----------
  [lldb] Rename Lua -> LuaState (NFC) (#183218)

Rename Lua to LuaState to avoid conflicts between Lua.h and lua.h on
case-insensitive file systems.


  Commit: 75171b07c17cd80c7f6a493fb690fd97480b59fc
      https://github.com/llvm/llvm-project/commit/75171b07c17cd80c7f6a493fb690fd97480b59fc
  Author: hidekisaito <hidekido at amd.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.ll
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-pattern.ll

  Log Message:
  -----------
  [AMDGPU] Add LIT tests for DS loop waitcnt prefetch flushed (tests-only PR) (#183217)

Test-only PR for PR #175658, and remove -O3 from PR #172728 LIT test per
post-merge comment


  Commit: 2ff512b96742a9e3e51383f61e35b44ed85b3abb
      https://github.com/llvm/llvm-project/commit/2ff512b96742a9e3e51383f61e35b44ed85b3abb
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang][NFC] Correct the test in PR183010 (#183226)

We should test non-type-dependent type aliases.

(I copy-pasted wrong code which is used for debugging. Thanks to Richard
for spotting that)


  Commit: ba34cbad4132148447d5593127bbafec7b6f13b1
      https://github.com/llvm/llvm-project/commit/ba34cbad4132148447d5593127bbafec7b6f13b1
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M lldb/bindings/CMakeLists.txt
    M lldb/bindings/lua/CMakeLists.txt
    M lldb/bindings/python/CMakeLists.txt
    M lldb/source/API/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Extract CMake logic to add SWIG wrapper into helper function (#183203)

Extract the CMake logic to add SWIG wrapper into helper function defined
in the bindings directly. This avoid code duplication between Python and
Lua.

The function is parameterized in its target, making it possible to add
the wrapper to a different target, for example the respective script
interpreter plugin when building dynamic plugins.


  Commit: dc0a06d6f6ffe413b5b822a9906093acfdeba1f6
      https://github.com/llvm/llvm-project/commit/dc0a06d6f6ffe413b5b822a9906093acfdeba1f6
  Author: Vasileios Porpodas <vasileios.porpodas at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/SandboxIR/Region.cpp
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  Reapply "[SandboxIR][Region] Replace exit() with reportFatalUsageError() (#182134)"

This reverts commit 4ffa61978b3d72b868e995bf89d4f864f5e8ab6d.


  Commit: 43dfde4a07b37e8a8b470f38ef881052cac9336d
      https://github.com/llvm/llvm-project/commit/43dfde4a07b37e8a8b470f38ef881052cac9336d
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  [MLIR][NVVM] Enable result type inference (#181781)

Includes `InferOpTypeInterface.td` in `NVVMOps.td` enabling result type
inference for NVVM operations.

Fixes a test for `nvvm.redux.sync` in `nvvm.py` due to a resulting
change in the python binding for the operation.


  Commit: 138805ed8434ed372bccd2436f25f771f7518eaa
      https://github.com/llvm/llvm-project/commit/138805ed8434ed372bccd2436f25f771f7518eaa
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Limit Python include dir to ScriptInterpreterPython (NFC) (#183236)

Limit Python include dir to ScriptInterpreterPython and any library that
depends on it (i.e. liblldb), making it consistent with what we do for
Lua.


  Commit: be7aa6a2b7a487a4c9d6942abe3c78735025fac1
      https://github.com/llvm/llvm-project/commit/be7aa6a2b7a487a4c9d6942abe3c78735025fac1
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Add checks for missing and mismatched `EntitySummary` data and improve code coverage

This PR adds new checks and tests for null `EntitySummary`, and
`SummaryName` match against `EntitySummary::getSummaryName()`. It also
adds tests for `SummaryName` with no registered `FormatInfo`.
As part of this change, the `JSONFormatTest` fixture has been made to
inherit from `ssaf::TestFixture` to provide its subclasses direct access
to the private-field accessors that TestFixture exposes.
This brings JSONFormat.cpp to almost 100% coverage. The remaining
uncovered lines are either in untestable paths or coverage
instrumentation artifacts.


  Commit: bc9d5b01d3cdaaa69ad489085a5446579d4c1f43
      https://github.com/llvm/llvm-project/commit/bc9d5b01d3cdaaa69ad489085a5446579d4c1f43
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    A clang/test/DebugInfo/CXX/callsite-base.cpp
    A clang/test/DebugInfo/CXX/callsite-derived.cpp
    A clang/test/DebugInfo/CXX/callsite-edges.cpp
    A cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-crash.cpp
    A cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-dwarf.cpp
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll

  Log Message:
  -----------
  [clang][DebugInfo] Add virtuality call-site target information in DWARF. (#182510)

Given the test case:

  struct CBase {
    virtual void foo();
  };

  void bar(CBase *Base) {
    Base->foo();
  }

and using '-emit-call-site-info' with llc, the following DWARF
is produced for the indirect call 'Base->foo()':

1$: DW_TAG_structure_type "CBase"
      ...
2$:   DW_TAG_subprogram "foo"
        ...

3$: DW_TAG_subprogram "bar"
      ...
4$:   DW_TAG_call_site
        ...

We add DW_AT_LLVM_virtual_call_origin to existing call-site
information, linking indirect calls to the function-declaration
they correspond to.

4$:   DW_TAG_call_site
        ...
        DW_AT_LLVM_virtual_call_origin (2$ "_ZN5CBase3fooEv")

The new attribute DW_AT_LLVM_virtual_call_origin helps to
address the ambiguity to any consumer due to the usage of
DW_AT_call_origin.

The functionality is available to all supported debuggers and
it is generated only for DWARF version 5 or greater.


  Commit: 0fa0bb10673cc8e55ff5d639cb741eded78aa255
      https://github.com/llvm/llvm-project/commit/0fa0bb10673cc8e55ff5d639cb741eded78aa255
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp

  Log Message:
  -----------
  [clangd] Handle MemberPointerTypeLoc in SelectionTree (#183242)

This is another type loc that overlaps the name of the declaration whose
type it is, and so needs special handling to allow the declaration
itself to be targeted.

Fixes https://github.com/clangd/clangd/issues/2608


  Commit: fc1cba892ffa22e27b1d49204781e84354d0e8bf
      https://github.com/llvm/llvm-project/commit/fc1cba892ffa22e27b1d49204781e84354d0e8bf
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Copy EvalID into InterpState (#182913)

So the EvalID there is independent of changes to the one in the Context.
This is currently an NFC change but will make future commits easier.


  Commit: 29f32e674a18978755c9eeb9624c5d0edcf254ea
      https://github.com/llvm/llvm-project/commit/29f32e674a18978755c9eeb9624c5d0edcf254ea
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCUDANV.cpp
    M clang/lib/CIR/CodeGen/CIRGenCUDARuntime.cpp
    M clang/lib/CIR/CodeGen/CIRGenCUDARuntime.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/test/CIR/CodeGenCUDA/kernel-call.cu

  Log Message:
  -----------
  [CIR][CUDA][HIP] Emit host-side kernel calls (#179809)

Related: https://github.com/llvm/llvm-project/issues/179278,
https://github.com/llvm/llvm-project/issues/175871


  Commit: 550c65b3dd0413ab6b50dc4e2fdb45dffc947da7
      https://github.com/llvm/llvm-project/commit/550c65b3dd0413ab6b50dc4e2fdb45dffc947da7
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    A llvm/test/CodeGen/SystemZ/foldmemop-global.mir

  Log Message:
  -----------
  [SystemZ] Allow folding from another MBB in foldMemoryOperandImpl(). (#182921)

After 7c1d517 "[SystemZ] Enable rematerialization for scalar loads
(#179838)", an assertion in foldMemoryOperandImpl() that checked
that the original load and the subsuming instruction are in the same
MBB started to fail.

There is no fundamental reason to not allow this, so this assertion has
been removed and this case is now handled as well by the search that
checks for CC liveness.


  Commit: 9d5574dda60151dcd1eb6f315c20e4d9120596f9
      https://github.com/llvm/llvm-project/commit/9d5574dda60151dcd1eb6f315c20e4d9120596f9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    R llvm/docs/Bugpoint.rst
    R llvm/docs/CommandGuide/bugpoint.rst
    M llvm/docs/CommandGuide/index.rst
    M llvm/docs/CommandGuide/llvm-extract.rst
    M llvm/docs/Passes.rst
    M llvm/docs/Reference.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Support/Unix/Process.inc
    M llvm/lib/Support/Windows/Process.inc
    M llvm/lib/Transforms/Utils/MetaRenamer.cpp
    R llvm/test/BugPoint/attr-crash.ll
    R llvm/test/BugPoint/compile-custom.ll
    R llvm/test/BugPoint/compile-custom.ll.py
    R llvm/test/BugPoint/crash-narrowfunctiontest.ll
    R llvm/test/BugPoint/func-attrs-keyval.ll
    R llvm/test/BugPoint/func-attrs.ll
    R llvm/test/BugPoint/invalid-debuginfo.ll
    R llvm/test/BugPoint/metadata.ll
    R llvm/test/BugPoint/named-md.ll
    R llvm/test/BugPoint/remove_arguments_test.ll
    R llvm/test/BugPoint/replace-funcs-with-null.ll
    R llvm/test/BugPoint/retain-crashing-metadata.ll
    R llvm/test/BugPoint/unsymbolized.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/lit.cfg.py
    R llvm/tools/bugpoint-passes/CMakeLists.txt
    R llvm/tools/bugpoint-passes/TestPasses.cpp
    R llvm/tools/bugpoint-passes/bugpoint.exports
    R llvm/tools/bugpoint/BugDriver.cpp
    R llvm/tools/bugpoint/BugDriver.h
    R llvm/tools/bugpoint/CMakeLists.txt
    R llvm/tools/bugpoint/CrashDebugger.cpp
    R llvm/tools/bugpoint/ExecutionDriver.cpp
    R llvm/tools/bugpoint/ExtractFunction.cpp
    R llvm/tools/bugpoint/FindBugs.cpp
    R llvm/tools/bugpoint/ListReducer.h
    R llvm/tools/bugpoint/Miscompilation.cpp
    R llvm/tools/bugpoint/OptimizerDriver.cpp
    R llvm/tools/bugpoint/ToolRunner.cpp
    R llvm/tools/bugpoint/ToolRunner.h
    R llvm/tools/bugpoint/bugpoint.cpp
    M llvm/tools/opt/optdriver.cpp
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    R llvm/utils/gn/secondary/llvm/tools/bugpoint-passes/BUILD.gn

  Log Message:
  -----------
  llvm: Delete bugpoint (#182320)

For crash reduction, I don't think it does anything that llvm-reduce
can't. Pass pipeline reduction also has a separate reduction script.
The main thing there isn't a replacement tool is the miscompilation
reducer, but I'm not sure that's actually functioned for years.

There are still some references to bugpoint in various comments
and pieces of documentation that don't all necessarily make sense
to replace or remove. In particular there are a few passes documented
as "only for bugpoint", but I've left those alone in case they are
useful for manual reductions.


  Commit: db5a570f0ed2c9270c35404c802e34b9917205a7
      https://github.com/llvm/llvm-project/commit/db5a570f0ed2c9270c35404c802e34b9917205a7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/rv32p-valid.s

  Log Message:
  -----------
  [RISCV] Make P imply Zba, Zbb, Zmmul, and Zicsr. (#183247)

Relevant spec PRs https://github.com/riscv/riscv-p-spec/pull/163 and
https://github.com/riscv/riscv-p-spec/pull/164


  Commit: 55ce4b7cc601b586dd365843a2021d662baea78d
      https://github.com/llvm/llvm-project/commit/55ce4b7cc601b586dd365843a2021d662baea78d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  Reapply "[ORC] Simplify WaitingOnGraph::Coalescer::remove." (#183231)

This reapplies 85354c6d8bc, which was reverted in d7347c0b81a due to bot
failures.

In this commit further changes are made to address the bot failure, and
general readability.

WaitingOnGraph::Coalescer::remove is renamed WaitingOnGraph::Coalescer::erase,
since its behavior is now similar to common container erase operations.

WaitingOnGraph::Coalescer::clear is provided to enable a fast reset of
Coalescer state.

SuperNodeBuilder::takeSuperNodes is updated to clear the Coalescer state before
returning the SuperNodes, ensuring that future calls to SuperNodeBuilder::add
do not trip the assert that caused the builder failures.


  Commit: 3bd7dc3d65d3a690721d9ec11d2af02f87323840
      https://github.com/llvm/llvm-project/commit/3bd7dc3d65d3a690721d9ec11d2af02f87323840
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
    M lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
    M lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
    M lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
    M lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.h
    M lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/unittests/Language/CPlusPlus/LibStdcppTupleTest.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp
    M lldb/unittests/TestingSupport/Symbol/ClangTestUtils.h

  Log Message:
  -----------
  [lldb][TypeSystem][NFC] Remove unused AccessType parameters to TypeSystemClang APIs (#183023)

In https://github.com/llvm/llvm-project/pull/182956 we stopped using the
access specifiers and unconditionally set all access to `AS_public`.
This patch is a follow-up cleanup to remove all the `AccessType`
parameters of the `TypeSystemClang` APIs (which since
https://github.com/llvm/llvm-project/pull/182956 are never used)


  Commit: 8a64dccbac96eb4d48c8fd7f145151e3786d61c2
      https://github.com/llvm/llvm-project/commit/8a64dccbac96eb4d48c8fd7f145151e3786d61c2
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c

  Log Message:
  -----------
  [CIR][AArch64] Add lowering + tests for predicated SVE svdup_x builtins (#182542)

This PR adds CIR lowering + tests for the predicated SVE `svdup` builtins
on AArch64. The corresponding ACLE intrinsics are documented at:
https://developer.arm.com/architectures/instruction-sets/intrinsics

This PR covers the merging-predicated variants with suffix `_x`, e.g.
`svdup_n_f32_x`. The corresponding LLVM intrinsics take an undef which
are merged into the result for lanes where the predicate is false.


  Commit: 0691eeebd1dbbad71f6fed793edd85267455d3e6
      https://github.com/llvm/llvm-project/commit/0691eeebd1dbbad71f6fed793edd85267455d3e6
  Author: ziereis <44057120+ziereis at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir

  Log Message:
  -----------
  [mlir][linalg] fix specialization of transposed matmul variants (#181387)

Currently all generics that represent `linalg.matmul_transpose_a/b`
variants will get specialized to a regular `linalg.matmul` without any
special indexing maps. This patch fixes this behavior to correctly emit
`linalg.matmul` with the correct indexing maps for the transposed
variants.


  Commit: 1eeb71214cc5fe81dd2f42dc93a1c18970ac6763
      https://github.com/llvm/llvm-project/commit/1eeb71214cc5fe81dd2f42dc93a1c18970ac6763
  Author: Rafał Rudnicki <rafal.rudnicki at intel.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [TableGen] fix unreachable code warning in *GenSubtargetInfo.inc files (#182477)

fix unreachable code warning in *GenSubtargetInfo.inc files


  Commit: 19e9bcba0bab9efe6f6d75ff5bce880b4c644783
      https://github.com/llvm/llvm-project/commit/19e9bcba0bab9efe6f6d75ff5bce880b4c644783
  Author: Mike Hommey <mh at glandium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/extract_symbols.py

  Log Message:
  -----------
  [Windows] Don't hide Type::getAs symbols (#182966)

Cc: @michalpaszkowski, @john-brawn-arm


  Commit: f2a10ab74ff7ab06b77977be450bec7120ee69b6
      https://github.com/llvm/llvm-project/commit/f2a10ab74ff7ab06b77977be450bec7120ee69b6
  Author: Mike Hommey <mh at glandium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/extract_symbols.py

  Log Message:
  -----------
  [Windows] Adjust exported symbols to filter out dumpColor and printPretty (#182964)

Like the dump symbols, these symbols are meant for debugging. This is
enough to get from slightly above 65536 exported symbols to slightly
under 65536 exported symbols.

Cc: @michalpaszkowski, @john-brawn-arm


  Commit: 4f4087edb1823d943ae9b5e4128e2a4e6ef983dd
      https://github.com/llvm/llvm-project/commit/4f4087edb1823d943ae9b5e4128e2a4e6ef983dd
  Author: Mike Hommey <mh at glandium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/extract_symbols.py

  Log Message:
  -----------
  [Windows] Adjust exported symbols to filter out profile symbols (#167985)

When building Clang for Windows with clang-cl with -fprofile-generate
and LLVM_EXPORT_SYMBOLS_FOR_PLUGINS, the build fails with
  lld-link: error: too many exported symbols (got 76137, max 65535)

Removing the symbols generated from the use of that flag removes about
13K symbols.


  Commit: 20859e26305158e76cde5fe48707ce3755378dfd
      https://github.com/llvm/llvm-project/commit/20859e26305158e76cde5fe48707ce3755378dfd
  Author: Anton Sidorenko <anton.sidorenko at mail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/test/Driver/baremetal.cpp

  Log Message:
  -----------
  [Clang][Driver] Move -T option after -L in BareMetal driver (#183055)

`-L` option affects linker script search paths when `-T` is specified. For lld
the order of `-L` and `-T` flags does not matter and paths provided with the
`-L` option will be used. E.g. for the command `ld.lld -T script -L dir`,
  `ld.lld` uses `dir` to find `script`. However, for GNU ld the order matters
  and only the paths provided before the `-T` option will be used.

This change reorders the flags in BareMetal driver to ensure compatibility with
both GNU ld and lld. It restores the behavior clang-20 and earlier drivers have
for RISC-V. (before merging RISCVToolchain.cpp to Baremetal.cpp). GCC (both
Linux and baremetal) and Clang Linux drivers do the same reordering.


  Commit: 2fc45baa425d22ab3f62d7143bbc0faf9149339e
      https://github.com/llvm/llvm-project/commit/2fc45baa425d22ab3f62d7143bbc0faf9149339e
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/MC/MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Set UseAtForSpecifier in initializeAtSpecifiers and default to false (#183253)

Set UseAtForSpecifier = true inside initializeAtSpecifiers() so that
all targets calling it automatically get the correct setting. Change
the default to false so targets that don't use @ for relocation
specifiers (RISC-V, Sparc, Mips, LoongArch, etc.) don't need to
explicitly opt out. In addition, discourage future targets from using
this @ , which has parsing ambiguity issues.

For ARM and AArch64, move UseAtForSpecifier = false to after the
initializeAtSpecifiers() call.


  Commit: bc76535cadfb3b767ab2dcbf14edd703466ec5a4
      https://github.com/llvm/llvm-project/commit/bc76535cadfb3b767ab2dcbf14edd703466ec5a4
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll

  Log Message:
  -----------
  [LV][NFC] Regen CHECK lines in LoopVectorize/AArch64/veclib-intrinsic-calls.ll (#183098)


  Commit: bded7e9e49e5cc4cbb73c54ac7b113a006f0534c
      https://github.com/llvm/llvm-project/commit/bded7e9e49e5cc4cbb73c54ac7b113a006f0534c
  Author: Shakil Ahmed <44522075+ahmedshakill at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/compute-known-bits-bitcast-assertion.ll

  Log Message:
  -----------
  [AArch64][GISel] Fix computeKnownBits through a COPY with different fixed-width vector types (#179123)

Fix an assertion in known bits through a COPY by making computeKnownBits
length-aware for different fixed width vectors. If the lengths of the
vectors are different all lanes are demanded.

Fixes #178242


  Commit: fb8c0e65bc14cae5fb90ce2225a1d20ab4dcbe0f
      https://github.com/llvm/llvm-project/commit/fb8c0e65bc14cae5fb90ce2225a1d20ab4dcbe0f
  Author: Amit Tiwari <amtiwari at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A clang/test/OpenMP/target_update_strided_ptr_variable_count_and_stride_messages.c
    A clang/test/OpenMP/target_update_strided_ptr_variable_count_messages.c
    A clang/test/OpenMP/target_update_strided_ptr_variable_stride_messages.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_multiple_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_multiple_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_partial_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_partial_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_variable_count_and_stride_messages.c
    A clang/test/OpenMP/target_update_variable_count_and_stride_messages.c

  Log Message:
  -----------
  [Clang][OpenMP][NFC] Diagnostics/parsing tests for non-contiguous updates. (#181780)

NFC PR for validating parsing checks for variable count/stride,
pointer-based array sections, struct member array sections,
multiple/partial array updates -- for non-contiguous updates


  Commit: a7cfc675ac7444bb557ef48fc1bcc788d42d1ac9
      https://github.com/llvm/llvm-project/commit/a7cfc675ac7444bb557ef48fc1bcc788d42d1ac9
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/test/SemaOpenCL/extension-version.cl

  Log Message:
  -----------
  [OpenCL] Set intel extensions minimum version to OpenCL 1.0 (#176854)

Motivation is similar to b12e070b9238. Following intel extensions are
changed:
cl_intel_required_subgroup_size
cl_intel_subgroups
cl_intel_subgroups_char
cl_intel_subgroups_long
cl_intel_subgroups_short
cl_intel_subgroup_buffer_prefetch
cl_intel_subgroup_local_block_io
cl_intel_device_side_avc_motion_estimation

Relates to https://github.com/KhronosGroup/OpenCL-CTS/pull/2376.


  Commit: 90edb2017545eacef21f4bd34c27a2233adf814d
      https://github.com/llvm/llvm-project/commit/90edb2017545eacef21f4bd34c27a2233adf814d
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Compile with -fdenormal-fp-math=dynamic (#183262)

This PR is extracted from #157633.
`-fdenormal-fp-math=dynamic` is required to defer denormal handling and
should be used for libclc library compilation.

Additionally, if the default ieee value is incompatible with the user
code's denormal-fp-math setting, this mismatch prevents libclc functions
from being inlined.


  Commit: 9088f38021d6f7f4c6852e63ea6988b87be81cc8
      https://github.com/llvm/llvm-project/commit/9088f38021d6f7f4c6852e63ea6988b87be81cc8
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/startup/linux/riscv/irelative.cpp

  Log Message:
  -----------
  [libc] Fix LIBC_INLINE build error in riscv/irelative.cpp (#183249)

LIBC_INLINE is defined in attributes.h, which was not included. Since
constexpr already implies inline, simply remove the LIBC_INLINE
qualifier from the static helper, matching the x86_64 and aarch64
irelative implementations.


  Commit: cec03ae147c691fb3a48a043053f0def9f4a5a9a
      https://github.com/llvm/llvm-project/commit/cec03ae147c691fb3a48a043053f0def9f4a5a9a
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  [llvm][release] Link to .jsonl signatures for Windows x86_64 and ARM64 (#183053)

Previously we linked to .sig files, which were created by the person who
built the release.

Now these are built in GitHub so they have .jsonl signature files
instead.


  Commit: b9cc1d7b8093fff0e8b6d077cb8a38241b1fa0d5
      https://github.com/llvm/llvm-project/commit/b9cc1d7b8093fff0e8b6d077cb8a38241b1fa0d5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp

  Log Message:
  -----------
  GlobalISel: Make CombinerInfo const (#183263)


  Commit: b830bcfde3bafb0db4e733a5f3f7913e2fcf6b22
      https://github.com/llvm/llvm-project/commit/b830bcfde3bafb0db4e733a5f3f7913e2fcf6b22
  Author: addmisol <218448340+addmisol at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sbfe.ll

  Log Message:
  -----------
  [AMDGPU]Fix compute num sign bits unsigned underflow (#182723)

Fixes #182677

The `BFE_I32` case in `ComputeNumSignBitsForTargetNode` was not masking
the width operand with `& 0x1f`, unlike other BFE operations in the same
  file. Since the hardware instruction only uses the low 5 bits of the
  width field, values >= 32 passed via `@llvm.amdgcn.sbfe.i32` caused
  unsigned integer underflow in the calculation:

      unsigned SignBits = 32 - Width->getZExtValue() + 1;

  When width > 33, this underflows, producing incorrect SignBits values.
  When width == 33, SignBits becomes 0, violating the expected return
  range of [1, BitWidth]. This led to assertion failures and
  miscompilation where subsequent BFE narrowing operations were
  incorrectly eliminated.

  This patch:
  - Masks the width value with `& 0x1f` to match hardware behavior
  - Handles width == 0 (after masking) by returning 32 sign bits
  - Adds regression tests for width values >= 32


  Commit: 5e30c4a5152dc20ebda38306c0dcf9bc52cb7528
      https://github.com/llvm/llvm-project/commit/5e30c4a5152dc20ebda38306c0dcf9bc52cb7528
  Author: Mike Hommey <mh at glandium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/test/Preprocessor/arm64e.c

  Log Message:
  -----------
  [clang] Define __PTRAUTH_INTRINSICS__ for arm64e-apple-* targets (#172944)

The macro is set by Xcode clang for the arm64e-apple-* targets, and
ifdefed in the macOS and iPhoneOS SDKs.


  Commit: efcf64e8986f0b5129bc48c175aeab0c89b41342
      https://github.com/llvm/llvm-project/commit/efcf64e8986f0b5129bc48c175aeab0c89b41342
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/LoongArch/lasx/vxi1-masks.ll
    M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll
    M llvm/test/CodeGen/PowerPC/pr25080.ll
    M llvm/test/CodeGen/X86/combine-or.ll
    M llvm/test/CodeGen/X86/vselect.ll

  Log Message:
  -----------
  [DAG] visitOR - attempt to fold (or buildvector(), buildvector()) -> buildvector() (#183032)

See if we can fold all elements of an OR of buildvectors: OR(-1,X) ->
-1, OR(0,X) -> X, etc.


  Commit: 22f9940d709247b2ea2e4d788974d5bd43c3dfba
      https://github.com/llvm/llvm-project/commit/22f9940d709247b2ea2e4d788974d5bd43c3dfba
  Author: Simone Pellegrini <simone.pellegrini at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
    M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
    M mlir/test/Conversion/GPUToSPIRV/wmma-ops-to-spirv-khr-coop-matrix.mlir
    M mlir/test/Conversion/VectorToGPU/vector-to-mma-ops.mlir

  Log Message:
  -----------
  [mlir][gpu] Support arith.truncf in subgroup MMA elementwise ops (#182499)

This commit adds support for arith.truncf in the supported list of
elementwise ops for subgroup MMA ops, and enables lowering to SPIR-V.


  Commit: ce952a224cbb51e7b081958e57899101324e4212
      https://github.com/llvm/llvm-project/commit/ce952a224cbb51e7b081958e57899101324e4212
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtins-reduction-math.c
    M clang/test/Sema/builtins-reduction-math.c

  Log Message:
  -----------
  [Clang] Add `__builtin_reduce_[in_order|assoc]_fadd` for floating-point reductions (#176160)

This adds `__builtin_reduce_[in_order|assoc]_fadd` to expose the
`llvm.vector.reduce.fadd.*` intrinsic directly in Clang, for the full
range of supported FP types.

Given a floating-point vector `vec` and a scalar floating-point value
`acc`:

- `__builtin_reduce_assoc_fadd(vec)` corresponds to an fast/associative
  reduction
  * i.e, the fadds can occur in any order
- `__builtin_reduce_in_order_fadd(vec, acc)` corresponds to an ordered
  redunction
  * i.e, the result is as-if an accumulator was initialized with `acc` 
    and each lane was added to it in-order, starting from lane 0


  Commit: bc91641a97b89ad3b1e246224e7dc88c9baf17f1
      https://github.com/llvm/llvm-project/commit/bc91641a97b89ad3b1e246224e7dc88c9baf17f1
  Author: Matt <MattPD at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/declare-reduction-intrinsic-op.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix crash in declare reduction with intrinsic operators (#182978)

genOMP for OpenMPDeclareReductionConstruct unconditionally extracts
ProcedureDesignator from OmpReductionIdentifier, but when the reduction
identifier is an intrinsic operator like `+`, the parser produces a
DefinedOperator instead. This causes a std::get crash.

Visit both variants of OmpReductionIdentifier to extract the reduction
name string, handling DefinedOperator (with IntrinsicOperator and
DefinedOpName sub-variants) alongside the existing ProcedureDesignator
path.

This fixes the ICE; the underlying lack of derived-type reduction
support (TODO in ReductionProcessor::getReductionInitValue) remains
a separate issue.

Co-authored-by: Matt P. Dziubinski <matt-p.dziubinski at hpe.com>


  Commit: 58f4da463e5b3cd3531cace17cc3f2d8d860964e
      https://github.com/llvm/llvm-project/commit/58f4da463e5b3cd3531cace17cc3f2d8d860964e
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/pow-1.ll

  Log Message:
  -----------
  [SimplifyLibCalls] Avoid simplifying pow(x, 2.0) -> x * x with math-errno. (#183099)

It came up in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123826 that
GCC was simplifying pow(x, 2.0) -> x * x, even when doing so caused
-fmath-errno to be ignored. This patch fixes a similar bug in LLVM.

For ConstantFolding folding powf expressions that may raise exceptions,
see #183102.


  Commit: 641c32e053f6d2ff127b7ad77cdab16c605fd808
      https://github.com/llvm/llvm-project/commit/641c32e053f6d2ff127b7ad77cdab16c605fd808
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopInterchange/phi-ordering.ll

  Log Message:
  -----------
  [LoopInterchange] Fix test phi-ordering.ll (NFC) (#181989)

I found that the test phi-ordering.ll is a bit fragile and can fail with
any irrelevant changes. Also this test is not consistent with the
following comment, which is at the top of the file:

```
;; Checks the order of the inner phi nodes does not cause havoc.
;; The inner loop has a reduction into c. The IV is not the first phi.
```

After examining the change history, I found that the original intent of
this test was effectively lost in
https://github.com/llvm/llvm-project/commit/c8bd6ea35e459169cbd401372e81168ed8482536.
A workaround was introduced later in
https://github.com/llvm/llvm-project/commit/eac34875109898ac01985f4afa937eec30c1c387
to preserve the test output, but this seems to have made the test more
complicated.

This patch updates the test so that its original intent is restored. The
change is close to a partial revert of
https://github.com/llvm/llvm-project/commit/c8bd6ea35e459169cbd401372e81168ed8482536.
Even though the feature for inner-only reductions has been removed, I
believe it is still better to keep the test as it is, otherwise the test
would be meaningless.


  Commit: d25b7f7bc301a91f2d936e555814d21155fe5416
      https://github.com/llvm/llvm-project/commit/d25b7f7bc301a91f2d936e555814d21155fe5416
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFastISel.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Add Register guard to ARMMaterializeFP. (#182559)

This does not directly fix any issue because the implementation
indirectly ensures the correct behaviour. However, all the other
"<Tgt>Materialize" functions (Int and FP across all targets, including
ARMMaterializeInt) have explicit Register guards so for peace of mind I
figured it's worth added them.


  Commit: db5ffb04ab0b5c4e193d2c31e635e69f42deaaaf
      https://github.com/llvm/llvm-project/commit/db5ffb04ab0b5c4e193d2c31e635e69f42deaaaf
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  [ORC] WaitingOnGraph perf: faster dependence propagation. (#183272)

This commit replaces the core dependence propagation algorithm in
WaitingOnGraph to avoid worst-case behavior in the common case where
dependence graphs are sparse. This algorithm showed up as the underlying
cause of the bug in https://github.com/llvm/llvm-project/issues/179611.

For each call to MaterializationResponsibility::notifyEmitted,
WaitingOnGraph would build the transitive closure of all SuperNodes
whose "waiting on" relationships were affected by the newly emitted
symbols, then propagate any remaining unemitted dependencies through
this transitive closure graph. This approach is simple, but pushes the
algorithm towards n^2 complexity even for sparse dependence graphs.

The new propagation algorithm:
1. Inverts the edge direction in the SymbolDependenceMap data structure:
SymbolDepMap[SN] now contains the set of SuperNodes that depend on SN,
rather than the set that SN depends upon.

2. Pushes dependencies through the SymbolDepMap iteratively until it
reaches a fixed point.

This updated algorithm converges much more quickly than the original for
the testcase reported in the issue, and for other cases tested so far.

No testcase yet, as this only affects performance. I've filed a
follow-up issue, https://github.com/llvm/llvm-project/issues/183251, to
track construction of performance testing infrastructure for
WaitingOnGraph.

Should fix https://github.com/llvm/llvm-project/issues/179611


  Commit: 678aaa75c7fac4bbda9e5d70f629e698657f5e3a
      https://github.com/llvm/llvm-project/commit/678aaa75c7fac4bbda9e5d70f629e698657f5e3a
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  [llvm][release] Note that some packages have 2 signature files (#183266)

For example in the latest release, there is:
LLVM-22.1.0-Linux-ARM64.tar.xz

Which has 2 signature files:
LLVM-22.1.0-Linux-ARM64.tar.xz.jsonl
LLVM-22.1.0-Linux-ARM64.tar.xz.sig

jsonl comes from the GitHub build and the sig is uploaded by the release
manager.


  Commit: 91d5e9ebed3c3db255fec84140fd9cc163aac1fb
      https://github.com/llvm/llvm-project/commit/91d5e9ebed3c3db255fec84140fd9cc163aac1fb
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenCLRuntime.cpp
    M clang/lib/CodeGen/CGOpenCLRuntime.h

  Log Message:
  -----------
  [CGOpenCLRuntime] Remove dead code (#183093)

This drops one getPointerType() overload which accepted a name, which is
no longer used since the opaque pointers migration. The fallback code
path always returns a plain pointer now.

Also drop all the virtual qualifiers. Nothing inherits from this class.
Any customization is implemented via TargetCodeGenInfo hooks in the
implementation.


  Commit: f55a5cf014d283d88b0caccb9f74260bdf3cd7d1
      https://github.com/llvm/llvm-project/commit/f55a5cf014d283d88b0caccb9f74260bdf3cd7d1
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
    M clang/test/OpenMP/cancel_codegen.cpp
    M clang/test/OpenMP/irbuilder_nested_openmp_parallel_empty.c
    M clang/test/OpenMP/irbuilder_nested_parallel_for.c
    M clang/test/OpenMP/nested_loop_codegen.cpp
    M clang/test/OpenMP/parallel_codegen.cpp
    M clang/test/OpenMP/taskgroup_codegen.cpp
    M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/test/Transforms/OpenMP/parallel_region_merging.ll
    M mlir/test/Target/LLVMIR/openmp-dist_schedule_with_wsloop.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M mlir/test/Target/LLVMIR/openmp-outline-infinite-loop.mlir
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-multiblock.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-byref.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir

  Log Message:
  -----------
  [OpenMP] Only generate call to __kmpc_global_thread_num when needed (#182669)

This patch is a small optimization to only generate a call to
__kmpc_global_thread_num if the result is actually used.


  Commit: d82d261a9ac687bf3a5bbdbd50e27d52143cb410
      https://github.com/llvm/llvm-project/commit/d82d261a9ac687bf3a5bbdbd50e27d52143cb410
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M orc-rt/include/orc-rt/ResourceManager.h
    M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
    M orc-rt/unittests/SessionTest.cpp
    M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp

  Log Message:
  -----------
  [orc-rt] Rename ResourceManager detach/shutdown. NFCI. (#183285)

These methods are called by the session in the event of a detach or
shutdown. The new names reflect their roles as event handlers.


  Commit: cfca635efc11e4de10d560810fd4837510953c05
      https://github.com/llvm/llvm-project/commit/cfca635efc11e4de10d560810fd4837510953c05
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fptosi-sat.ll
    M llvm/test/CodeGen/AArch64/sve-fptoui-sat.ll
    M llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/ARM/fptoui-sat-scalar.ll
    A llvm/test/CodeGen/Hexagon/fptoi.sat.ll
    M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
    M llvm/test/CodeGen/X86/fpclamptosat.ll
    M llvm/test/CodeGen/X86/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/X86/fptosi-sat-vector-128.ll
    M llvm/test/CodeGen/X86/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/X86/fptoui-sat-vector-128.ll

  Log Message:
  -----------
  [SelectionDAG] Fix fptoui.sat expansion using minnum/maxnum (#180178)

fptoui.sat can currently use a minnum/maxnum based expansion, which
relies on NaNs not being propagated. Specifically, it relies on
minnum(maxnum(NaN, 0), MAX) to return 0. However, if the input is sNaN,
then maxnum(sNaN, 0) is allowed to return qNaN, in which case the final
result will be MAX rather than 0.

This PR does the following changes:

* Support the fold for minimumnum/maximumnum, which guarantees that NaN
is not propagated even for sNaN, so it can use the old lowering. Test
this using Hexagon which has legal minimumnum but illegal minnum.
* For the minnum/maxnum case, remove the special unsigned case and
instead always insert the explicit NaN check. In that case the NaN
propagation semantics don't matter.
* This also means that we can support this expansion for
minimum/maximum.


  Commit: b91e8324da8dce7f681394eac560a6f0e2cf5fc5
      https://github.com/llvm/llvm-project/commit/b91e8324da8dce7f681394eac560a6f0e2cf5fc5
  Author: Ella Ma <alansnape3058 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/test/Analysis/z3-unarysymexpr.c

  Log Message:
  -----------
  [analyzer][tests][z3] Fixing the test case bug for testing converting boolean expression to integer (#183034)

* Fixing incorrect "REQUIRES" condition for Z3 introduced by #108900
* Fixing the test failure introduced by #168034
* Adding more comments about the fixes in #168034 for the tests
introduced in #158276


  Commit: 4cf1a616016f284655dc5d13d870c5047bf5f4f1
      https://github.com/llvm/llvm-project/commit/4cf1a616016f284655dc5d13d870c5047bf5f4f1
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/tools/driver/driver.cpp
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [NFC] Add comments for PR “[LLVM][CLANG] Update signal‑handling behavior to comply with POSIX”  (#183206)

This PR adds comments to address post‑commit review feedback on commit
15488a7f78ce7b9ae3c06b031134e5cb339b335c.


  Commit: 668870c721fb498b7011e52c241c6416b6afc70d
      https://github.com/llvm/llvm-project/commit/668870c721fb498b7011e52c241c6416b6afc70d
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Host/windows/PseudoConsole.cpp

  Log Message:
  -----------
  [lldb][windows] add a 50ms sleep when closing the ConPTY (#183280)

Since https://github.com/llvm/llvm-project/pull/182302 was merged,
`x86-64-gp-write.test` is flaky.

This patch reintroduces the 50ms sleep that was removed in
https://github.com/llvm/llvm-project/pull/182302 to fix the flakyness
while we investigate it.


  Commit: 9d55f140989be5f214c8d70ae22283174ac1854a
      https://github.com/llvm/llvm-project/commit/9d55f140989be5f214c8d70ae22283174ac1854a
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    R llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/disabled-on-amd.ll

  Log Message:
  -----------
  [SPIRV][AMD] Reenable `SPV_KHR_float_control2` for AMD flavored SPIRV (#182873)

`SPV_KHR_float_controls2` is enabled in the translator after
https://github.com/khronosgroup/spirv-llvm-translator/pull/3475.

This extension was disabled since we were not able to translate it back.

This patch reverts #169659.


  Commit: 90144c2df0d9863e395acab041f6301327944eb2
      https://github.com/llvm/llvm-project/commit/90144c2df0d9863e395acab041f6301327944eb2
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-extadd.ll

  Log Message:
  -----------
  [WebAssembly] optimize ext + shuffle + add into addext (#182849)

cc https://github.com/llvm/llvm-project/issues/179143

This adds a second pattern: we already recognize "shuffle + extend +
add" as `addext`, this adds another pattern for "extend + shuffle +
add", which can come up when programs are optimized.


  Commit: 717a9ab442a44a595d7bb422e78721e8f65ae8a9
      https://github.com/llvm/llvm-project/commit/717a9ab442a44a595d7bb422e78721e8f65ae8a9
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    A llvm/test/Transforms/InstSimplify/structured-gep.ll

  Log Message:
  -----------
  [InstSimplify] Add support for llvm.structured.gep (#182874)

Similar to GEP, the SGEP instruction with no indices can be simplified
by directly using the base pointer.


  Commit: ee34eb6edccdebc2a752ffecdde5faae6b0d5593
      https://github.com/llvm/llvm-project/commit/ee34eb6edccdebc2a752ffecdde5faae6b0d5593
  Author: Kirill Vedernikov <kvedernikov at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/nvvm-mma-sp-kind.mlir
    M mlir/test/Dialect/LLVMIR/nvvm-mma-sp-ordered.mlir
    M mlir/test/Dialect/LLVMIR/nvvm-mma-sp.mlir
    A mlir/test/Target/LLVMIR/nvvm/mma-blockscale.mlir
    A mlir/test/Target/LLVMIR/nvvm/mma-sp-kind.mlir
    A mlir/test/Target/LLVMIR/nvvm/mma-sp-ordered.mlir
    A mlir/test/Target/LLVMIR/nvvm/mma-sp.mlir
    A mlir/test/Target/LLVMIR/nvvm/mma-sparse-blockscale.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Fix kFactor for fp8/fp6/fp4 types in MmaSpOp verifier. Improve mma tests. (#183133)

Fix an incorrect kFactor value for e4m3/e5m2, e3m2/e2m3, e2m1 types in
MmaSpOp::verify(). The kFactor for these types was set to 32 but should
be 16.

kFactor is used to compute the expected number of operand A/B register
fragments. With kFactor=32 (wrong) and the only allowed shape m16n8k64,
the fragment count was incorrect. With kFactor=16 (correct), it matches
the PTX ISA definition for mma.sp with fp8/fp6/fp4 A/B operands.

PTX ISA reference:
[https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#warp-level-matrix-instructions-sparse-mma](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#warp-level-matrix-instructions-sparse-mma)

Also improve existing MLIR dialect tests for nvvm.mma.sp.sync and add
new mlir-translate tests covering mma, mma.sp, and blockscale variants.


  Commit: 87d9dad579b9d947f6181d1736fb11e8f683e246
      https://github.com/llvm/llvm-project/commit/87d9dad579b9d947f6181d1736fb11e8f683e246
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-vcvt.ll

  Log Message:
  -----------
  [NFC] Address unresolved comments on #172837 (#183284)


  Commit: c1b2477a556b96bca5cf504f39f3cc39af32ebd7
      https://github.com/llvm/llvm-project/commit/c1b2477a556b96bca5cf504f39f3cc39af32ebd7
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [LAA] NFC: Rename mulSCEVOverflow to mulSCEVNoOverflow (#183096)

The function returns nullptr when the multiplication WOULD overflow,
matching the semantics of its sibling addSCEVNoOverflow. The old name
reads as if the function multiplies with overflow, which is the opposite
of what it does.


  Commit: 3e1545b741023f3213554a68b24d53166505ea94
      https://github.com/llvm/llvm-project/commit/3e1545b741023f3213554a68b24d53166505ea94
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    A llvm/test/Transforms/EarlyCSE/target-memory.ll

  Log Message:
  -----------
  [LLVM] Refine MemoryEffect handling for target-specific intrinsics (#155590)

This patch improves memory alias analysis between calls if they change
inaccessible or target memory locations. The  results is
computed by comparing each location ModRefInfo between the calls.


  Commit: 3f6648422c65da120ebd12474cfc2cf7d3f6b655
      https://github.com/llvm/llvm-project/commit/3f6648422c65da120ebd12474cfc2cf7d3f6b655
  Author: Twice <twice at apache.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/ExtensibleDialect.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/ExtensibleDialect.cpp
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py
    M mlir/test/python/dialects/irdl.py

  Log Message:
  -----------
  [MLIR][Python] Fix typeid support for DynamicType and DynamicAttr (#183076)

Previously, we were using the static `typeid` of `DynamicType` for
checks, which is incorrect. We should instead check against the `typeid`
of `DynamicTypeDefinition` (which is a subclass of `SelfOwningTypeID`),
and register it via `register_type_caster` so that Python-defined types
can use `maybe_downcast`. (The attribute part is same.)


  Commit: 6a28a663fb3a473ed256ff119dad9d76ff5dad47
      https://github.com/llvm/llvm-project/commit/6a28a663fb3a473ed256ff119dad9d76ff5dad47
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/test/CIR/CodeGen/atomic.c

  Log Message:
  -----------
  [CIR] Implement compare exchange with dynamic failure ordering (#183110)

In #156253, we implemented the rest of this feature, with compile time
constant failure ordering. This patch follows the incubators direction
(with a little cleanup based on other cleanup that we do) to replace
this situation with a 'switch'.


  Commit: 4c8ad96a4ad34a6c5b025c83793d6e18971dff77
      https://github.com/llvm/llvm-project/commit/4c8ad96a4ad34a6c5b025c83793d6e18971dff77
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather-errors-1.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather-errors-2.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather.ll

  Log Message:
  -----------
  [SPIRV] Implement Gather and GatherCmp intrinsics (#182578)

This commit implements the intrinsics needed to represent the texture
Gather* instructions in HLSL.

Assisted-by: Gemini


  Commit: b7c056a31cf84022c3d9cd34d66fed5db1ae22bc
      https://github.com/llvm/llvm-project/commit/b7c056a31cf84022c3d9cd34d66fed5db1ae22bc
  Author: Jakob Widauer <jakob.widauer at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-delete.cpp

  Log Message:
  -----------
  [clang-tidy] Fix erroneous warning to make deleted function public (#182577)

This PR fixes #54276 and fixes #135249 by only matching private deleted
functions with a public overload or special member functions.


  Commit: ab360b1e7ef2bcc1c98443427da3c13e98e1331b
      https://github.com/llvm/llvm-project/commit/ab360b1e7ef2bcc1c98443427da3c13e98e1331b
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    R llvm/test/Transforms/LoopVectorize/scalable-predication.ll

  Log Message:
  -----------
  [LLVM][TTI] Remove the isVScaleKnownToBeAPowerOfTwo hook. (#183292)

After https://github.com/llvm/llvm-project/pull/183080 this is no longer
a configurable property.

NOTE: No test changes expected beyond
llvm/test/Transforms/LoopVectorize/scalable-predication.ll which has
been removed because it only existed to verfiy the now unsupported
functionality.


  Commit: bf4705c05b6ad632c8ab7dac58440a8f5021cfb8
      https://github.com/llvm/llvm-project/commit/bf4705c05b6ad632c8ab7dac58440a8f5021cfb8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/predicated-single-exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll

  Log Message:
  -----------
  [VPlan] Supported conditionally executed single early exits. (#182395)

Add support for a single early exit that is executed conditionally. To
make sure the mask from any non-exiting control flow is combined with
the early exit condition.

To do so, introduce a MaskedCond VPInstruction, which is inserted as
user of the early-exit condition, at the point of the early-exit branch.
The VPInstruction will get masked automatically if needed by the
predicator, ensuring that we properly account for it when checking
whether the early exit has been taken.

Note that this does not allow for instructions that require predication
after the early exit. This requires additional work in progress:
https://github.com/llvm/llvm-project/pull/172454

As an alternative to MaskedCond, we could also predicate before handling
early exiting blocks: https://github.com/llvm/llvm-project/pull/181830

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


  Commit: 5aa1c38becb816970f5c868730d56f17c70e7428
      https://github.com/llvm/llvm-project/commit/5aa1c38becb816970f5c868730d56f17c70e7428
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td

  Log Message:
  -----------
  [NFCI] Make all SI_KILL* convergent (#183100)

Add convergent property to SI_KILL*TERMINATOR. Now all SI_KILL* are
convergent. SI_KILL*TERMINATOR were already terminators so they could
not be sunk by machine-sink. Thus, this is probably a NFC.

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 351ae0ca550c791b0c504dfb7dcb4fd08480d98b
      https://github.com/llvm/llvm-project/commit/351ae0ca550c791b0c504dfb7dcb4fd08480d98b
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/cmake/modules/AddMLIR.cmake
    M mlir/lib/ExecutionEngine/CMakeLists.txt
    M mlir/lib/ExecutionEngine/SparseTensor/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][CMake] Fix runtime libraries with PCH (#182850)

Some MLIR libraries are intended to be dlopen-ed, but currently all MLIR
libraries link against LLVMSupport. After the recent PCH introduction,
this causes these libraries to implicitly use the LLVMSupport PCH, which
results in the definition of llvm::*ABIBreakingChecks, which results in
a ODR violation when loaded with dlopen.

Conceptually, libraries that are designed to be dlopen-ed should not
simply link against LLVM libraries in non-dylib builds for this reason.
(This apparently was a problem before with mlir_apfloat_wrappers.)

To fix builds, remove LLVMSupport from runtime libraries that don't need
it and, as a workaround, disable PCH for libraries that are in a weird
state (use LLVMSupport but happen to not export symbols currently).


  Commit: 368b884869651b69b14b836b25206aa62b501496
      https://github.com/llvm/llvm-project/commit/368b884869651b69b14b836b25206aa62b501496
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M openmp/runtime/test/parallel/bug63197.c

  Log Message:
  -----------
  [openmp] Fix bug63197.c test with 3 cores (#183269)

This test assumes that the number of available threads is not 3,
otherwise `#pragma omp parallel` and `#pragma omp parallel
num_thread(3)` are naturally going to do the same thing.

Instead use `omp_get_max_threads() - 1` as the number of threads in the
initial `omp parallel num_thread(N)` and then check that the number of
threads does not match the value in the later `omp parallel`.


  Commit: 92ac9aec7ea864b31a9669053b80b13139abc3e5
      https://github.com/llvm/llvm-project/commit/92ac9aec7ea864b31a9669053b80b13139abc3e5
  Author: Emilio Cota <ecg at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  Fix Bazel build for 9d5574d (#183312)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: cb9f3eeab67be92a132e7af3218a00a7f1424d90
      https://github.com/llvm/llvm-project/commit/cb9f3eeab67be92a132e7af3218a00a7f1424d90
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_relaxed_printf_string_address_space/non-constant-printf.ll

  Log Message:
  -----------
  [SPIRV] Enable SPV_EXT_relaxed_printf_string_address_space by default for Intel (#183103)

It's easy to hit the address space limitation when using printf locally,
so just enable the extension by default for Intel.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: e77f11c27083113265d8cf7f7db08030e93dd7be
      https://github.com/llvm/llvm-project/commit/e77f11c27083113265d8cf7f7db08030e93dd7be
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/TargetRegisterInfo.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:
  -----------
  [NFC][RegisterInfoEmitter] Add target name prefix for a few variables (#183074)

Add target name prefix for a few static global variables in the
generated code. Also rework the TargetRegisterInfo constructor a bit to
use a ArrayRef for array of register classes and rename a few
constructor arguments to match the member names they initialize.


  Commit: 3d251288df0642762d1bd86efa05e190005c2539
      https://github.com/llvm/llvm-project/commit/3d251288df0642762d1bd86efa05e190005c2539
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/docs/index.rst
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm.h
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Add arm support (#180674)

This is LLDB version of
https://cgit.freebsd.org/ports/tree/devel/gdb/files/kgdb/arm-fbsd-kern.c.
This enables selecting arm and reading registers from PCB structure on
core dump and live kernel debugging while trapframe unwinding support
will be implemented in future. Test files using core dump from arm will
be implemented once other kernel debugging improvements are done.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 787ba2426148ff0fa0c0253f6e4cc11e5cfe8361
      https://github.com/llvm/llvm-project/commit/787ba2426148ff0fa0c0253f6e4cc11e5cfe8361
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp

  Log Message:
  -----------
  [clang] create local instantiation scope for matching template template parameters (#183219)

This fixes a bug where a partial substitution from the enclosing scope
is used to prepopulate an unrelated template argument deduction.

Fixes #181166


  Commit: 5eb307e299c76e2520174acf45ea3a3d320a9509
      https://github.com/llvm/llvm-project/commit/5eb307e299c76e2520174acf45ea3a3d320a9509
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/lib/AST/Decl.cpp

  Log Message:
  -----------
  [clang][TypePrinter][NFC] Extract logic that handles AnonymousTagNameStyle::SourceLocation into helper function (#183304)

In https://github.com/llvm/llvm-project/pull/168533 we're adding a new
`AnonymousTagMode` and will be handled in `printAnonymousTagDecl`.

This patch extracts the logic that handles
`AnonymousTagNameStyle::SourceLocation` into a helper function to make
`printAnonymousTagDecl` easier to follow.

Drive-by changes:
* While copying the code into the helper I changed it to use
early-return style.


  Commit: 19128bf890da71b9654b8e68cd36fe7283061d86
      https://github.com/llvm/llvm-project/commit/19128bf890da71b9654b8e68cd36fe7283061d86
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [bazel][libc] Add some deps for layering_check (#183235)

This adds a whole bunch of deps to get things _mostly_ building w/
`layering_check` enabled. It does not yet enable `layering_check`.

I used some tools to add deps to all these targets that break when
enabling the layering check feature, and a few things were added in
between when I ran the script and where trunk is at now. Since this is a
large change, I plan to do a second (and possibly third) pass later to
catch those new changes, at which point it would be safer to actually
enable `layering_check` for this package.


  Commit: 8d2d8be58b8d599e3a2164041639ede33acab327
      https://github.com/llvm/llvm-project/commit/8d2d8be58b8d599e3a2164041639ede33acab327
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/MDBuilder.h
    M llvm/lib/IR/MDBuilder.cpp

  Log Message:
  -----------
  [profcheck] Expose likely/unlikely weights as constants in MDBuilder (#183252)

Define `kLikelyBranchWeight` and `kUnlikelyBranchWeight` as static
constexpr members in MDBuilder.h and use them in
createLikelyBranchWeights and createUnlikelyBranchWeights. This makes
the weights used for likely/unlikely branches more discoverable and
reusable.

Co-authored-by: Jin Huang <jingold at google.com>


  Commit: 7d492dbfdc68d7768ac7adba5228cabbc374b0c0
      https://github.com/llvm/llvm-project/commit/7d492dbfdc68d7768ac7adba5228cabbc374b0c0
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [bazel] Fix build format (#183322)


  Commit: e199191708d9ca7eb291d998e1569b3e077c863d
      https://github.com/llvm/llvm-project/commit/e199191708d9ca7eb291d998e1569b3e077c863d
  Author: Arjun Bhamra <33864884+abhamra at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/lib/Dialect/Tosa/TestAvailability.cpp

  Log Message:
  -----------
  [mlir][tosa] Converted TosaAvailability pass to ModuleOp from FuncOp, fixes crash in threaded pass manager (#183063)

The `TosaAvailability` pass originally worked on a per function basis
and was automatically threaded, however it used llvm::outs() which
involves the thread-unsafe `raw_ostream`.

To fix this, we convert the pass into a pass over `ModuleOp` instead of
`FuncOp`s, and iterate sequentially over all functions instead. This
removes all threading and we no longer require `-mlir-disable-threading`
which is mentioned in TosaAvailability's `availability.mlir` test.

Closes #182255.


  Commit: e044af858d810120dfb6ab92ea7afd05fd0db11c
      https://github.com/llvm/llvm-project/commit/e044af858d810120dfb6ab92ea7afd05fd0db11c
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A llvm/include/llvm/IR/pch.h
    M llvm/lib/IR/CMakeLists.txt

  Log Message:
  -----------
  [CMake][IR] Add PCH (#183303)

Add PCH with most-used and expensive headers from llvm/IR.


  Commit: 219b5a0de468c16e2ee5bf035a2c4ce73161b858
      https://github.com/llvm/llvm-project/commit/219b5a0de468c16e2ee5bf035a2c4ce73161b858
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  build: alter condition for adding `_DEBUG` CPP macro (#183120)

Unlike many other platforms, Microsoft does not maintain ABI across
debug and release binaries. When building LLVM in release+asserts, the
injection of `_DEBUG` which controls the behaviour of `assert` as per
the C specification, also alters the behaviour of the C/C++ runtime's
internal assertions and relies on debug only symbols. As such, the
`_DEBUG` macro handling is not _MSVC_ specific but rather MS STL and
UCRT specific. Adjust the build condition from `MSVC` to `WIN32` to
indicate that this is a Windows-ism. Note that `MINGW` is the proper way
to check for MinGW, so that should not be impacted by this change.
Making this more precise permits the use of `clang` and `clang++` to
build LLVM for Windows.


  Commit: 333ef64e384f4883cbaa9a74fefef2424c3034ae
      https://github.com/llvm/llvm-project/commit/333ef64e384f4883cbaa9a74fefef2424c3034ae
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-cmp.ll

  Log Message:
  -----------
  [RISCV] Remove unnecessary And before seteq/ne in some cases. (#183221)

Fold (and X, Mask) ==/!= C -> X ==/!= sext(C, countr_one(Mask))if the
Mask is only clearing redundant sign bits.

The AND may have come from type legalization of a narrower setcc.
Type legalization will check computeNumSignBits before inserting
the AND, but sometimes the sign bits don't appear until after
op legalization. In the motivating examples, the inputs isn't known
to be sign extended until EXTRACT_VECTOR_ELT is converted to vmv.x.s.

Spotted in the before code from #182684.


  Commit: 118f64ad20d998ee1b1ea76dcf38c71553a3aaa7
      https://github.com/llvm/llvm-project/commit/118f64ad20d998ee1b1ea76dcf38c71553a3aaa7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
    M llvm/test/CodeGen/RISCV/rvp-unaligned-load-store.ll

  Log Message:
  -----------
  [RISCV] Remove -riscv-enable-p-ext-simd-codegen (#183156)

All known crashes have been fixed.

We do still need to work out how fixed length vectors are handled when V
and P are both enabled, but I don't think this option is the solution
for that.


  Commit: 305a8fd091047d97fe5855403fc30102f4ae8567
      https://github.com/llvm/llvm-project/commit/305a8fd091047d97fe5855403fc30102f4ae8567
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ASTContext.cpp
    A clang/test/SemaTemplate/GH183075.cpp

  Log Message:
  -----------
  [clang] allow canonicalizing assumed template names (#183222)

Assumed template names are part of error recovery and encode just a
declaration name, making them always canonical. This patch allows them
to be canonicalized, which is trivial.

Fixes #183075


  Commit: dc977924608276e4360b943a65c465b5afdacade
      https://github.com/llvm/llvm-project/commit/dc977924608276e4360b943a65c465b5afdacade
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libcxx/utils/ci/lnt/run-benchmarks

  Log Message:
  -----------
  [libc++] Use verbose output when a LNT benchmark fails


  Commit: f5f07a81798061eb7b2bca4ec40bd2098edaf515
      https://github.com/llvm/llvm-project/commit/f5f07a81798061eb7b2bca4ec40bd2098edaf515
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/test/Analysis/DataFlow/test-liveness-analysis.mlir
    M mlir/test/lib/Analysis/DataFlow/TestLivenessAnalysis.cpp

  Log Message:
  -----------
  [mlir][Analysis] Print all blocks in `-test-liveness-analysis` (#183308)

Improve the output of the test pass: print liveness for block arguments
from all blocks.


  Commit: 1e676e7edb7a8eeea1960ac526b3789b46ded3bc
      https://github.com/llvm/llvm-project/commit/1e676e7edb7a8eeea1960ac526b3789b46ded3bc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/unittests/CodeGen/SelectionDAGNodeConstructionTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
    M llvm/unittests/Target/X86/X86SelectionDAGTest.cpp

  Log Message:
  -----------
  [SelectionDAG] Use virtual registers instead of arbitrary physical registers in unit tests. NFC (#183205)

These tests use constants in the physical register space. These will
correspond to different registers on different targets and aren't
stable.

Using virtual registers makes more sense here. This will print in a
coherent way if you anyone were to dump the DAG created by these tests.


  Commit: 9d7c786f330dda13716eb2a8ae041afcce66036c
      https://github.com/llvm/llvm-project/commit/9d7c786f330dda13716eb2a8ae041afcce66036c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [X86] Add vector demanded elts pow2 test for #183270 (#183327)


  Commit: 6d2a2e62b4cfad01ae7e246361162f0d25e414a8
      https://github.com/llvm/llvm-project/commit/6d2a2e62b4cfad01ae7e246361162f0d25e414a8
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSpacemiT.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvabd.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Make ElementsDependOn opt-in instead of opt-out. NFCI (#181601)

RISCVVectorPeephole and RISCVVLOptimizer use the ElementsDependOn field
to know if it's safe to change the VL of a vector instruction.

By default instructions are EltDepsNone, i.e.
RISCVVectorPeephole::tryReduceVL will reduce its VL by default, but we
might forget to mark unsafe instructions in newer extensions. This patch
changes the default to EltDepsVLMask and instead explicitly marks any
instructions which want to have their VL reduced.

There is an assert in RISCVVLOptimizer::isCandidate that ensures that
all previously isSupported instructions are still marked correctly.


  Commit: c221e2a4e75721c101512f824d327faf500a3b1c
      https://github.com/llvm/llvm-project/commit/c221e2a4e75721c101512f824d327faf500a3b1c
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    A llvm/test/CodeGen/Hexagon/loop-idiom/pmpy-trunc.ll

  Log Message:
  -----------
  [Hexagon] Handle trunc to i1 in matchRightShift (#174737)

Fix of test regression seen when working on
https://github.com/llvm/llvm-project/issues/172888

this will handle "trunc(x) to i1" as "icmp_ne(and(x,1),0)"
updates matchRightShift to match this pattern and promoteTo to map the
trunc to "icmp_ne(and(x,1),0)"


  Commit: 5e5c4acd4e2b039a352ba0ddd34e1da0c8bf6876
      https://github.com/llvm/llvm-project/commit/5e5c4acd4e2b039a352ba0ddd34e1da0c8bf6876
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Introduce 'omp.iterators' for OpenMP iterator modifiers (#182218)

`omp.iterator` provides information of induction variables and iterator
range in OpenMP iterator modifier.

Example:
```
  %it = omp.iterator(%i0: index, %i1: index) =
        (%lb0 to %ub0 step %st0,
         %lb1 to %ub1 step %st1) {
    omp.yield(%i0, %i1 : index, index)
  } -> !omp.iterated<!llvm.struct<(!llvm.ptr, i64)>>
```

Here's how we can use the omp.iterater to generate multi-dimensional
loop in llvm ir:
```
  // Induction variables can be translated from the block arguments
  // in omp.iterator.
  // lbs, ubs, and steps is encoded in omp.iterator
  for (int i0 = lbs[0]; i0 < ubs[0]; i0 += steps[0]) {
      for (int i0 = lbs[1]; i1 < ubs[1]; i1 += steps[1]) {
          // the result of iterated is <ptr, i64> from the example
          iterated = omp.iterators(i, j);
      }
  }
```

1/3 in stack for implementing affinity clause with iterator modifier
1/3 #182218
2/3 #182222
3/3 #182223


  Commit: 4fec4df12a579600e5cc756d3ef200b94351b26b
      https://github.com/llvm/llvm-project/commit/4fec4df12a579600e5cc756d3ef200b94351b26b
  Author: Nathiyaa Sengodan <133644025+Nathiyaa-Sengodan at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/intrinsic-distributive.ll

  Log Message:
  -----------
  [InstCombine] Fold min/max of two subtracts with common RHS (#183240)

Fold: minmax(sub X, Z , sub Y, Z) -> sub minmax(X, Y), Z

When both sub instructions have no-wrap flags and share the same RHS
operand, we can fold:

  smin (sub nsw X, Z), (sub nsw Y, Z) -> sub nsw (smin X, Y), Z
  smax (sub nsw X, Z), (sub nsw Y, Z) -> sub nsw (smax X, Y), Z
  umin (sub nuw X, Z), (sub nuw Y, Z) -> sub nuw (umin X, Y), Z
  umax (sub nuw X, Z), (sub nuw Y, Z) -> sub nuw (umax X, Y), Z

This is valid because subtraction by a common value preserves relative
ordering when no signed/unsigned overflow occurs.

Proof: https://alive2.llvm.org/ce/z/n9gwj2  
Closes https://github.com/llvm/llvm-project/issues/167059


  Commit: 4d70d8787f98c99894c4abc5434bdd694447d83d
      https://github.com/llvm/llvm-project/commit/4d70d8787f98c99894c4abc5434bdd694447d83d
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/atan2l.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/atan2l_test.cpp

  Log Message:
  -----------
  [libc] Add atan2l implementation fallback to atan2f128. (#182587)

Add implementation for `atan2l` that falls back to `atan2f128` if
float128 support is available.

We do this for now in lieu of 80-bit-specific implementation. Going
forward, we should be choosing 64-bit, 80-bit, or 128-bit specific
implementation based on the specific "long double"
implementation. Also, once llvm-libc will have its own software
implementation of float128, depending on host type presence
would not be needed.

`atan2l` is one of the remaining dependencies needed for building libc++
against llvm-libc (it's used in `<complex>` header).


  Commit: 1b1840dd13cd89f9816e264e9ae0379d32e15078
      https://github.com/llvm/llvm-project/commit/1b1840dd13cd89f9816e264e9ae0379d32e15078
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/NestedNameSpecifierBase.h
    M clang/lib/AST/NestedNameSpecifier.cpp

  Log Message:
  -----------
  [clang] [NFC] Improve move-assign and move-constructor for NestedNameSpecifierLocBuilder (#180484)

This avoids a deep copy of the manually managed underlying Buffer.

This is a follow-up to #180482.


  Commit: ce18f76dc1c0b3c70e5a0d264c9dbce77b5d9210
      https://github.com/llvm/llvm-project/commit/ce18f76dc1c0b3c70e5a0d264c9dbce77b5d9210
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Fix normalization of TUSummary JSON representation and strengthen round-trip tests (#183241)


  Commit: 0ac8e41ee1985ac7c5a369b8baa7edb15877c004
      https://github.com/llvm/llvm-project/commit/0ac8e41ee1985ac7c5a369b8baa7edb15877c004
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/test/Lower/host-associated-globals.f90
    M flang/test/Lower/identical-block-merge-disable.f90
    M flang/test/Lower/implicit-call-mismatch.f90
    M flang/test/Lower/implicit-interface.f90
    M flang/test/Lower/integer-operations.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 21) (#183224)

Tests converted from test/Lower: host-associated-globals.f90,
identical-block-merge-disable.f90, implicit-call-mismatch.f90,
implicit-interface.f90, integer-operations.f90


  Commit: 6874e945fe9d57d49c9c0902ffeeb8ffe03033a3
      https://github.com/llvm/llvm-project/commit/6874e945fe9d57d49c9c0902ffeeb8ffe03033a3
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
    A mlir/test/Dialect/Tosa/tosa-infer-shapes-fold-shape-expressions.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Enhance TosaInferShapes pass for simple shape inference (#178418)

This commit enhances the TosaInferShapes pass with two new options:
- fold-shape-expressions
- convert-function-boundaries

The "fold-shape-expressions" option enables greedily folding the newly
added TOSA shape operations when possible. Folding these operations
directly within TosaInferShapes is useful since it allows shapes of
later operations to be inferred in a single pass.

The "convert-function-boundaries" updates the return types of a function
to the newly inferred output shapes. This avoids the need for additional
tensor.cast operations at function boundaries. This option is
particularly useful when wanting to resolve a dynamic function to fully
static.

When both of these options are used in conjunction with the
"tosa-input-shapes" pass option, it's possible to resolve a dynamic
function to static in a single pass.

Note: This PR is split into two commits.
[68888db](https://github.com/llvm/llvm-project/commit/68888dbb1e70cc3f4383ccc2bab88f5325c347d6)
is a simple refactor and consists of no logic changes.
[db9a6a3](https://github.com/llvm/llvm-project/commit/db9a6a323afbd8cfb3b7f90b2cb172b68f8bcfdf)
includes the changes for shape inference.


  Commit: 1053047a4be7d1fece3adaf5e7597f838058c947
      https://github.com/llvm/llvm-project/commit/1053047a4be7d1fece3adaf5e7597f838058c947
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
    M llvm/test/Transforms/SandboxVectorizer/cross_bbs.ll
    M llvm/test/Transforms/SandboxVectorizer/pack.ll
    M llvm/test/Transforms/SandboxVectorizer/regions-from-metadata.ll
    M llvm/test/Transforms/SandboxVectorizer/repeated_instrs.ll
    M llvm/test/Transforms/SandboxVectorizer/scheduler.ll
    M llvm/test/Transforms/SandboxVectorizer/special_opcodes.ll
    M llvm/test/Transforms/SandboxVectorizer/stop_at.ll
    M llvm/test/Transforms/SandboxVectorizer/stop_bndl.ll
    M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll

  Log Message:
  -----------
  [SandboxVec][NFC] Update test checks (#183216)

Many of the tests were written before we had region metadata, so they
are missing the metadata checks. This patch fixes it. I just reran
update_test_checks.


  Commit: a59b4fca866a4a913d11a45358e096cc40d7d016
      https://github.com/llvm/llvm-project/commit/a59b4fca866a4a913d11a45358e096cc40d7d016
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir

  Log Message:
  -----------
  [RISCV] Replace whitelist with elementsDependOnVL in RISCVVLOptimizer. NFC (#181619)

Currently we have a whitelist of pseudos which can have their VL reduced
safely.

We want to eventually replace RISCVVectorPeephole::tryToReduceVL with
RISCVVLOptimizer, but the former doesn't use a whitelist and instead
checks for the elementsDependOn TSFlag.

This moves RISCVVLOptimizer to use the same TSFlag instead of using a
whitelist since it handles more pseudos, e.g. Zvabd.

However on its own this patch is NFC since we still need to handle the
operand info. A test for vabs.v was added to show how it still doesn't
get reduced.

vmv.s.x/vfmv.s.x and stores have been excluded to match the previous
behaviour of isSupportedInstr.

Stacked on #181601, but not included in this PR.


  Commit: 31dacdc1f5d486da6ef6d8b2f7e3b6126d92c9ff
      https://github.com/llvm/llvm-project/commit/31dacdc1f5d486da6ef6d8b2f7e3b6126d92c9ff
  Author: Sunil Shrestha <sunil.shrestha at hpe.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/ordered-simd.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-simd-ordered.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    A mlir/test/Target/LLVMIR/openmp-wsloop-simd-ordered.mlir

  Log Message:
  -----------
  [flang][openmp] Add support for ordered regions in SIMD directives (#181012)

Add support for ordered regions within SIMD directives (!$omp simd
ordered and !$omp do simd ordered). This initial implementation matches
Clang's behavior.

In SIMD directives, loop induction variables have an implicit linear
clause with deferred store semantics (storing to .linear_result). To
properly support ordered regions, the LinearClauseProcessor rewrites
variable references to use .linear_result in:
- omp.ordered.region: Code inside ordered blocks
- omp_region.finalize: Code after ordered blocks

Note: The vectorizer cannot currently vectorize loops with ordered
regions. Future enhancement would require generating lane loops or
unrolling ordered regions across SIMD lanes while maintaining ordering
semantics.


  Commit: a8f5f4a9fc3eef5ef9882e3fda619b165bbe8aba
      https://github.com/llvm/llvm-project/commit/a8f5f4a9fc3eef5ef9882e3fda619b165bbe8aba
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp

  Log Message:
  -----------
  [VPlan] Assert vplan-verify-each result and fix LastActiveLane verification (#182254)

Currently if -vplan-verify-each is enabled and a pass fails the
verifier, it will output the failure to stderr but will still finish
with a zero exit code.

This adds an assert that the verification fails so that e.g. lit will
pick up verifier failures in the in-tree tests with an EXPENSIVE_CHECKS
build.

Currently the LastActiveLane verification fails in several tests, so
this also includes a fix to handle more prefix masks. All of the prefix
masks that the verifier encounters are of the form `icmp ult/ule
monotonically-increasing-sequence, uniform`, which always generate a
prefix mask.

Tested that llvm-test-suite + SPEC CPU 2017 now pass with
-vplan-verify-each enabled for RISC-V.


  Commit: 94d9f1b3cbb02700d9cd3339c1dbf44c0d13b550
      https://github.com/llvm/llvm-project/commit/94d9f1b3cbb02700d9cd3339c1dbf44c0d13b550
  Author: barsolo2000 <barsolo at meta.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/ThreadList.h
    M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
    A lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
    A lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py

  Log Message:
  -----------
  [lldb] Batch breakpoint step-over for threads stopped at the same site (re-land) (#182944)

Re-land https://github.com/llvm/llvm-project/pull/180101 since it was
reverted here https://github.com/llvm/llvm-project/pull/182431 because
of a flaky test. This PR include the modified test that should pass from
https://github.com/llvm/llvm-project/pull/182415 :

When multiple threads are stopped at the same breakpoint, LLDB currently
steps each thread over the breakpoint one at a time. Each step requires
disabling the breakpoint, single-stepping one thread, and re-enabling
it, resulting in N disable/enable cycles and N individual vCont packets
for N threads. This is a common scenario for hot breakpoints in
multithreaded programs and scales poorly.

This patch batches the step-over so that all threads at the same
breakpoint site are stepped together in a single vCont packet, with the
breakpoint disabled once at the start and re-enabled once after the last
thread finishes.

At the top of WillResume, any leftover StepOverBreakpoint plans from a
previous cycle are popped with their re-enable side effect suppressed
via SetReenabledBreakpointSite, giving a clean slate.
SetupToStepOverBreakpointIfNeeded then creates fresh plans for all
threads that still need to step over a breakpoint, and these are grouped
by breakpoint address.

For groups with multiple threads, each plan is set to defer its
re-enable through SetDeferReenableBreakpointSite. Instead of re-enabling
the breakpoint directly when a plan completes, it calls
ThreadFinishedSteppingOverBreakpoint, which decrements a per-address
tracking count. The breakpoint is only re-enabled when the count reaches
zero.

All threads in the largest group are resumed together in a single
batched vCont packet. If some threads don't complete their step in one
cycle, the pop-and-recreate logic naturally re-batches the remaining
threads on the next WillResume call.

For 10 threads at the same breakpoint, this reduces the operation from
10 z0/Z0 pairs and 10 vCont packets to 1 z0 + 1 Z0 and a few
progressively smaller batched vCont packets.

Co-authored-by: Bar Soloveychik <barsolo at fb.com>


  Commit: af1bdad42ceb25ce4ad4eb0fdb2b39cbbe8f4207
      https://github.com/llvm/llvm-project/commit/af1bdad42ceb25ce4ad4eb0fdb2b39cbbe8f4207
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/nextup.h
    A libc/shared/math/nextupbf16.h
    A libc/shared/math/nextupf.h
    A libc/shared/math/nextupf128.h
    A libc/shared/math/nextupf16.h
    A libc/shared/math/nextupl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/nextup.h
    A libc/src/__support/math/nextupbf16.h
    A libc/src/__support/math/nextupf.h
    A libc/src/__support/math/nextupf128.h
    A libc/src/__support/math/nextupf16.h
    A libc/src/__support/math/nextupl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/nextup.cpp
    M libc/src/math/generic/nextupbf16.cpp
    M libc/src/math/generic/nextupf.cpp
    M libc/src/math/generic/nextupf128.cpp
    M libc/src/math/generic/nextupf16.cpp
    M libc/src/math/generic/nextupl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor nextup family to header-only (#181688)

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


  Commit: f6135213d78c053df933008264f385a15dad034d
      https://github.com/llvm/llvm-project/commit/f6135213d78c053df933008264f385a15dad034d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp

  Log Message:
  -----------
  ValueTracking: Move fmul constant special case to KnownFPClass (#183157)


  Commit: 752b9803d51adef77c8e61e0a0b03cefa1badc69
      https://github.com/llvm/llvm-project/commit/752b9803d51adef77c8e61e0a0b03cefa1badc69
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    A llvm/test/MC/ELF/reloc-section-sym.s

  Log Message:
  -----------
  [MC] Add --reloc-section-sym option to control section symbol conversion (#182725)

When generating relocations for non-ifunc local symbols that satisfies
several conditions, the integrated assembler converts them to reference
the section symbol (STT_SECTION) instead, folding the original symbol's
offset into the addend.  This allows the original local symbol to be
omitted from .symtab, but the STT_SECTION symbol itself must be present,
so the conversion saves .symtab entries only when a section has more
than one local symbol referenced by relocations.

As GAS will likely add --reloc-section-sym, add --reloc-section-sym to
control this
conversion:

- all (default): convert all eligible local symbols.
(Note: There are many ineligible conditions, see
ELFObjectWriter::useSectionSymbol)
- internal: only convert .L prefix local symbols (usually
compiler-generated)
- none: never convert; keep all symbols as-is in relocations

This is useful for debugging and for tools that benefit from preserved
symbol names.

Original feature request:

<https://discourse.llvm.org/t/mc-how-why-does-converting-relocation-against-symbol-to-relocation-against-section-work/88786/7>

Note: We have to use name check instead of `isTemporary()`, because
--save-temp-labels makes all symbols non-temporary.


  Commit: 1e560c181abbeae11c08759dc452effe30929569
      https://github.com/llvm/llvm-project/commit/1e560c181abbeae11c08759dc452effe30929569
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [LV] Remove CheckNeededWithTailFolding from addMinimumIterationCheck. NFC (#183066)

The IV can no longer overflow with tail folding after #183080.


  Commit: f1a9dee996afc6655357884eaab91756def78fa7
      https://github.com/llvm/llvm-project/commit/f1a9dee996afc6655357884eaab91756def78fa7
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp

  Log Message:
  -----------
  [lldb][windows] refactor ConnectionGenericFile's Read and Write methods (#183332)


  Commit: e07a5542c7bbd211ad54397b1e44ca6285579bce
      https://github.com/llvm/llvm-project/commit/e07a5542c7bbd211ad54397b1e44ca6285579bce
  Author: SiliconA-Z <gfunni234 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    A llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
    M llvm/test/CodeGen/AArch64/combine-comparisons-by-cse.ll

  Log Message:
  -----------
  [AArch64] Extend condition optimizer to support unsigned comparisons (#144380)

We have to be extra careful to not allow unsigned wraps, however. This
also required some adjusting of the logic in adjustCmp, as well as
compare the true imm value with add or sub taken into effect.

Because SIGNED_MIN and SIGNED_MAX cannot be an immediate, we do not need
to worry about those edge cases when dealing with unsigned comparisons.


  Commit: d2d862a54457d5518d81acda4f56483b8c89ccc1
      https://github.com/llvm/llvm-project/commit/d2d862a54457d5518d81acda4f56483b8c89ccc1
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/nexttoward.h
    A libc/shared/math/nexttowardbf16.h
    A libc/shared/math/nexttowardf.h
    A libc/shared/math/nexttowardf16.h
    A libc/shared/math/nexttowardl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/nexttoward.h
    A libc/src/__support/math/nexttowardbf16.h
    A libc/src/__support/math/nexttowardf.h
    A libc/src/__support/math/nexttowardf16.h
    A libc/src/__support/math/nexttowardl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/nexttoward.cpp
    M libc/src/math/generic/nexttowardbf16.cpp
    M libc/src/math/generic/nexttowardf.cpp
    M libc/src/math/generic/nexttowardf16.cpp
    M libc/src/math/generic/nexttowardl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor nexttoward family to header-only (#181685)

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


  Commit: a52f6110ec8952bca4b7679d32cc2e5422bff1e0
      https://github.com/llvm/llvm-project/commit/a52f6110ec8952bca4b7679d32cc2e5422bff1e0
  Author: Fatih BAKIR <mfatihbakir at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A lld/test/wasm/large-debug-section.test
    A lld/test/wasm/large-section.test
    A lld/test/wasm/section-too-large.test
    M lld/wasm/InputChunks.h
    M lld/wasm/OutputSections.cpp

  Log Message:
  -----------
  [lld][Webassembly] Avoid a signed overflow on large sections (#183225)

wasm sections sizes are specified as u32s, and thus can be as large as
4GB. wasm-ld currently stores the offset into a section as an int32_t
which overflows on large sections and results in a crash. This change
makes it a int64_t to accommodate any valid wasm section and allow
catching even larger sections instead of wrapping around.

This PR fixes the issue by storing the offset as a int64_t, as well as
adding extra checks to handle un-encodeable sections to fail instead of
producing garbage wasm binaries, and also adds lit tests to make sure it
works. I confirmed the test fails on main but passes with this fix.

This is the same as https://github.com/llvm/llvm-project/pull/178287 but
deletes the temporary files the tests create and requires the tests run
on a 64-bit platform to avoid OOM issues due to the large binaries it
creates.


  Commit: 545c2a7ce86165f151591b2f220047ddd40b537f
      https://github.com/llvm/llvm-project/commit/545c2a7ce86165f151591b2f220047ddd40b537f
  Author: PiJoules <leonardchan at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    A llvm/test/Instrumentation/AddressSanitizer/fuchsia.ll

  Log Message:
  -----------
  [clang][ASan][Fuchsia] Have Fuchsia use a dynamic shadow start (#182917)

These are the compiler changes that depend on the runtime changes in
https://github.com/llvm/llvm-project/pull/183154. The runtime changes
need to have landed first. The dynamic shadow global is still set to
zero, but this will change in the future.


  Commit: da10c25e42d21cb46e09614d655485b98c2773c2
      https://github.com/llvm/llvm-project/commit/da10c25e42d21cb46e09614d655485b98c2773c2
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/ASTDumperUtils.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp

  Log Message:
  -----------
  [AST][NFC] Move AST dump colors into separate namespace (#183341)

Preparatory work for Clang AST PCH, which will include ASTDumperUtils.h.
Polluting the clang namespace with colors would lead to a collision with
clang/lib/Frontend/TextDiagnostic.cpp.


  Commit: ae76def7695156cd8d5ee0a2325de943fe1a0612
      https://github.com/llvm/llvm-project/commit/ae76def7695156cd8d5ee0a2325de943fe1a0612
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp

  Log Message:
  -----------
  [clang][ARM] Refactor argument handling in `EmitAArch64BuiltinExpr` (3/N) (NFC) (#183315)

Remove the outstanding calls to `EmitScalarExpr` in
`EmitAArch64BuiltinExpr` that are no longer required.

This is a follow-up for #181794 and #181974 - please refer to
those PRs for more context.


  Commit: b8743de6c5431aaae73a0138e2a2b09795fc29e2
      https://github.com/llvm/llvm-project/commit/b8743de6c5431aaae73a0138e2a2b09795fc29e2
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Add link to the running job from the benchmarking bot (#180217)

This allows following the progress of the benchmarking job and also
spotting when it fails.

Fixes #158296


  Commit: 5524ce826d326f30ec6fc220b6e8cc839b910a17
      https://github.com/llvm/llvm-project/commit/5524ce826d326f30ec6fc220b6e8cc839b910a17
  Author: ykhatav <yashasvi.khatavkar at intel.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/OpenMP/num_teams_clause_ast.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp

  Log Message:
  -----------
  [OpenMP][Clang] Parsing support for num_teams lower bound (#180608)

According to OpenMP 5.2 the num_teams clause should support a
lower-bound as modifier for its argument. This PR adds Parsing support
for the lower bound in num_teams clause.


  Commit: a224ba068997785daa237eaabb3d11867b898f3d
      https://github.com/llvm/llvm-project/commit/a224ba068997785daa237eaabb3d11867b898f3d
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/include/flang/Lower/CUDA.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CUDA.cpp
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf

  Log Message:
  -----------
  [flang][cuda] Support data transfer with parenthesis around rhs (#183201)


  Commit: 09d7b890e035c8ace45642f27edc0ff5768311eb
      https://github.com/llvm/llvm-project/commit/09d7b890e035c8ace45642f27edc0ff5768311eb
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libcxx/include/__math/gamma.h
    M libcxx/include/__random/binomial_distribution.h

  Log Message:
  -----------
  [libc++] Add a thread-safe version of std::lgamma in the dylib (#153631)

Libc++ currently redeclares ::lgamma_r on platforms that provide it.
This causes issues when building with modules, and redeclaring functions
provided by another library (here the C library) is bad hygiene.

Instead, use an asm declaration to call the right function without
having to redeclare it.


  Commit: 81afd93a5153af024ef32aa8e597a5fc3b54c3a4
      https://github.com/llvm/llvm-project/commit/81afd93a5153af024ef32aa8e597a5fc3b54c3a4
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
    M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
    M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
    M mlir/test/Dialect/Arith/canonicalize.mlir
    M mlir/test/Dialect/Arith/ops.mlir

  Log Message:
  -----------
  [mlir][arith] Add nneg to extui and uitofp. (#183165)

This patchset adds missing the missing flag nneg (non-negative) to extui
and uitofp which denotes that the operand is known to be non-negative.
Semantics for this flag mirrors LLVM semantics.

[From:](https://discourse.llvm.org/t/rfc-add-zext-nneg-flag/73914) 

> If the nneg flag is set, and the zext argument is negative, the result
is a poison value.
> A corollary is that replacing a zext nneg with sext is a refinement.


[and](https://discourse.llvm.org/t/rfc-support-nneg-flag-with-uitofp/77988):

> uitofp nneg iN %x to fM returns poison if %x is negative
> A corollary is that uitofp nneg iN %x to fM is equivilent to sitofp iN
%x to fM.

* Adds ArithNonNegFlagInterface
* Adds AttrConvertNonNegToLLVM 
* Updates definitions of arith.extui and arith.uitofp to declare
ArithNonNegFlagInterface
* Updates canonicalization patterns to propagate nneg where applicable
* Adds roundtrip, lowering, and canonicalization tests.

Assisted-by: claude


  Commit: ed1a1eda0ff9c5d59b13551c0447793e92d375bd
      https://github.com/llvm/llvm-project/commit/ed1a1eda0ff9c5d59b13551c0447793e92d375bd
  Author: Dan Blackwell <dan_blackwell at apple.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M compiler-rt/test/fuzzer/reduce_inputs.test

  Log Message:
  -----------
  [compiler-rt][Fuzzer] Relax reduce_inputs.test to account for non-determinism (#182495)

I have seen that very occasionally this test is failing on a bot, with
only 3 files in the corpus. After running the test in a loop 4000+
times, I witnessed this same failure twice.

In both cases the first corpus member was some string not containing a
'F'; the second corpus member was 'F[' or 'FZ'; and the final corpus
member 'FUZ'.

In a normal run there is an intermediate corpus member 'FU.' - so this
test is failing in very rare cases where the fuzzer gets lucky and
matches 2 branch conditions in one mutation.

This patch allows the FileCheck condition to match 3 or 4 corpus files.
It may be possible for the fuzzer to reach the target in 2 files, but I
think that if that is possible, it will be exceptionally rare.

rdar://170440934


  Commit: bfaa15ee564065097fb96d48f90957c4f4f98f2c
      https://github.com/llvm/llvm-project/commit/bfaa15ee564065097fb96d48f90957c4f4f98f2c
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16div.h
    A libc/shared/math/f16divf.h
    A libc/shared/math/f16divf128.h
    A libc/shared/math/f16divl.h
    A libc/shared/math/f16mul.h
    A libc/shared/math/f16mulf.h
    A libc/shared/math/f16mulf128.h
    A libc/shared/math/f16mull.h
    A libc/shared/math/f16sub.h
    A libc/shared/math/f16subf.h
    A libc/shared/math/f16subf128.h
    A libc/shared/math/f16subl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16div.h
    A libc/src/__support/math/f16divf.h
    A libc/src/__support/math/f16divf128.h
    A libc/src/__support/math/f16divl.h
    A libc/src/__support/math/f16mul.h
    A libc/src/__support/math/f16mulf.h
    A libc/src/__support/math/f16mulf128.h
    A libc/src/__support/math/f16mull.h
    A libc/src/__support/math/f16sub.h
    A libc/src/__support/math/f16subf.h
    A libc/src/__support/math/f16subf128.h
    A libc/src/__support/math/f16subl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16div.cpp
    M libc/src/math/generic/f16divf.cpp
    M libc/src/math/generic/f16divf128.cpp
    M libc/src/math/generic/f16divl.cpp
    M libc/src/math/generic/f16mul.cpp
    M libc/src/math/generic/f16mulf.cpp
    M libc/src/math/generic/f16mulf128.cpp
    M libc/src/math/generic/f16mull.cpp
    M libc/src/math/generic/f16sub.cpp
    M libc/src/math/generic/f16subf.cpp
    M libc/src/math/generic/f16subf128.cpp
    M libc/src/math/generic/f16subl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor float16 basic operations to header-only (#181745)

closes: #181744


  Commit: 6d5e051be9e133dbb15791ebe630b2218dde0657
      https://github.com/llvm/llvm-project/commit/6d5e051be9e133dbb15791ebe630b2218dde0657
  Author: Samrudh Nelli <samrudhnelli at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc]: Enable horizontal wrapping on longer function definitions (#181417)

This patch enables wrapping for longer function and template definitions
in the generated HTML. Currently uses the no. of parameters to 
determine the need to wrap the function. If a function or template has
more than 2 parameters, they are printed one per line. Also fixes a styling
bug where a trailing comma was left after the last parameter.


  Commit: 5734d978d006a63f4eec6d76087ef8ac1664e30e
      https://github.com/llvm/llvm-project/commit/5734d978d006a63f4eec6d76087ef8ac1664e30e
  Author: Amina Chabane <amina.chabane at arm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/lib/Target/AArch64/aarch64-tensorflow-isel-regression.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    A llvm/test/CodeGen/AArch64/neon-lowhalf128-optimisation.ll

  Log Message:
  -----------
  [AArch64] Fix regression from “Fold scalar-to-vector shuffles into DUP/FMOV" (#178227)

Revised #166962.

This patch aims to fix the original compile time regression by
restricting the optimisation to run only on non-constant splats. Without
the guard, an infinite loop is caused because the
`CONCAT(SCALAR_TO_VECTOR, zero)` folds back into the same `BUILD_VECTOR`
and immediately re-enters `LowerBUILD_VECTOR`.

This patch was tested with the original TensorFlow reproduction provided
on the PR and shows a (very) slight improvement on compile-time.


  Commit: f94ad564f528776516d75476f19c33993b4c5687
      https://github.com/llvm/llvm-project/commit/f94ad564f528776516d75476f19c33993b4c5687
  Author: Sy Brand <tartanllama at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lld/test/wasm/tls-export.s
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/ObjectYAML/WasmEmitter.cpp
    A llvm/test/ObjectYAML/wasm/dylink_tls_exports.yaml
    M llvm/test/tools/llvm-nm/wasm/dylink.yaml
    M llvm/test/tools/llvm-objdump/wasm/dylink-symbol-table.yaml

  Log Message:
  -----------
  [WebAssembly] Take symbol flags for exports from the dylink section for shared objects (#183079)

Currently, WASM symbols taken from the export section of shared objects
lose their flags. This can result in link failures. For example, if a
TLS symbol is exported from a shared object, relocation fails because
`wasm-ld` thinks that the symbol is not flagged as a TLS symbol.

This PR populates symbol flags for symbols in the export section from
the flags stored in the dylink0 section.

The export info section was also not serialized by the WASM emitter for
YAML, which this PR fixes


  Commit: efe0b2f993cff3809d8e26d996432e98c600600e
      https://github.com/llvm/llvm-project/commit/efe0b2f993cff3809d8e26d996432e98c600600e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    R flang/test/Lower/OpenMP/ordered-simd.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    R mlir/test/Target/LLVMIR/openmp-simd-ordered.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    R mlir/test/Target/LLVMIR/openmp-wsloop-simd-ordered.mlir

  Log Message:
  -----------
  Revert "[flang][openmp] Add support for ordered regions in SIMD directives (#181012)"

This reverts commit 31dacdc1f5d486da6ef6d8b2f7e3b6126d92c9ff.

See the PR for test failure details.


  Commit: 85a1fe692c123683bb16dd39f50c295198e7a819
      https://github.com/llvm/llvm-project/commit/85a1fe692c123683bb16dd39f50c295198e7a819
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCoreProperties.td
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernelCore] Implement DoWriteMemory() (#183237)

Implement `ProcessFreeBSDKernelCore::DoWriteMemory()` to write data on
kernel dump or `/dev/mem`. Due to security concerns (e.g. writing wrong
value on `/dev/mem` can trigger kernel panic), this feature is only
enabled when `plugin.process.freebsd-kernel-core.read-only` is set to
false (true by default).

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 4919be702907eb9de73466e3d29f476ac5cdf5ad
      https://github.com/llvm/llvm-project/commit/4919be702907eb9de73466e3d29f476ac5cdf5ad
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [WebKit Checkers] Handle CXXRewrittenBinaryOperator in trivial analysis. (#183278)

Visit the semantic form when encountering CXXRewrittenBinaryOperator in
the trivial function analysis / no-delete analysis.


  Commit: 8d625621eb5ddc1e0e1e0a06af03b9e076c1d642
      https://github.com/llvm/llvm-project/commit/8d625621eb5ddc1e0e1e0a06af03b9e076c1d642
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Fix spurious indentation in CMakeLists.txt (NFC) (#183368)

Fix spurious indentation in ScriptInterpreter/*/CMakeLists.txt.


  Commit: 0c53a89b228a2c1b4d2d02cb80d674b2b20a9c7c
      https://github.com/llvm/llvm-project/commit/0c53a89b228a2c1b4d2d02cb80d674b2b20a9c7c
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    M llvm/test/CodeGen/Hexagon/isel/trunc-vNi1-HVX.ll

  Log Message:
  -----------
  [Hexagon] Fix truncation to boolean vector that need widening (#182528)

When truncating a sub-HVX-width vector to a boolean vector (e.g., v64i8
-> v64i1 in 128-byte HVX mode), the operation would crash with
"Unhandled HVX operation" UNREACHABLE. This happened because the
condition in LowerHvxOperationWrapper/ReplaceHvxNodeResults did not
handle the case where the input vector needs widening and the result is
a boolean vector.

The fix adds WidenHvxTruncateToBool which widens the input to HVX
register width (e.g., v64i8 -> v128i8), performs the truncate to widened
bool type (v128i8 -> v128i1), extracts the result subvector (v128i1 ->
v64i1).

This allows the widened truncate to match the existing V6_vandvrt
pattern in HexagonPatternsHVX.td.


  Commit: 9ab13eef8df9cc4b0bb36cb9e1e091338f10b853
      https://github.com/llvm/llvm-project/commit/9ab13eef8df9cc4b0bb36cb9e1e091338f10b853
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [LoopFusion] clear FusionCandidates more often (#183353)

A LoopVector contains all the loops with the same parent loop (or all
loops with no parent). Once loop fusion is done with the transformation
for candidates extracted from one LoopVector we can safely clear
FusionCandidates. This avoids unnecssary work and results in more
meaningful statistics.


  Commit: b1325cb709f73ba107b06a98a716297e45acc3d9
      https://github.com/llvm/llvm-project/commit/b1325cb709f73ba107b06a98a716297e45acc3d9
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Analysis/auto-obj-dtors-cfg-output.cpp
    M clang/test/Analysis/misc-ps-region-store.cpp
    M clang/test/SemaCXX/return-noreturn.cpp

  Log Message:
  -----------
  Revert [Clang] eliminate -Winvalid-noreturn false positive after throw + unreachable try/catch blocks (#183365)

Reverts https://github.com/llvm/llvm-project/pull/175443

---

Reverting for now because the CFG `try` connectivity change caused
additional analysis regressions (`-Wthread-safety-analysis` etc.) beyond
the original fix.


  Commit: 4832c33f665cc48500801f64cc220cdebd1335a4
      https://github.com/llvm/llvm-project/commit/4832c33f665cc48500801f64cc220cdebd1335a4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/exp.ll
    M llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
    M llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll

  Log Message:
  -----------
  AMDGPU: Implement expansion for f64 exp (#182539)

I asked AI to port the device libs reference implementation.
It mostly worked, though it got the compares wrong and also
missed a fold that happened in compiler. With that fixed I get
identical DAG output, and almost the same globalisel output (differing
by an inverted compare and select). Also adjusted some stylistic
choices.


  Commit: 84594d7539a51c17288201869a8952b8aec260ff
      https://github.com/llvm/llvm-project/commit/84594d7539a51c17288201869a8952b8aec260ff
  Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [mlir][xegpu] Add vector layout conflict handling in XeGPU layout propagation pass.  (#182402)

This PR adds support for layout conflict handling for vector operands. A
conflict for a vector operand occurs when a value consumed at a given
operand is not in the expected layout in the context of the consumer
(for example `vector.multi_reduction` op's source require a specific
layout inferred from its current result layout). To resolve this
conflict, we insert an `xegpu.convert_layout` right after the producer
(essentially duplicating the producer with expected layout) and use the
new value in the consumer.


  Commit: b68307569bb955fb2f613bd239ad7a92e805035f
      https://github.com/llvm/llvm-project/commit/b68307569bb955fb2f613bd239ad7a92e805035f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/test/CodeGen/RISCV/bswap-bitreverse.ll

  Log Message:
  -----------
  [RISCV] Support scalar bitreverse using P extension rev instruction. (#183245)


  Commit: c51a926d9811b8d27ac3642c08420b51640600c3
      https://github.com/llvm/llvm-project/commit/c51a926d9811b8d27ac3642c08420b51640600c3
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A llvm/include/llvm/CodeGen/pch.h
    M llvm/lib/CodeGen/CMakeLists.txt

  Log Message:
  -----------
  [CMake][CodeGen] Add PCH (#183346)

Add PCH for expensive and most-used headers from llvm/CodeGen.


  Commit: 7be9d66c29a7af78c36a6807d0d71efd6420099c
      https://github.com/llvm/llvm-project/commit/7be9d66c29a7af78c36a6807d0d71efd6420099c
  Author: satyanarayana reddy janga <satyajanga at fb.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/ThreadList.h
    M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
    R lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
    R lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py

  Log Message:
  -----------
  Revert "[lldb] Batch breakpoint step-over for threads stopped at the … (#183378)

…same site (re-land) (#182944)"

This reverts commit 94d9f1b3cbb02700d9cd3339c1dbf44c0d13b550.


  Commit: 84764dfc2ad3c1fa7c074d6089302f094e7df037
      https://github.com/llvm/llvm-project/commit/84764dfc2ad3c1fa7c074d6089302f094e7df037
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Driver/Job.h
    A clang/include/clang/Driver/ModulesDriver.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/CMakeLists.txt
    M clang/lib/Driver/Driver.cpp
    A clang/lib/Driver/ModulesDriver.cpp
    A clang/test/Driver/modules-driver-malformed-manifest.cpp
    A clang/test/Driver/modules-driver-manifest-input-args.cpp
    A clang/test/Driver/modules-driver-manifest-not-found.cpp

  Log Message:
  -----------
  [clang][modules-driver] Generate jobs from Standard library module manifest entries (#182182)

This patch is part of a series to support driver-managed module builds.

To support imports of the Standard library modules (std and
std.compat), the driver must generate frontend jobs for each module
before performing the dependency scan.
The source paths for these modules, along with additional information
required to precompile them, are provided by the Standard library
modules manifest.

This change implements the parsing and handling of the manifest in the
modules-driver.
This change is part of an effort to split #152770 into smaller, more
manageable pieces.

RFC for driver-managed module builds:

https://discourse.llvm.org/t/rfc-modules-support-simple-c-20-modules-use-from-the-clang-driver-without-a-build-system


  Commit: 524fff5a51b86c35825405a9789672609e1ce99e
      https://github.com/llvm/llvm-project/commit/524fff5a51b86c35825405a9789672609e1ce99e
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [win] Control Flow Guard: Add support for the MSVC /d2guardnochecks command (#182967)

This adds support for MSVC's `/d2guardnochecks` undocumented flag. This
flag is similar to `-guard:cf,nochecks` and `-cfguard-no-checks` in that
it instructs the compiler to emit the metadata for Control Flow Guard
WITHOUT emitting checks (aka: "table only" mode), but it differs from
those existing flags because if only takes effect if another flag is
used to enable Control Flow Guard (i.e., `/d2guardnochecks` by itself
does nothing, `/d2guardnochecks /guard:cf` enables table-only mode for
Control Flow Guard).


  Commit: d7cdfa10963391c69dd12d673fe85ebd0d8cbcf3
      https://github.com/llvm/llvm-project/commit/d7cdfa10963391c69dd12d673fe85ebd0d8cbcf3
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fdim.h
    A libc/shared/math/fdimbf16.h
    A libc/shared/math/fdimf.h
    A libc/shared/math/fdimf128.h
    A libc/shared/math/fdimf16.h
    A libc/shared/math/fdiml.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fdim.h
    A libc/src/__support/math/fdimbf16.h
    A libc/src/__support/math/fdimf.h
    A libc/src/__support/math/fdimf128.h
    A libc/src/__support/math/fdimf16.h
    A libc/src/__support/math/fdiml.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fdim.cpp
    M libc/src/math/generic/fdimbf16.cpp
    M libc/src/math/generic/fdimf.cpp
    M libc/src/math/generic/fdimf128.cpp
    M libc/src/math/generic/fdimf16.cpp
    M libc/src/math/generic/fdiml.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor fdim family to header-only (#182190)

Refactors the fdim math family to be header-only.

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

Target Functions:
  - fdim
  - fdimbf16
  - fdimf
  - fdimf128
  - fdimf16
  - fdiml


  Commit: f2e3f564037d36acd8460b675cc6f5cbba937721
      https://github.com/llvm/llvm-project/commit/f2e3f564037d36acd8460b675cc6f5cbba937721
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU] Make slow VOPD assert under EXPENSIVE_CHECKS (#183166)

The assert is algorithmically slow. To preserve the usability of release_assert
builds, move it under EXPENSIVE_CHECKS. On some workloads it increased compile
time by 40-50x.


  Commit: 2981f5f045de2066148375cd24e79440643be911
      https://github.com/llvm/llvm-project/commit/2981f5f045de2066148375cd24e79440643be911
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/Generic/shadow-stack-gc-lowering.ll

  Log Message:
  -----------
  [CodeGen] Add tests for ShadowStackGCLowering IR pass (#183167)

Add llvm/test/CodeGen/Generic/shadow-stack-gc-lowering.ll testing the
opt-level behavior of the shadow-stack-gc-lowering module pass,
covering:
- Single root: frame push/pop at entry and return
- Two roots: multi-slot frame, NumRoots=2/NumMeta=0 in the frame map
- Root with non-null metadata: NumMeta=1, metadata array in gc_map
- Mixed metadata: CollectRoots ordering (metadata roots sorted first)
- No roots: pass must leave the function unchanged
- Invoke: EscapeEnumerator inserts pop on both normal and unwind exits

As requested in https://github.com/llvm/llvm-project/pull/178436, since
the only existing tests seem to be that llc doesn't crash (in
llvm/test/CodeGen/X86/GC)

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: af2b6ed6aabd9015d5725afed749a218912a7fcc
      https://github.com/llvm/llvm-project/commit/af2b6ed6aabd9015d5725afed749a218912a7fcc
  Author: Sunil Shrestha <sunil.shrestha at hpe.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/ordered-simd.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-simd-ordered.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    A mlir/test/Target/LLVMIR/openmp-wsloop-simd-ordered.mlir

  Log Message:
  -----------
  [flang][openmp] Add support for ordered regions in SIMD directives (#… (#183379)

Add support for ordered regions within SIMD directives (!$omp simd
ordered and !$omp do simd ordered). This initial implementation matches
Clang's behavior.

In SIMD directives, loop induction variables have an implicit linear
clause with deferred store semantics (storing to .linear_result). To
properly support ordered regions, the LinearClauseProcessor rewrites
variable references to use .linear_result in:
- omp.ordered.region: Code inside ordered blocks
- omp_region.finalize: Code after ordered blocks

Note: The vectorizer cannot currently vectorize loops with ordered
regions. Future enhancement would require generating lane loops or
unrolling ordered regions across SIMD lanes while maintaining ordering
semantics.

This PR is a reland for https://github.com/llvm/llvm-project/pull/181012
and fixes the regression caused by syntax change in IR for linear clause


  Commit: 9f4636210deb2e94b5b3cd2d3cbf1cccc34543d1
      https://github.com/llvm/llvm-project/commit/9f4636210deb2e94b5b3cd2d3cbf1cccc34543d1
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M offload/liboffload/src/OffloadImpl.cpp

  Log Message:
  -----------
  [Offload] Fix type mismatch by using `uint64_t` instead of `size_t` (#183375)

The variant uses uint64_t, so should the get.


  Commit: 33fd75f55d1f72ea8a5b8bbecda56be3b99d92e0
      https://github.com/llvm/llvm-project/commit/33fd75f55d1f72ea8a5b8bbecda56be3b99d92e0
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/OffloadArch.h
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M llvm/docs/AMDGPUUsage.rst
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/TargetParser/TargetParser.h
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNProcessors.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
    M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
    M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
    M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
    M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [AMDGPU] Add gfx12-5-generic subtarget (#183381)

This is functionally equivalent to gfx1250.


  Commit: 4a8d5327ff69e43f35ea516a372fb59c30a3e2cb
      https://github.com/llvm/llvm-project/commit/4a8d5327ff69e43f35ea516a372fb59c30a3e2cb
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ClangIRCleanupAndEHDesign.md
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp
    M clang/test/CIR/IR/invalid-eh-flat.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/try-catch.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir

  Log Message:
  -----------
  [CIR] Update cir::ResumeOp to require an EH token (#183192)

This updates the cir::ResumeOp operation to require an EH token operand.
We already had the token available at both locations where the operation
was being created. Adding this operand makes finding the token more
robust during CFG flattening.

This change was entirely AI generated, but I have reviewed it closely.


  Commit: b7ce37c6703f2d82376f50f82a05b807a0ad90ad
      https://github.com/llvm/llvm-project/commit/b7ce37c6703f2d82376f50f82a05b807a0ad90ad
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-pmull2.ll
    M llvm/test/CodeGen/AArch64/aarch64-scal-to-vec-bitcast-insert.ll
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-intrinsics.ll
    M llvm/test/CodeGen/AArch64/arm64-fixed-point-scalar-cvt-dagcombine.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-select_cc.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-v8.1a.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt.ll
    M llvm/test/CodeGen/AArch64/arm64-vshift.ll
    M llvm/test/CodeGen/AArch64/avoid-pre-trunc.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/concat-vector-add-combine.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/fp-intrinsics-vector.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/ragreedy-local-interval-cost.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-llrint.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-lrint.ll
    M llvm/test/CodeGen/AArch64/vector-llrint.ll
    M llvm/test/CodeGen/AArch64/vector-lrint.ll
    M llvm/test/CodeGen/AArch64/zext.ll

  Log Message:
  -----------
  Revert "[AArch64] Wrap integer SCALAR_TO_VECTOR nodes in bitcasts  (#172837)" (#183380)

This reverts commit eff183b6a7e351e10444977fc2110edc2a518e6f.

And followup commit commit 87d9dad579b9d947f6181d1736fb11e8f683e246.

Causes breakages, see
https://github.com/llvm/llvm-project/pull/172837#issuecomment-3961532435.


  Commit: 5cd6bb04e2d8b0712353a7dcd9729b217c35b12f
      https://github.com/llvm/llvm-project/commit/5cd6bb04e2d8b0712353a7dcd9729b217c35b12f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ModulesDriver.cpp

  Log Message:
  -----------
  [Clang][Modules] Fix -Wunused-variable from #182182

https://lab.llvm.org/staging/#/builders/227/builds/1093


  Commit: 3031ba95456c95e123d0f9f7dc61c0b45c2d8762
      https://github.com/llvm/llvm-project/commit/3031ba95456c95e123d0f9f7dc61c0b45c2d8762
  Author: Daniil Fukalov <dfukalov at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/RISCV/div_minsize.ll
    M llvm/test/CodeGen/X86/div_i129_v_pow2k.ll
    M llvm/test/CodeGen/X86/i128-sdiv.ll
    A llvm/test/Transforms/ExpandIRInsts/X86/divrem-pow2.ll

  Log Message:
  -----------
  [CodeGen] Expand power-of-2 div/rem at IR level in ExpandIRInsts. (#180654)

Previously, power-of-2 div/rem operations wider than
MaxLegalDivRemBitWidth were excluded from IR expansion and left for
backend peephole optimizations. Some backends can fail to process such
instructions in case we switch off DAGCombiner.

Now ExpandIRInsts expands them into shift/mask sequences:
- udiv X, 2^C  ->  lshr X, C
- urem X, 2^C  ->  and X, (2^C - 1)
- sdiv X, 2^C  ->  bias adjustment + ashr X, C
- srem X, 2^C  ->  X - (((X + Bias) >> C) << C)

Special cases handled:
- Division/remainder by 1 or -1 (identity, negation, or zero)
- Exact division (sdiv exact skips bias, produces ashr exact)
- Negative power-of-2 divisors (result is negated)
- INT_MIN divisor (correct via countr_zero on bit pattern)

Proofs: https://alive2.llvm.org/ce/z/Y-iWm-

Assisted-by: Cursor // Claude Opus 4.6


  Commit: 642763c553fdf6e699a3dd867b984b5c8044c07e
      https://github.com/llvm/llvm-project/commit/642763c553fdf6e699a3dd867b984b5c8044c07e
  Author: Zhuoran Yin <zhuoryin at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/Transforms/FoldMemRefsOps.cpp
    M mlir/test/Dialect/AMDGPU/amdgpu-fold-memrefs.mlir

  Log Message:
  -----------
  [AMDGPU] Adding FoldMemRefOpsIntoTransposeLoadOp pattern (#183330)

Before the fix we wouldn't fold a trivial expand_shape as index
computation. This will later force expand_shape to materialize into a
extract_stride_metadata and a reinterpret_cast unnecessarily. The
example below showcase the motivation of a source IR that won't be able
to fold today.

```mlir
%expanded = memref.expand_shape %buf [[0, 1], [2, 3]]
    : memref<32x128xf16, strided<[128, 1], offset: ?>, #gpu.address_space<workgroup>>
    into memref<1x32x8x16xf16, strided<..., offset: ?>, #gpu.address_space<workgroup>>
amdgpu.transpose_load %expanded[%i, %j, %k, %l]
    : memref<1x32x8x16xf16, ...> -> vector<4xf16>
```

With this pattern that matches the more generic
`FoldMemRefAliasOpsPass`, the expand_shape can now fold into
transpose_load op like other load/stores.

The current `FoldMemRefAliasOps` pass doesn't use a more generic
interface yet — it still uses the hardcoded overloads. This PR continues
the pragmatic approach in providing its own folding pass (like
`GatherToLDSOp`).


  Commit: 30969cc6441261a4281bdb9811c36a2348137d61
      https://github.com/llvm/llvm-project/commit/30969cc6441261a4281bdb9811c36a2348137d61
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stopped-events/TestDAP_stopped_events.py

  Log Message:
  -----------
  [lldb] Fix logic issue in TestDAP_stopped_events.py (#183382)

The subset should actually be the expected data because the real thread
data may have additional information.


  Commit: 0668d9939fa29ee224e34ede1352a368286dfa94
      https://github.com/llvm/llvm-project/commit/0668d9939fa29ee224e34ede1352a368286dfa94
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/examples/python/formatter_bytecode.py

  Log Message:
  -----------
  [lldb] Improve unittest invocation in formatter_bytecode.py (#183394)


  Commit: 5a629e606275c1c8eb2148da44958286e6903397
      https://github.com/llvm/llvm-project/commit/5a629e606275c1c8eb2148da44958286e6903397
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Remove redundant setting of AllowDollarAtStartOfIdentifier. NFC (#183339)

This setting defaults to false so there is no need to set it unless we
want it to be true.

This makes it easy to see at a glace which backends support this, and
matches the existing behaviour of other fields such as
`AllowAtAtStartOfIdentifier`, `AllowQuestionAtStartOfIdentifier`,
`UseAssignmentForEHBegin` and `AllowAtInName`. These are all only ever
set to true in subclasses, never false.


  Commit: fa3b86b72b6307d90ce38fd0cf2ea261e9452596
      https://github.com/llvm/llvm-project/commit/fa3b86b72b6307d90ce38fd0cf2ea261e9452596
  Author: Kavin Gnanapandithan <kavin.balag at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
    M llvm/test/CodeGen/RISCV/double-imm.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/double-select-icmp.ll
    M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore-zilsd.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zdinx-constraint-r.ll
    A llvm/test/CodeGen/RISCV/rv32-merge-non-arg-reg.mir
    A llvm/test/CodeGen/RISCV/rv32-move-merge.ll
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/zicond-fp-select-zfinx.ll

  Log Message:
  -----------
  [RISCV] Enhance RISCVMoveMerger for GPRPair Moves on RV32 #180831 (#182416)

Extends RISCVMoveMerger to identify adjacent 32-bit moves that can be
combined into a single 64-bit move instruction. In particular, this
patch adds support for extension zdinx (`fmv.d`) and p(`padd.dw`).

Fixes #180831


  Commit: 8539dca8c65ad103b20bc4e02eccdf9642c9a8d5
      https://github.com/llvm/llvm-project/commit/8539dca8c65ad103b20bc4e02eccdf9642c9a8d5
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/MC/MCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Consistent use of inline field initializers in MCAsmInfo (#183343)


  Commit: 25ebf5e9d27510566dda2cba6585a6064beec878
      https://github.com/llvm/llvm-project/commit/25ebf5e9d27510566dda2cba6585a6064beec878
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/test/MC/RISCV/rv32p-valid.s
    M llvm/test/MC/RISCV/rv64p-valid.s

  Log Message:
  -----------
  [RISCV] Add missing immediates to check lines in rv32p-valid.s and rv64p-valid.s. NFC (#183238)


  Commit: 6272d5ac2afdc6808692e5d8ff3d73321942bccd
      https://github.com/llvm/llvm-project/commit/6272d5ac2afdc6808692e5d8ff3d73321942bccd
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Use the Github context instead of env to access the run ID & friends


  Commit: 122e79c35fdbf7e75fd4059b6f32ddee616b62da
      https://github.com/llvm/llvm-project/commit/122e79c35fdbf7e75fd4059b6f32ddee616b62da
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr.ll
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll

  Log Message:
  -----------
  [MISched] Advance HazardRec past stalls before calling EmitInstruction (#182977)

There are three calls to bumpCycle in bumpNode. Prior to the first call,
we calculate NextCycle as the next cycle in which all of a given
instruction's required hardware resources (as defined by the SchedModel)
are available. Any gap between this calculated NextCycle and CurrCycle
measures stalls that must occur before we can schedule the given
instruction.

The second and third call handle adjustments that occur during or after
issuing of the instruction (e.g. if the number of microops exceeds the
issue width).

According to the documentation of HazardRec->EmitInstruction, we should
call this method when an instruction is emitted: "This callback is
invoked when an instruction is emitted, to advance the hazard state."

In the context of bumpNode, this implies that it should be called after
we bumpCycle for stalls that must occur before issue of the
instructions, but before those that occur during or after. This PR moves
the placement to do that.

In practice, this affects schedulers that use both the SchedModel and
HazardRec. Suppose we have instructions A, B and C, and partial schedule
AB. Also, suppose instruction A exclusively holds ProcResource X for 2
cycles, and B uses ProcResource X, and there is a HazardRec hazard
between B and C which requires 1 cycle stall.

Currently, we call HazardRec->EmitInstruction on B before we call
HazardRec->AdvanceCycle for the stall between A->B. Then, when deciding
whether to schedule C, HazardRec sees that a cycle has already occurred
after B, so we do not need to stall.

After this change, we HazardRec->EmitInstruction on B after we call
HazardRec->AdvanceCycle for the stall between A->B. So, HazardRec
accurately places the stall cycle between A and B. Then, when deciding
whether to schedule C, HazardRec accurately sees that no cycles have
occurred after B, so we do need to stall for 1 cycle.


  Commit: 2acb24eb9525ab6e6024e6de8466076a3ff078e6
      https://github.com/llvm/llvm-project/commit/2acb24eb9525ab6e6024e6de8466076a3ff078e6
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/shift-combine.ll

  Log Message:
  -----------
  [ARM] optimize to `vsri`/`vsli` (#182051)

fixes https://github.com/llvm/llvm-project/issues/181495


  Commit: 2370063c8603f68e446617efd849bbcd546fde5a
      https://github.com/llvm/llvm-project/commit/2370063c8603f68e446617efd849bbcd546fde5a
  Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtilsLoop.h
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsLoop.cpp
    M mlir/unittests/Dialect/OpenACC/OpenACCUtilsLoopTest.cpp

  Log Message:
  -----------
  [openacc] Change function wrapMultiBlockRegionWithSCFExecuteRegion to non-static (#183409)

This change updates function `wrapMultiBlockRegionWithSCFExecuteRegion`
to be non-static.


  Commit: f01f0f01d8302d31385cd5fc4aec687a3b4d2671
      https://github.com/llvm/llvm-project/commit/f01f0f01d8302d31385cd5fc4aec687a3b4d2671
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Try using job.check_run_id instead of github.job

According to https://github.com/orgs/community/discussions/8945,
it seems I'm not the only one who is confused by the documentation.


  Commit: b3ec476c702a1cd8ada8686a2be4fed7cccf81ef
      https://github.com/llvm/llvm-project/commit/b3ec476c702a1cd8ada8686a2be4fed7cccf81ef
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py

  Log Message:
  -----------
  [lldb/test] Fix tests reading log from remote platform instead of host (#183413)

Some tests are using logs to validate that a test behaves correctly
however they used `platform shell cat {log}` to read the logfile.

This doesn't work when running the testsuite against a remote platform
since the logs are saved on the host's filesystem.

This patch addresses those failures by making sure we read the log file
from the host platform.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: f38e7b1da20641a41e281cc2a87c289669656d3a
      https://github.com/llvm/llvm-project/commit/f38e7b1da20641a41e281cc2a87c289669656d3a
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lld/docs/WebAssembly.rst
    M lld/docs/index.rst

  Log Message:
  -----------
  [lld][WebAssembly] Remove comment about wasm-ld being WIP. NFC (#183410)

wasm-ld has been feature complete for a while now.


  Commit: 3211ce1ecd457d357b744fdd8fb10b059b6ba1cd
      https://github.com/llvm/llvm-project/commit/3211ce1ecd457d357b744fdd8fb10b059b6ba1cd
  Author: Alexis Perry-Holby <aperry at lanl.gov>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A flang/docs/MeetingNotes/2026/2026-02-25.md

  Log Message:
  -----------
  [flang] Added minutes from the 2-25-2026 Flang Community Call (#183389)


  Commit: bf388fa8888f516d5190ab3f0f81e28a3d1d5b2c
      https://github.com/llvm/llvm-project/commit/bf388fa8888f516d5190ab3f0f81e28a3d1d5b2c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#183420)

$ llvm/utils/gn/build/sync_source_lists_from_cmake.py --write

84764dfc2ad3
8bdef33e6ae9
a8989c08a87e
de3034b1c14d


  Commit: ae80f343e6f6548a35ebb16a97420a53b48717c5
      https://github.com/llvm/llvm-project/commit/ae80f343e6f6548a35ebb16a97420a53b48717c5
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.h

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernelCore] Reorder ThreadFreeBSDKernelCore members (#183414)

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 2f46255485b44a3583ce4d64e84d0583fbb1c94a
      https://github.com/llvm/llvm-project/commit/2f46255485b44a3583ce4d64e84d0583fbb1c94a
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py

  Log Message:
  -----------
  Revert "[lldb/test] Fix tests reading log from remote platform instead of host" (#183419)

Reverts llvm/llvm-project#183413 because this is still fragile.


  Commit: 358b1d597ad4a418bb6eda1770b0ee4deeca7687
      https://github.com/llvm/llvm-project/commit/358b1d597ad4a418bb6eda1770b0ee4deeca7687
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M libcxx/utils/libcxx/test/dsl.py
    M libcxx/utils/libcxx/test/format.py
    M llvm/utils/lit/lit/DiffUpdater.py
    M llvm/utils/lit/lit/Test.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/display.py
    M llvm/utils/lit/lit/reports.py
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/1.in
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/lit.cfg
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-enough-retries.in
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-enough-retries.out
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-no-enough-retries.out
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-not-enough-retries.in
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-not-enough-retries.out
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-unrelated-failure.in
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/multiple-split-file-unrelated-failure.out
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/single-split-file.in
    A llvm/utils/lit/tests/Inputs/diff-test-update-retry/single-split-file.out
    A llvm/utils/lit/tests/diff-test-update-retry-default-verbosity.py
    A llvm/utils/lit/tests/diff-test-update-retry-failed-or-flaky.py
    A llvm/utils/lit/tests/diff-test-update-retry-quiet.py
    A llvm/utils/lit/tests/diff-test-update-retry.py
    M llvm/utils/lit/tests/diff-test-update.py

  Log Message:
  -----------
  [utils] update how auto-updated tests are displayed when the test is retried (#181097)

This changes how test updater output is displayed to make it less
confusing for tests with ALLOW_RETRIES. Previously it was merged into
the output string for the test result, but that hides it in many less
verbose modes, so now it's displayed separately. The FIXED status is
added, which is the same as FLAKYPASS except it highlights that a test
was auto-updated before it passed.

>From PR https://github.com/llvm/llvm-project/pull/181097


  Commit: 0d476b1ae4793d0e8cc3d04be1177399947668db
      https://github.com/llvm/llvm-project/commit/0d476b1ae4793d0e8cc3d04be1177399947668db
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

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

  Log Message:
  -----------
  [NFC][ADT] Remove indentation of StringRef class (#183317)

Apply https://llvm.org/docs/CodingStandards.html#namespace-indentation
rule to StringRef class.


  Commit: c57352995bdc4e376babb8d91d3dd7369aefb880
      https://github.com/llvm/llvm-project/commit/c57352995bdc4e376babb8d91d3dd7369aefb880
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/MC/MCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Use inline field initializers in MCAsmInfo. NFC (#183407)

Followup to #183343.


  Commit: dc2dad65764b29b81444b0a2a72a6c3963f0e9b8
      https://github.com/llvm/llvm-project/commit/dc2dad65764b29b81444b0a2a72a6c3963f0e9b8
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/IROutliner/illegal-typeid-for.ll

  Log Message:
  -----------
  [NFC][IROutliner] Add test showing llvm.typeid.for not Outlined (#183406)

This intrinsic is not valid to outline because it relies on
function-local information about types and landing pads during
lowering/codegen. The code is currently correct because the IROutliner
uses the CodeExtractor, which will not extract this intrinsic.

See llvm/llvm-project#38893 (aka llvm.org/PR39545)


  Commit: 564f433083d1f723ee8157afffa1f1313fb596b4
      https://github.com/llvm/llvm-project/commit/564f433083d1f723ee8157afffa1f1313fb596b4
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py

  Log Message:
  -----------
  [lldb/test] Use filecheck_log to read log files from the host platform (#183422)

Some tests were using `self.filecheck` with `platform shell cat {log}`
to validate test behavior through log inspection.

This doesn't work when running the testsuite against a remote platform
since the logs are saved on the host's filesystem.

This patch refactors those call sites to use the new `filecheck_log`
helper, which ensures the log file is always read from the host
platform.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: a703a9153be57e5fad34494d54e3446a9cf51604
      https://github.com/llvm/llvm-project/commit/a703a9153be57e5fad34494d54e3446a9cf51604
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/utils/lit/lit/display.py

  Log Message:
  -----------
  [utils] update type hint for python 3.8-3.9 compatibility (#183427)

Type hints before 3.10 require importing, and are spelled with a leading
capital.


  Commit: d7bd36d7e9f5ed493888672c46ff0ce405d627b0
      https://github.com/llvm/llvm-project/commit/d7bd36d7e9f5ed493888672c46ff0ce405d627b0
  Author: Twice <twice at apache.org>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/Rewrite.cpp
    M mlir/test/python/rewrite.py

  Log Message:
  -----------
  [MLIR][Python] Handle errors in dialect conversion properly (#183320)

Before this, MLIR error capture in `apply_partial_conversion` and
`apply_full_conversion` wasn’t handled, which meant any `emitError`
would crash the entire program. This PR adds the handling.


  Commit: 765c4e6e8fb25ca999bc19654b5f324df62879ad
      https://github.com/llvm/llvm-project/commit/765c4e6e8fb25ca999bc19654b5f324df62879ad
  Author: Jan Kokemüller <jan.kokemueller at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaLambda.cpp
    A clang/test/Modules/pr178893.cppm

  Log Message:
  -----------
  [clang] Don't use `VarDecl` of local variables as `ManglingContextDecl` for lambdas (#179035)

Currently, in a C++20 modules context, a `VarDecl` of a local variable
can wrongly end up as a `ManglingContextDecl` for a lambda.

Fix this by removing `ContextKind::NonInlineInModulePurview` in
`Sema::getCurrentMangleNumberContext` and add
`IsExternallyVisibleInModulePurview` checks in the appropriate places:

- For externally visible functions defined in a module purview, add a
check to `isInInlineFunction`, renaming it to
`IsInFunctionThatRequiresMangling`
- For externally visible variables defined in a module purview, add a
new `ContextKind::ExternallyVisibleVariableInModulePurview` and an
appropriate check to the `VarDecl` case

Fixes #178893

---------

Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
Co-authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>


  Commit: 8f3dd82a0a1fd3395e903c8b44e2e5f9f2118ff5
      https://github.com/llvm/llvm-project/commit/8f3dd82a0a1fd3395e903c8b44e2e5f9f2118ff5
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 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/gpu/amdgpu/entrypoints.txt
    M libc/config/gpu/nvptx/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/config/windows/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/shared/math.h
    A libc/shared/math/asinpif.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/asinpif.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/asinpif.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/asinpif.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/asinpif_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/asinpif_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/asinpif_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math][c23] implement `asinpif` function (#181511)

Implementing `asinpi` for single-precision. it continues what is done in
#152690 that implemented `asinpif16` with header-only approach that is
followed since #147386


  Commit: dd9d242b14d501d3828af1e4d5a0887e23be193e
      https://github.com/llvm/llvm-project/commit/dd9d242b14d501d3828af1e4d5a0887e23be193e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/test/MC/RISCV/rv32p-valid.s
    A llvm/test/MC/RISCV/rv32zcb-zbkb-valid.s
    A llvm/test/MC/RISCV/rv64zcb-zbkb-valid.s

  Log Message:
  -----------
  [RISCV] Treat zext.h as a separate instruction from pack(w) with Zbkb. (#183364)

The Zbb encoding for zext.h is a subset of the encoding for pack(w).

There is a statement in the ISA manual that says "For RV32, the pack
instruction with rs2=x0 is the zext.h instruction. Hence, for RV32, any
extension that contains the pack instruction also contains the zext.h
instruction"

This patch makes the zext.h instruction mnemonic canonical when only
Zbkb is enabled. -Mno-aliases will not disable the printing of zext.h. I
believe this matches binutils.

I've taught the assembler to remap PACK/PACKW to ZEXT_H to make printing
parsed assembly match the disassembler output.


  Commit: 8533889a54907afe8b6ac9d3fb87b640b48d015e
      https://github.com/llvm/llvm-project/commit/8533889a54907afe8b6ac9d3fb87b640b48d015e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-unaligned-load-store.ll

  Log Message:
  -----------
  [RISCV] Partial support for using PPAIRE.B/H to optimize unaligned load sequences. (#183423)

Patterns are based on patterns we use for Zbkb. We can't copy all
patterns because PPAIRE.B/H are a little different than PACKW/PACKH.

PACKW packs the first 16 bits of rs1 and rs2 and sign extends the upper
32 bits of rd. PACKH packs the first 8 bits of rs1 and rs2 and puts
zeros in bits 16 of rd.

PPAIRE.B copies the even bytes of rs1 to the even bytes of rd and copies
the even bytes of rs2 to the odd bytes of rd. PPAIRE.H is similar, but
copys halfwords instead of bytes. We can treat them equivalently to
PACKH/PACKW when we know that we only care about the lower halfword or
word, respectively of the result.


  Commit: d12870ea96befd5b5ec69c753c82a3e4af13e472
      https://github.com/llvm/llvm-project/commit/d12870ea96befd5b5ec69c753c82a3e4af13e472
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    A llvm/test/CodeGen/RISCV/opt-w-instrs-p-ext.mir

  Log Message:
  -----------
  [RISCV] Add MERGE, MVM, and MVMN to isSignExtendedW in RISCVOptWInstrs. (#183433)

These instructions are a combination of AND/OR/XOR which return sign
extended values if all inputs are sign extended.


  Commit: 143664fcd3df825befdb9586151d53aefef3d7d0
      https://github.com/llvm/llvm-project/commit/143664fcd3df825befdb9586151d53aefef3d7d0
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M bolt/test/merge-fdata-bat-no-lbr.test
    M bolt/test/merge-fdata-mixed-bat-no-lbr.test
    M bolt/test/merge-fdata-mixed-mode.test
    M bolt/test/merge-fdata-no-lbr-mode.test
    A bolt/test/merge-fdata-skip-truncated.test
    M bolt/tools/merge-fdata/merge-fdata.cpp

  Log Message:
  -----------
  [BOLT][merge-fdata] Skip truncated lines in raw profile data (#183187)

Raw profile data file may contain lines truncated due to unexpected
app exit. This change is to have merge_fdata check number of fields
in each line of raw profile data file and ignore a line if the number
is not expected.


  Commit: fb371ce258d390716a653b8c63649526b9b5831f
      https://github.com/llvm/llvm-project/commit/fb371ce258d390716a653b8c63649526b9b5831f
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/TreeTransform.h
    A clang/test/SemaCXX/typeid-incomplete-local-crash.cpp

  Log Message:
  -----------
  [clang][Sema] Guard polymorphic check in TransformCXXTypeidExpr for incomplete record types (#180442)

This ensures that when querying the typeid of a record type, it is fully defined.

Fixes #176397
Fixes #63242


  Commit: b7c2dda501b1484b6d069312666fdd3b4d9d16ce
      https://github.com/llvm/llvm-project/commit/b7c2dda501b1484b6d069312666fdd3b4d9d16ce
  Author: Wang Yaduo <wangyaduo at linux.alibaba.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    A clang/test/Driver/print-enabled-extensions/riscv-xt-c910v2.c
    A clang/test/Driver/print-enabled-extensions/riscv-xt-c920v2.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add processor definitions for XuanTie C910V2 and C920V2 (#174056)

XuanTie C910V2 and C920V2 are 64-bit superscalar out-of-order CPUs:
https://www.xrvm.com/community/download?id=4530178488929423360
C910V2 is a C920V2 version without vector, zvfbfmin, zvfbfwma, zvfh and
xtheadvdot extensions.

Scheduling model will be added in a further PR.


  Commit: 0a9d7ffc037489d6047eff8052abdd35d025536c
      https://github.com/llvm/llvm-project/commit/0a9d7ffc037489d6047eff8052abdd35d025536c
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll

  Log Message:
  -----------
  [X86][AVX10] Change MINMAX sign control to select the sign of compare result (#183452)

The imm8[3:2] controls the sign bit behavior. 0b01 represents to select
the sign of compare result, while 0b00 select the sign of Src1.


  Commit: ab0823c9c765972ab62497391df96b10e5b4471f
      https://github.com/llvm/llvm-project/commit/ab0823c9c765972ab62497391df96b10e5b4471f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-25 (Wed, 25 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/RISCV/avgflooru.ll

  Log Message:
  -----------
  [TargetLowering][RISCV] Disable the special illegal type expansion of ISD::AVGFLOORU on RV32 (#181073)

RISC-V doesn't have a carry flag which makes the UADDO expansion
expensive to emulate.

I've disabled the code by checking if UADDO is not supported for the
type that will be legalized too. Unfortunatley, we have custom lowering
of UADDO on RV64 so this doesn't disable this code there.


  Commit: 1ccb026e56774cf5d677eaf7bd06dcdc1ba00c8c
      https://github.com/llvm/llvm-project/commit/1ccb026e56774cf5d677eaf7bd06dcdc1ba00c8c
  Author: David Green <david.green at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/Thumb2/mve-sli-sri.ll

  Log Message:
  -----------
  [ARM] Add sli / sri codegen tests. NFC

These ones are taken from the AArch64 equivalent tests.


  Commit: 5dd160058f68d4df22ead31d8e1fab657e5bb8fc
      https://github.com/llvm/llvm-project/commit/5dd160058f68d4df22ead31d8e1fab657e5bb8fc
  Author: Jaydeep Chauhan <chauhan.jaydeep.ashwinbhai at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-vpmadd52.ll

  Log Message:
  -----------
  [X86] Handle VPMADD52L for smaller min-legal-vector-width (#183250)

There is crash as below https://godbolt.org/z/qdE1EE4Y9, After
https://github.com/llvm/llvm-project/pull/171760 .
```
ReplaceNodeResults: t32: v8i64 = X86ISD::VPMADD52L t10, t22, t2
Do not know how to custom type legalize this operation!
```
For ```"min-legal-vector-width"="512"```, it works fine, but for smaller
value it is crash.


  Commit: c5339b7025863d4e1368c93ec66043cc8a222d2b
      https://github.com/llvm/llvm-project/commit/c5339b7025863d4e1368c93ec66043cc8a222d2b
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/utils/hdrgen/hdrgen/main.py

  Log Message:
  -----------
  [libc] Use response files for hdrgen entry points (#183267)

This avoids the build failure when the command line ends up being too
long which can be especially problematic on Windows.

Fixes #182374


  Commit: 3c566a698ad0cb52ee814156f09ccdfa81266771
      https://github.com/llvm/llvm-project/commit/3c566a698ad0cb52ee814156f09ccdfa81266771
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.ll

  Log Message:
  -----------
  [LV] Fix miscompile with conditional scalar assignment + tail folding (#182492)

Previously, we could miscompile when vectorizing conditional scalar
assignments with forced tail folding, as the backedge select could be
based on the header mask, not the assignment conditional.

This resulted in a number of failures in the LLVM test suite when
building with `-O3 -march=armv8-a+sve -mllvm
-prefer-predicate-over-epilogue=predicate-dont-vectorize`.

The patch reworks `handleFindLastReductions()` to correctly handle tail
folding.


  Commit: 7aa74c918a1e9a9da079a1ba472acc643956dfef
      https://github.com/llvm/llvm-project/commit/7aa74c918a1e9a9da079a1ba472acc643956dfef
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp

  Log Message:
  -----------
  [mlir][vector] Refactor multi-reduction patterns (NFC) (#183048)

Refactor the following patterns to inherit from
`MaskableOpRewritePattern`:
  * `TwoDimMultiReductionToReduction`
  * `TwoDimMultiReductionToElementWise`

This improves code reuse, enables small simplifications, and unifies the
structure of the patterns. Add high-level comments to clarify the
overall lowering strategy.

Prepares for future refactoring (e.g. #182301) and helps maintain a
uniform implementation.


  Commit: 72215a43ad3a0c057785b407b91005cdcd5e3745
      https://github.com/llvm/llvm-project/commit/72215a43ad3a0c057785b407b91005cdcd5e3745
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h

  Log Message:
  -----------
  [DwarfUnit] Fix comment mistake in shouldPlaceInUnitDIE() (#183481)

Subprogram definition DIEs (for which `SP->getDeclaration() != nullptr`)
are placed at the CU scope, while subprogram declaration DIEs are placed
in their corresponding (local) scopes.


  Commit: ede6ef4de3ca48c2198635052673f212a2247adc
      https://github.com/llvm/llvm-project/commit/ede6ef4de3ca48c2198635052673f212a2247adc
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c

  Log Message:
  -----------
  [CIR][AArch64] Add lowering + tests for predicated SVE svdup_lane builtins (#183276)

This PR adds CIR lowering + tests for SVE `svdup_lane` builtins on
AArch64. The corresponding ACLE intrinsics are documented at:
https://developer.arm.com/architectures/instruction-sets/intrinsics


  Commit: 0d8b3362f821c1b6ee11668c64441bf3a4b6ecdc
      https://github.com/llvm/llvm-project/commit/0d8b3362f821c1b6ee11668c64441bf3a4b6ecdc
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Utility/AnsiTerminal.h
    M lldb/unittests/Utility/AnsiTerminalTest.cpp

  Log Message:
  -----------
  [lldb] Fix partial Unicode handling in TrimAndPad (#183299)

This fixes an issue I found while writing a variant of TrimAndPad for
word wrapping purposes.

TrimAndPad relies on llvm::sys::locale::ColumnWidth returning an error
value, when there is a partial uft8 character. This error code is
ErrorInvalidUTF8, which is -2.

The idea was that when you cast that into a size_t, it was always going
to be larger than our target visible width.

The check for this was:
result_visibile_length + column_width <= visible_length

Where result_visible_length and column_width are size_ts.

And the idea is correct, as long as result_visible_width is not large
enough to cause the result to wrap to be lower than visible_length.

In other words: when we have accumulated some part of the string
already, if we have to trim the next part, sometimes we would return an
incomplete Unicode character. When we should instead carry on trimming.

To fix this, I've made TrimAndPad check explicitly for the error code.
Only if it's not found, will it cast to do the second check.


  Commit: bc653c4f21d5ccaa884715d3faa84ef1c4761598
      https://github.com/llvm/llvm-project/commit/bc653c4f21d5ccaa884715d3faa84ef1c4761598
  Author: Romaric Jodin <rjodin at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libclc/opencl/lib/clspv/SOURCES

  Log Message:
  -----------
  [libclc] add subnormals back to clspv (#183469)


  Commit: 7a2bb5ff76fc7c5db1ceb79aa18027512fb20ab2
      https://github.com/llvm/llvm-project/commit/7a2bb5ff76fc7c5db1ceb79aa18027512fb20ab2
  Author: Ryan Cowan <ryan.cowan at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    A llvm/test/CodeGen/AArch64/complex-deinterleaving-opt-crash-178671.ll

  Log Message:
  -----------
  [AArch64] ComplexDeinterleavingPass: instruction does not dominate all uses! (#182494)

https://github.com/llvm/llvm-project/issues/178671 highlights IR in
which ComplexDeinterleavingPass places a deinterleave2 after it's use
due to the real and imaginary parts ending up in different basic blocks.
This change modifies ComplexDeinterleavingPass to to insert the 
deinterleave into the exit block.


  Commit: 850b0457b232fd4b6cfeaee97e51a7426d48f85d
      https://github.com/llvm/llvm-project/commit/850b0457b232fd4b6cfeaee97e51a7426d48f85d
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.h
    R lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCoreProperties.td
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  Revert "[lldb][Process/FreeBSDKernelCore] Implement DoWriteMemory()" (#183485)

Reverts llvm/llvm-project#183237

This was landed without addressing review comments.


  Commit: 6d7ec4b7c3a7bd85f19e71a5fc8253c47651bfe8
      https://github.com/llvm/llvm-project/commit/6d7ec4b7c3a7bd85f19e71a5fc8253c47651bfe8
  Author: Aadarsh Keshri <120744385+Aadarsh-Keshri at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  [DAG] Improved ISD::SHL handling in isKnownToBeAPowerOfTwo (#181882)

Fixes  #181650


  Commit: 67ac275fee185e271b7ab2bcc2fe7da79dfa9b48
      https://github.com/llvm/llvm-project/commit/67ac275fee185e271b7ab2bcc2fe7da79dfa9b48
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/Maintainers.md
    M mlir/docs/TargetLLVMIR.md
    A mlir/include/mlir-c/Dialect/X86.h
    R mlir/include/mlir-c/Dialect/X86Vector.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/CMakeLists.txt
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
    A mlir/include/mlir/Dialect/X86/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86/TransformOps/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86/TransformOps/X86TransformOps.h
    A mlir/include/mlir/Dialect/X86/TransformOps/X86TransformOps.td
    A mlir/include/mlir/Dialect/X86/Transforms.h
    A mlir/include/mlir/Dialect/X86/Utils/X86Utils.h
    A mlir/include/mlir/Dialect/X86/X86.td
    A mlir/include/mlir/Dialect/X86/X86Dialect.h
    A mlir/include/mlir/Dialect/X86/X86Interfaces.td
    R mlir/include/mlir/Dialect/X86Vector/CMakeLists.txt
    R mlir/include/mlir/Dialect/X86Vector/TransformOps/CMakeLists.txt
    R mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.h
    R mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    R mlir/include/mlir/Dialect/X86Vector/Transforms.h
    R mlir/include/mlir/Dialect/X86Vector/Utils/X86VectorUtils.h
    R mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    R mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    R mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/lib/CAPI/Dialect/CMakeLists.txt
    A mlir/lib/CAPI/Dialect/X86.cpp
    R mlir/lib/CAPI/Dialect/X86Vector.cpp
    M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
    M mlir/lib/Dialect/CMakeLists.txt
    M mlir/lib/Dialect/Math/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    M mlir/lib/Dialect/Vector/TransformOps/CMakeLists.txt
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    A mlir/lib/Dialect/X86/CMakeLists.txt
    A mlir/lib/Dialect/X86/IR/CMakeLists.txt
    A mlir/lib/Dialect/X86/IR/X86Dialect.cpp
    A mlir/lib/Dialect/X86/TransformOps/CMakeLists.txt
    A mlir/lib/Dialect/X86/TransformOps/X86TransformOps.cpp
    A mlir/lib/Dialect/X86/Transforms/AVXTranspose.cpp
    A mlir/lib/Dialect/X86/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86/Transforms/LegalizeForLLVMExport.cpp
    A mlir/lib/Dialect/X86/Transforms/ShuffleVectorFMAOps.cpp
    A mlir/lib/Dialect/X86/Transforms/SinkVectorProducerOps.cpp
    A mlir/lib/Dialect/X86/Transforms/VectorContractBF16ToFMA.cpp
    A mlir/lib/Dialect/X86/Transforms/VectorContractToFMA.cpp
    A mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
    A mlir/lib/Dialect/X86/Utils/CMakeLists.txt
    A mlir/lib/Dialect/X86/Utils/X86Utils.cpp
    R mlir/lib/Dialect/X86Vector/CMakeLists.txt
    R mlir/lib/Dialect/X86Vector/IR/CMakeLists.txt
    R mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    R mlir/lib/Dialect/X86Vector/TransformOps/CMakeLists.txt
    R mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/AVXTranspose.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/ShuffleVectorFMAOps.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/SinkVectorProducerOps.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/VectorContractBF16ToFMA.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/VectorContractToFMA.cpp
    R mlir/lib/Dialect/X86Vector/Transforms/VectorContractToPackedTypeDotProduct.cpp
    R mlir/lib/Dialect/X86Vector/Utils/CMakeLists.txt
    R mlir/lib/Dialect/X86Vector/Utils/X86VectorUtils.cpp
    M mlir/lib/RegisterAllDialects.cpp
    M mlir/lib/RegisterAllExtensions.cpp
    M mlir/python/CMakeLists.txt
    A mlir/python/mlir/dialects/X86.td
    A mlir/python/mlir/dialects/X86TransformOps.td
    R mlir/python/mlir/dialects/X86Vector.td
    R mlir/python/mlir/dialects/X86VectorTransformOps.td
    A mlir/python/mlir/dialects/transform/x86.py
    R mlir/python/mlir/dialects/transform/x86vector.py
    A mlir/python/mlir/dialects/x86.py
    R mlir/python/mlir/dialects/x86vector.py
    M mlir/test/CMakeLists.txt
    M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir
    M mlir/test/Dialect/Math/polynomial-approximation.mlir
    M mlir/test/Dialect/Vector/CPU/X86/vector-transpose-lowering.mlir
    A mlir/test/Dialect/X86/cvt-packed-f32-to-bf16.mlir
    A mlir/test/Dialect/X86/dot-bf16.mlir
    A mlir/test/Dialect/X86/legalize-for-llvm.mlir
    A mlir/test/Dialect/X86/roundtrip.mlir
    A mlir/test/Dialect/X86/shuffle-vector-fmas.mlir
    A mlir/test/Dialect/X86/sink-vector-producer-ops.mlir
    A mlir/test/Dialect/X86/vector-contract-bf16-to-fma.mlir
    A mlir/test/Dialect/X86/vector-contract-to-fma.mlir
    A mlir/test/Dialect/X86/vector-contract-to-packed-type-dotproduct.mlir
    R mlir/test/Dialect/X86Vector/cvt-packed-f32-to-bf16.mlir
    R mlir/test/Dialect/X86Vector/dot-bf16.mlir
    R mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    R mlir/test/Dialect/X86Vector/roundtrip.mlir
    R mlir/test/Dialect/X86Vector/shuffle-vector-fmas.mlir
    R mlir/test/Dialect/X86Vector/sink-vector-producer-ops.mlir
    R mlir/test/Dialect/X86Vector/vector-contract-bf16-to-fma.mlir
    R mlir/test/Dialect/X86Vector/vector-contract-to-fma.mlir
    R mlir/test/Dialect/X86Vector/vector-contract-to-packed-type-dotproduct.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/dot.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/inline-asm-vector-avx512.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/lit.local.cfg
    A mlir/test/Integration/Dialect/Vector/CPU/X86/mask-compress.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/rsqrt.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/sparse-dot-product.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/X86/vp2intersect-i32.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/dot.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/inline-asm-vector-avx512.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/lit.local.cfg
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/mask-compress.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/rsqrt.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/sparse-dot-product.mlir
    R mlir/test/Integration/Dialect/Vector/CPU/X86Vector/vp2intersect-i32.mlir
    A mlir/test/Target/LLVMIR/x86.mlir
    R mlir/test/Target/LLVMIR/x86vector.mlir
    M mlir/test/lib/Dialect/Math/CMakeLists.txt
    M mlir/test/lib/Dialect/Math/TestPolynomialApproximation.cpp
    M mlir/test/lib/Dialect/Vector/CMakeLists.txt
    M mlir/test/lit.site.cfg.py.in
    M mlir/test/mlir-opt/commandline.mlir
    A mlir/test/mlir-runner/X86/lit.local.cfg
    A mlir/test/mlir-runner/X86/math-polynomial-approx-avx2.mlir
    R mlir/test/mlir-runner/X86Vector/lit.local.cfg
    R mlir/test/mlir-runner/X86Vector/math-polynomial-approx-avx2.mlir
    A mlir/test/python/dialects/transform_x86_ext.py
    R mlir/test/python/dialects/transform_x86vector_ext.py
    A mlir/test/python/dialects/x86.py
    R mlir/test/python/dialects/x86vector.py

  Log Message:
  -----------
  [mlir][x86] Rename x86vector to x86 (#183311)

Renames 'x86vector' dialect to 'x86'.

This is the first PR in series of cleanups around dialects targeting x86
platforms.
The new naming scheme is shorter, cleaner, and opens possibility of
integrating other x86-specific operations not strictly fitting pure
vector representation. For example, the generalization will allow for
future merger of AMX dialect into the x86 dialect to create one-stop x86
operations collection and boost discoverability.


  Commit: bff5ef6b232d9c7459dee333c09e70e9f965e5a1
      https://github.com/llvm/llvm-project/commit/bff5ef6b232d9c7459dee333c09e70e9f965e5a1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/funnel-shift-i512.ll

  Log Message:
  -----------
  [X86] Add i512 funnel shift / rotate test coverage (#183486)


  Commit: ec585757a1c2a1b10730252ae904b3f74bd8bd65
      https://github.com/llvm/llvm-project/commit/ec585757a1c2a1b10730252ae904b3f74bd8bd65
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsInstrFPU.td
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/test/CodeGen/Mips/fabs.ll
    M llvm/test/CodeGen/Mips/fmadd1.ll
    M llvm/test/CodeGen/Mips/llvm-ir/nan-fp-attr.ll

  Log Message:
  -----------
  [Mips] Remove NoNaNsFPMath uses (#183045)

Remove `NoNaNsFPMath` by using `PatFrag`, we should only use `nnan`.
Duplicate tests in `CodeGen/Mips/llvm-ir/nan-fp-attr.ll` are removed.


  Commit: 230481c3db95e93736d1e3cd49d7bbf16f9a2d15
      https://github.com/llvm/llvm-project/commit/230481c3db95e93736d1e3cd49d7bbf16f9a2d15
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp

  Log Message:
  -----------
  CodeGen: Change error messages to follow phrasing guidance (#183488)

Avoid contractions and starting with a capital. These seem to be
missing tests.


  Commit: 23dffff41070af5c9447aa5d9fc4f7eceb0f4743
      https://github.com/llvm/llvm-project/commit/23dffff41070af5c9447aa5d9fc4f7eceb0f4743
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Utility/AnsiTerminal.h
    M lldb/test/API/commands/help/TestHelp.py
    M lldb/unittests/Utility/AnsiTerminalTest.cpp

  Log Message:
  -----------
  [lldb] Fix issues handling ANSI codes and Unicode in option help (#183314)

Fixes #177570, and a bunch of FIXMEs for other tests known to be
incorrect.

To do this, I have adapted code from the existing ansi::TrimAndPad. At
first I tried a wrapper function, but there's a few things we need to
handle that cannot be done with a simple wrapper.

We must only split at word boundaries. This requires knowing whether the
last adjustment, which may be the final adjustment, was made at, or just
before, a word boundary. Also it must check for single words wider than
the requested width (though this you could do with a wrapper).

For this reason, the new TrimAtWordBoundary has more special case checks
and a more complex inner loop. Though the core is the same split into
left, ansi escape code and right that TrimAndPad uses.

It is that splitting that implements the "bias" we need to print
correctly formatted characters. When you have a preceeding ANSI code,
this must be included in the printed range, same for proceeding.
TrimAndPad already handled this, and I've copied that logic over.

TrimAndPad also used Unicode aware functions, which fixes the known
issues with Unicode (though no command option actually uses Unicode at
the moment).

This PR replaces PR #181860, where I tried to implement all this using a
strategy that used "visible indexes" to decide where to cut the lines,
and then converted those into "actual indexes" to know what to print.

This worked for most cases, but adding the "bias" was very complex. The
preceeding codes were quite easy to do, but proceeding proved to be too
complex.

I also had the feeling I was revinventing TrimAndPad and though it
didn't turn out to be that simple, it wasn't far off.

As the majority of the work is now done in TrimAtWordBoundary, I have
reused some existing OutputWordWrappedLines tests for the new function.


  Commit: b101f01382d6ff53cebeedbcbf114d02947b10ce
      https://github.com/llvm/llvm-project/commit/b101f01382d6ff53cebeedbcbf114d02947b10ce
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__iterator/ostreambuf_iterator.h
    M libcxx/include/__locale_dir/pad_and_output.h
    A libcxx/test/benchmarks/streams/copy.bench.cpp
    M libcxx/test/libcxx/algorithms/specialized_algorithms.compile.pass.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ostreambuf.copy.pass.cpp
    M libcxx/test/support/stream_types.h

  Log Message:
  -----------
  [libc++] Optimize using std::copy with an ostreambuf_iterator (#181815)

```
Benchmark                                                  old             new    Difference    % Difference
----------------------------------------------  --------------  --------------  ------------  --------------
std::copy(CharT*,_CharT*,_ostreambuf_iterator)         8115.45          329.54      -7785.91         -95.94%
```


  Commit: d46a400767199b24b9cf26ba6d1d00001df8d38c
      https://github.com/llvm/llvm-project/commit/d46a400767199b24b9cf26ba6d1d00001df8d38c
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/fma-combine.ll

  Log Message:
  -----------
  [PowerPC] Remove `NoSignedZerosFPMath` uses (#180087)

Users should use `nsz` flag only.


  Commit: ff5dcb1bc58930b8beefb40a04c64bfcfe348162
      https://github.com/llvm/llvm-project/commit/ff5dcb1bc58930b8beefb40a04c64bfcfe348162
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [SPIRV] Simplify `selectPhi` and remove unreachable code (#183060)

Before it created a `OpPhi` with a Type argument, to immediately remove
this Type and change the opcode to `PHI`.

Only `TargetOpcode::PHI` get to `SPIRVTargetLowering::finalizeLowering`.

The `TargetOpcode::PHI` gets lowered to `SPIRV::OpPhi` much later, by
`patchPhi` in the `SPIRVModuleAnalysis`.

`SPIRVModuleAnalysis` is requested by the
`SPIRVAsmPrinter` through `getAnalysisUsage` (which is ugly).
```


  Commit: 90b3fd71013a010e3bbcaf9f06b8bad32947da29
      https://github.com/llvm/llvm-project/commit/90b3fd71013a010e3bbcaf9f06b8bad32947da29
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [DAG] Move (X +/- Y) & Y --> ~X & Y fold from visitAnd to SimplifyDemandedBits (#183270)

Add DemandedElts handling to allow better vector support

To prevent RISCV falling back to a mul call in known-never-zero.ll I've
had to tweak the (mul step_vector(C0), C1) to (step_vector(C0 * C1))
fold to only occur if C0 is already non-power-of-2, C0 * C1 is a
power-of-2 or the target has good mul support.


  Commit: cd68939326ed073ad6d50e034310cc295eddd72e
      https://github.com/llvm/llvm-project/commit/cd68939326ed073ad6d50e034310cc295eddd72e
  Author: David Stuttard <david.stuttard at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll

  Log Message:
  -----------
  [AMDGPU] Add attribute for FWD_PROGRESS (#181675)

Added an attribute for FWD_PROGRESS that allows it to be
turned off for some shaders.


  Commit: f02c6ea833a6953be593500ff248c843d5179b04
      https://github.com/llvm/llvm-project/commit/f02c6ea833a6953be593500ff248c843d5179b04
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/AMDGPU/nofpclass-amdgcn-trig-preop.ll

  Log Message:
  -----------
  AMDGPU: llvm.amdgcn.trig.preop cannot return negative values (#183306)

This returns a positive value less than 1.


  Commit: 32b8b9ba1e22e4d2bde05a8a1284531702908f7c
      https://github.com/llvm/llvm-project/commit/32b8b9ba1e22e4d2bde05a8a1284531702908f7c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/X86/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/lcssa-crashes.ll
    M llvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll

  Log Message:
  -----------
  [VPlan] Simplify ExitingIVValue and use for tail-folded IVs. (#182507)

Now that we have ExitingIVValue, we can also use it for tail-folded
loops; the only difference is that we have to compute the end value with
the original trip count instead the vector trip count.

This allows removing the induction increment operand only used when
tail-folding.

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


  Commit: 254cb2a32649098b11edaac2cc6eb31ea9bfe117
      https://github.com/llvm/llvm-project/commit/254cb2a32649098b11edaac2cc6eb31ea9bfe117
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/PostRAHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir

  Log Message:
  -----------
  [AMDGPU] Hoist WMMA coexecution hazard V_NOPs from loops to preheaders (#176895)

On GFX1250, V_NOPs inserted for WMMA coexecution hazards are placed at
the use-site. When the hazard-consuming instruction is inside a loop and
the WMMA is outside, these NOPs execute every iteration even though the
hazard only needs to be covered once.

This patch hoists the V_NOPs to the loop preheader, reducing executions
from N iterations to 1.

```
Example (assuming a hazard requiring K V_NOPs):
  Before:
    bb.0 (preheader): WMMA writes vgpr0
    bb.1 (loop):      V_NOP xK, VALU reads vgpr0, branch bb.1
                      -> K NOPs executed per iteration

  After:
    bb.0 (preheader): WMMA writes vgpr0, V_NOP xK
    bb.1 (loop):      VALU reads vgpr0, branch bb.1
                      -> K NOPs executed once
```

For nested loops, V_NOPs are hoisted to the outermost preheader where no
WMMA hazard exists within the loop.
Hoisting is restricted to strict preheaders (not any single predecessor)
to avoid introducing V_NOPs on unrelated control flow paths.

The optimization is controlled by `-amdgpu-wmma-vnop-hoisting` (default:
on).

Fixes: SWDEV-573407


  Commit: d8ce0e729997f7b49bd291388b901613cc678bdd
      https://github.com/llvm/llvm-project/commit/d8ce0e729997f7b49bd291388b901613cc678bdd
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.h

  Log Message:
  -----------
  [flang][OpenMP] Inline CheckNestedBlock, NFC (#181732)

CheckNestedBlock no longer calls itself, which was the primary reason
for the code to be in a separate function.


  Commit: bfa3da861342372bbfd7ee8e2d80bc52feb8d57e
      https://github.com/llvm/llvm-project/commit/bfa3da861342372bbfd7ee8e2d80bc52feb8d57e
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Record.cpp
    M clang/lib/AST/ByteCode/Record.h

  Log Message:
  -----------
  [clang][bytecode] Optimize `interp::Record` a bit (#183494)

And things around it.

Remove the `FieldMap`, since we can use the field's index instead and
only keep an array around. `reserve()` the sizes and use
`emplace_back()`.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll

  Log Message:
  -----------
  [VPlan] Limit interleave group narrowing to consecutive wide loads.

Tighten check in canNarrowLoad to require consecutive wide loads; we
cannot properly narrow gathers at the moment.

Fixe https://github.com/llvm/llvm-project/issues/183345.


  Commit: b7989de510ef17af1e7853632ee220bd7d9c09b1
      https://github.com/llvm/llvm-project/commit/b7989de510ef17af1e7853632ee220bd7d9c09b1
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/test/shared/CMakeLists.txt

  Log Message:
  -----------
  [libc][math] Disable shared math tests on AArch64


  Commit: 841d5111bfdcb8fb1ba8d2ebd3c18005c063fab8
      https://github.com/llvm/llvm-project/commit/841d5111bfdcb8fb1ba8d2ebd3c18005c063fab8
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    A llvm/test/Transforms/SimplifyCFG/AArch64/switch-to-lookup-table-vector-constants.ll
    R llvm/test/Transforms/SimplifyCFG/AArch64/switch-to-lookup-table-vector-splat.ll

  Log Message:
  -----------
  [LLVM][SimplifyCFG] Allow switch-to-table for some vector constants. (#183057)

Only applies to fixed length vector constants that are made up of either
ConstantInt or ConstantFP elements.


  Commit: ffc8780d1aedb866c7ba62dc820ba51ed8d62d18
      https://github.com/llvm/llvm-project/commit/ffc8780d1aedb866c7ba62dc820ba51ed8d62d18
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Affine/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/ArmNeon/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/ArmSME/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/ArmSVE/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/Bufferization/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/DLTI/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/Func/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Func/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/GPU/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/GPU/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Linalg/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/MemRef/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/MemRef/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/SCF/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/SPIRV/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tensor/TransformOps/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tosa/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/DebugExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/IRDLExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/LoopExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/PDLExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/SMTExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/TuneExtension/CMakeLists.txt
    M mlir/include/mlir/Dialect/Vector/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/XeGPU/TransformOps/CMakeLists.txt

  Log Message:
  -----------
  [MLIR] Fix mlir-doc build failures by adding -dialect to add_mlir_doc calls

Add -dialect=<name> to all add_mlir_doc() calls that were missing it, fixing
failures after a8f2e80d5fe3 made findDialectToGenerate() require -dialect when
multiple dialects are present in a .td file.


  Commit: 327f06053599a2cfc9692ca7d5ce3283ce206cf8
      https://github.com/llvm/llvm-project/commit/327f06053599a2cfc9692ca7d5ce3283ce206cf8
  Author: Abhijeet <abhijeetsharma2002 at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [DAG] Fix OrZero in isKnownToBeAPowerOfTwo ISD::AND (#182934)

Fixes #181653


  Commit: d3f69024a54fb95ebf95dc7ed36750ff33f6fa1e
      https://github.com/llvm/llvm-project/commit/d3f69024a54fb95ebf95dc7ed36750ff33f6fa1e
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
    M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
    M mlir/test/Dialect/Arith/canonicalize.mlir
    M mlir/test/Dialect/Arith/ops.mlir

  Log Message:
  -----------
  [mlir][arith] Add `nneg` to index_castui. (#183383)

Follow up to #183165

`nneg` is added to `arith.index_castui`. 

> When the `nneg` flag is present, the operand is assumed to be
non-negative.
> In this case, zero extension is equivalent to sign extension. When
this
>    assumption is violated, the result is poison.

* Updates op definition to add assembly format and `nneg` flag.
* Updates canonicalization patterns to take into account `nneg` in
`arith.index_castui`.
* Updates arith-to-llvm lowering to preserve `nneg` when lowering
`arith.index_castui` to `zext`
* Adds roundtrip, canonicalization, and lowering tests

Assisted-by: claude

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: ff3e4a6fa3fd07a63f63b0fec87106caa38f972a
      https://github.com/llvm/llvm-project/commit/ff3e4a6fa3fd07a63f63b0fec87106caa38f972a
  Author: Gergo Stomfai <stomfaig at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-binop.ll

  Log Message:
  -----------
  [InstCombine] Fold shift of boolean zext to logic sequence (#180596)

Alive2 proofs:
- `eq` case: 
  https://alive2.llvm.org/ce/z/09hPk-
- `ne` case:
  https://alive2.llvm.org/ce/z/zrof4X

Resolves llvm/llvm-project#180492


  Commit: 58e3eae2b3592113b32d9af94ff7fe1ffeb1df81
      https://github.com/llvm/llvm-project/commit/58e3eae2b3592113b32d9af94ff7fe1ffeb1df81
  Author: Emilio Cota <ecg at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [bazel] Fix build for 67ac275 (#183510)


  Commit: aa3d6b37c7945bfb4c261dd994689de2a2de25bf
      https://github.com/llvm/llvm-project/commit/aa3d6b37c7945bfb4c261dd994689de2a2de25bf
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/test/AST/ByteCode/codegen-constexpr-unknown.cpp

  Log Message:
  -----------
  [clang][bytecode] Attach block scope variables to the root scope (#183279)

... if we don't have a block scope available. This can happen in
`EvalEmitter` scenarios and can cause local variable blocks to be
prematurely converted to dead blocks. Attach `ScopeKind::Block` variable
to the root scope instead.


  Commit: 9ec7b025cf1806c4d1a9ab7541c7695e7453558f
      https://github.com/llvm/llvm-project/commit/9ec7b025cf1806c4d1a9ab7541c7695e7453558f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    A llvm/test/Transforms/JumpTableToSwitch/stats.ll

  Log Message:
  -----------
  [JTS] Add statistics (#183431)

This patch adds some statistics to the jump-table-to-switch pass. This
will make it easier to see in aggregate how changing the profitability
heuristics impacts how often the optimization fires.


  Commit: 7516bc1a57d4e07c25f62b3d35573617648f82ca
      https://github.com/llvm/llvm-project/commit/7516bc1a57d4e07c25f62b3d35573617648f82ca
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/vector-shuffle-concatenation.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll

  Log Message:
  -----------
  [X86] Clearout unused FALLBACK check prefixes from vector extension/concatenation tests. NFC. (#183527)

These were used before update_llc_test_checks reported when we had lost check coverage - we've cleaned up a lot of check prefixes since then


  Commit: fad15b9b12b71a6f900329224d24dbaecbed99f8
      https://github.com/llvm/llvm-project/commit/fad15b9b12b71a6f900329224d24dbaecbed99f8
  Author: idubinov <idubinov at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/exp10-glsl.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/exp10-opencl.ll

  Log Message:
  -----------
  [SPIR-V] Add lowering for G_FEXP10 (#182466)

Use opencl exp10 and exp10(x) = exp2(x * log2(10)) formula for GLSL


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-and-casts.ll
    M llvm/test/Transforms/LoopVectorize/pr128062-interleaved-accesses-narrow-group.ll

  Log Message:
  -----------
  [VPlan] Extend interleave-group-narrowing to WidenCast (#183204)

WidenCast is very similar to Widen recipes.

Fixes #128062.


  Commit: 8b41ad4430537e595ea82e0c84de9a24ee20ca1f
      https://github.com/llvm/llvm-project/commit/8b41ad4430537e595ea82e0c84de9a24ee20ca1f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-accesslist-offsetbins-out-of-sync.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-flat-scratch-init-asan.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-trap-leaf.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/annotate-existing-abi-attributes.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-max-num-workgroups-propagate.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
    M llvm/test/CodeGen/AMDGPU/attributor-loop-issue-58639.ll
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/propagate-amdgpu-cluster-dims.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/Transforms/PhaseOrdering/AMDGPU/infer-address-space.ll

  Log Message:
  -----------
  AMDGPU: Stop adding uniform-work-group-size=false (#183502)

This is one of the string attributes that takes a boolean
value for no reason. There is no point in ever writing this
with an explicit false. Stop adding the noise and reporting
an unnecessary change.


  Commit: 7ed40b525937ba59284d1f1a4bb7fcc3f129190d
      https://github.com/llvm/llvm-project/commit/7ed40b525937ba59284d1f1a4bb7fcc3f129190d
  Author: Ryan Cowan <ryan.cowan at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/aarch64-inline-asm-bitcast-crash.ll

  Log Message:
  -----------
  [AArch64] When lowering 16 bit vector bitcasts, convert to i16. (#178249)

https://github.com/llvm/llvm-project/issues/173483 constrains some
registers to be f16. A bitcast is inserted to bitcast a v2i8 to an f16
due to this constrain. Eventually this bitcast is routed through
`LowerBITCAST` due to the type being illegal. This would cause a crash.
By converting this v2i8 to an i16, we can continue to use the existing
path to lower the bitcast.


  Commit: a10e77b1a52f56c3c5fd16631a024441ac7c805e
      https://github.com/llvm/llvm-project/commit/a10e77b1a52f56c3c5fd16631a024441ac7c805e
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/environment.h
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/environment.cpp
    M flang/docs/RuntimeEnvironment.md

  Log Message:
  -----------
  [flang][runtime] Conditionally fail empty ALLOCATE (#182918)

Add an environment variable (FORT_NO_EMPTY_ALLOCATION) that, when set to
1, changes the behavior of an ALLOCATE statement so that it will fail on
an empty allocation rather than its default behavior of allocating one
byte.


  Commit: b56137d2a074a52ef49c405195104dd7f1192d03
      https://github.com/llvm/llvm-project/commit/b56137d2a074a52ef49c405195104dd7f1192d03
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/test/CodeGen/AMDGPU/convergent.mir

  Log Message:
  -----------
  [AMDGPU] Ensure all DPP instructions are convergent (#183334)

All DPP instructions in AMDGPUGenInstrInfo.inc are verified to now be
marked as convergent. This is necessary to prevent DPP instructions from
being incorrectly sunk by machine-sink.

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: b313988735105d2664a87d6d1444a57414002d14
      https://github.com/llvm/llvm-project/commit/b313988735105d2664a87d6d1444a57414002d14
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    M flang/test/Semantics/call03.f90

  Log Message:
  -----------
  [flang] Catch missed error cases of assumed-rank actual arguments (#182932)

Assumed-rank actual arguments are acceptable to some intrinsic
procedures, and for association with assumed-rank dummy arguments, but
other cases are not allowed. We catch some, namely ELEMENTAL callees and
CHARACTER arguments, but not the general case error of an assumed-rank
array being associated with a non-assumed-rank dummy.


  Commit: 1c2e9b1ea680ef4d37c409f78a6b6b25eef5d25f
      https://github.com/llvm/llvm-project/commit/1c2e9b1ea680ef4d37c409f78a6b6b25eef5d25f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
    M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
    M llvm/test/CodeGen/X86/midpoint-int-vec-512.ll

  Log Message:
  -----------
  [X86] Clearout unused FALLBACK check prefixes from vector midpoint tests. NFC. (#183534)

These were used before update_llc_test_checks reported when we had lost
check coverage - we've cleaned up a lot of check prefixes since then


  Commit: cbcaae2b5c33ef316f25538bc5cb4c88b71d2f22
      https://github.com/llvm/llvm-project/commit/cbcaae2b5c33ef316f25538bc5cb4c88b71d2f22
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-io.h
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/io16.f90

  Log Message:
  -----------
  [flang] Warn about assumed-rank items in I/O lists (#182957)

An assumed-rank dummy argument is not a conforming I/O list or NAMELIST
group item. Add a -pedantic warning and some documentation.


  Commit: 0d6f6584622fee13f003bc4be8fe21532163ba40
      https://github.com/llvm/llvm-project/commit/0d6f6584622fee13f003bc4be8fe21532163ba40
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/call01.f90

  Log Message:
  -----------
  [flang] Catch recursive call to non_recursive ENTRY (#182971)

The check for a recursive call to a non-recursive subprogram doesn't
allow for the case of an alternate ENTRY point.


  Commit: 62d473bd01192157493e5bc96e4a8d299ce2594d
      https://github.com/llvm/llvm-project/commit/62d473bd01192157493e5bc96e4a8d299ce2594d
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/test/CIR/CodeGenCXX/global-refs.cpp

  Log Message:
  -----------
  [CIR] Implement 1 more global-ref variable fixup (#183403)

This is related to #182608, and I discovered this doing something else.
This patch adds 1 missing call/removes 1 NYI to get references to a
global reference that weren't caught elsewhere to correctly codegen.


  Commit: 35db91c0d8295b8cef3d27502a4354ff8f508075
      https://github.com/llvm/llvm-project/commit/35db91c0d8295b8cef3d27502a4354ff8f508075
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/include/flang/Common/format.h
    M flang/test/Semantics/io08.f90

  Log Message:
  -----------
  [flang] Catch empty nested parenthsized format item list (#183097)

While a completely empty format item list is meaningful -- it does
nothing when there are no data items -- an empty nested parenthesized
format item list is neither conforming nor useful, and will cause a
runtime error if it is interpreted as unlimited repetition. We
essentially catch these cases as parsing errors when they appear in a
FORMAT statement, but the format string checker used for character
constants is missing them.


  Commit: cfa7ba7d7c01d75a2267b362cb5179e36ab585a8
      https://github.com/llvm/llvm-project/commit/cfa7ba7d7c01d75a2267b362cb5179e36ab585a8
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    M mlir/test/Target/SPIRV/tosa-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add 6 Element Binary operators to TOSA Ext Inst Set (#179627)

This patch introduces the following element binary operators:
* spirv.Tosa.Add
* spirv.Tosa.ArithmeticRightShift
* spirv.Tosa.BitwiseAnd
* spirv.Tosa.BitwiseOr
* spirv.Tosa.BitwiseXor
* spirv.Tosa.IntDiv

Also dialect and serialization round-trip tests have been added.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: a8198bdd91f5daf751627c8b759680470979c26b
      https://github.com/llvm/llvm-project/commit/a8198bdd91f5daf751627c8b759680470979c26b
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp

  Log Message:
  -----------
  [mlir][SPIRV][NFC] Refactor getElementTypeForStoragePointer for load/store lowering. (#183459)

The revision refactors the repeated logic for extracting the storage
element type from a SPIR-V pointer type into a shared helper function.
This pattern was duplicated in AtomicRMWOpPattern, LoadOpPattern, and
StoreOpPattern.

The helper handles both Kernel capability (direct array/scalar) and
Vulkan (struct-wrapped array/runtime array) cases.

It is a follow-up for
https://github.com/llvm/llvm-project/commit/f80205becd384e73e3dfc6ece97297ab1e8a35f9

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 8a7e718a789666dfec784c611b837cf9f0e2511a
      https://github.com/llvm/llvm-project/commit/8a7e718a789666dfec784c611b837cf9f0e2511a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Evaluate/characteristics.cpp
    M flang/test/Semantics/associated.f90
    A flang/test/Semantics/bug2273.f90

  Log Message:
  -----------
  [flang] Silence confusing spurious error message (#183105)

The procedure characterization module unconditionally emits a "'foobar'
is not a procedure" when asked to analyze a symbol that is, well, not a
procedure -- even when called with a flag to suppress errors from
analysis, since the calling context is going to handle failure. This
leads to some error messages that have source positions completely
unrelated to the symbol in question. Make this error sensitive to the
suppression flag.


  Commit: 9d075d271ff15ec153ada3413d294540206a15ed
      https://github.com/llvm/llvm-project/commit/9d075d271ff15ec153ada3413d294540206a15ed
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/mod-file.cpp
    M flang/test/Driver/intrinsic-module-path.f90
    A flang/test/Semantics/Inputs/modfile83.mod
    A flang/test/Semantics/modfile83.f90

  Log Message:
  -----------
  [flang] Fail more gracefully when asked to read a bogus module file (#183119)

Flang-new emits a torrent of Fortran tokenization error messages when
asked to read a module file from another compiler. Handle this case with
a better error message.


  Commit: 67eb750225e331c22c924145605b4a0b9ab25427
      https://github.com/llvm/llvm-project/commit/67eb750225e331c22c924145605b4a0b9ab25427
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang-rt/lib/runtime/descriptor-io.cpp
    M flang-rt/lib/runtime/io-api.cpp
    M flang-rt/lib/runtime/iostat.cpp
    M flang/include/flang/Runtime/iostat-consts.h

  Log Message:
  -----------
  [flang][runtime] Catch asynchronous parent or child I/O (#183161)

ASYNCHRONOUS="YES" is not permitted for either a parent or child data
transfer statement in ISO Fortran (F'2023 12.6.4.8.3 p19). Not that it
matters much -- we don't support true asynchronous I/O anyway -- but
someday we might, and in the meantime it's nice to be able to pass tests
that check conformance.


  Commit: 7acc02ff7a1dd83b247bfdf97f9336d0ac02220e
      https://github.com/llvm/llvm-project/commit/7acc02ff7a1dd83b247bfdf97f9336d0ac02220e
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang-rt/lib/runtime/transformational.cpp

  Log Message:
  -----------
  [flang][runtime] Catch EOSHIFT ARRAY/BOUNDARY type mismatch (#183168)

The ARRAY= and optional BOUNDARY= arguments to EOSHIFT must have the
same dynamic type. Add a runtime check.


  Commit: 41f36ee62d6e5ecbbf1696a3c255133e772e7b17
      https://github.com/llvm/llvm-project/commit/41f36ee62d6e5ecbbf1696a3c255133e772e7b17
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Parser/unparse.cpp
    A flang/test/Parser/bug2280.f90

  Log Message:
  -----------
  [flang] Don't unparse 1X or X format as X (#183196)

The unparsing code emits a bare X control edit descriptor when its
repetition count is 1, since a bare X control edit descriptor defaults
to 1X. But it's not conforming usage, so it might cause a warning if
unparsed code is recompiled with -pedantic. So don't do that.


  Commit: 8bae572c62407c6678699594953e4bd8ab218474
      https://github.com/llvm/llvm-project/commit/8bae572c62407c6678699594953e4bd8ab218474
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/lib/Evaluate/check-expression.cpp
    A flang/test/Semantics/bug2292.f90

  Log Message:
  -----------
  [flang] Fix crash on error case (#183338)

A named constant implicit-shape array with a non-constant lower bound is
an error case. Emit an error message rather than crashing.


  Commit: df2f3460da63dccd96c343dad44619fce09c57a8
      https://github.com/llvm/llvm-project/commit/df2f3460da63dccd96c343dad44619fce09c57a8
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/include/flang/Semantics/expression.h

  Log Message:
  -----------
  [flang] Silence build warning (#183393)

Add a [[maybe_unused]] to a parameter of a function with several
constexpr ifs, some of whose branches don't use the parameter.


  Commit: 6df45ed1b837449079a7a40090961e5d2a52734e
      https://github.com/llvm/llvm-project/commit/6df45ed1b837449079a7a40090961e5d2a52734e
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-sgpr32-to-vgpr16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll

  Log Message:
  -----------
  [AMDGPU][True16] change vdst_in regclass and remove opsel for cvt_pk_f8_fp32 pattern (#179995)

Two changes:

1. int_amdgcn_cvt_pk_fp/bf8_f32 takes a i32 as a tied input, and this
tied input is passed to cvt_pk_f8_fp32 as a tied vdst_in. In true16 mode
the vdst_in is in vgpr16. Since this i32 could be in sreg32, need to
copy it to vgpr32 first before extract_subreg.

2. remove SRCMODS.DST_OP_SEL from cvt_pk_f8_fp32 pattern in true16 mode.
The opsel is not needed since the hi/lo16 will be clobbered by the
following register rewrite/allocation pass and this const opsel causes
conflictions


  Commit: 5de92856bd6c238eb703202a8934f03480e80ee5
      https://github.com/llvm/llvm-project/commit/5de92856bd6c238eb703202a8934f03480e80ee5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/__tree
    M libcxx/include/__utility/lazy_synth_three_way_comparator.h
    A libcxx/test/libcxx/containers/associative/debug.non-strict-weak-ordering.pass.cpp
    A libcxx/test/libcxx/containers/associative/lower_upper_bound_non_strict_weak_order.pass.cpp

  Log Message:
  -----------
  [libc++] Introduce a escape hatch for the changed behavior of map and set search operations (#183190)

In #155245, we implemented an optimization to std::map and std::set
search operations. That optimization took advantage of something that is
guaranteed by the Standard, namely that the comparator provided to the
associative container is a valid strict weak ordering.

Sadly, some code in the wild did not satisfy this requirement, such as
Boost.ICL: boostorg/icl#51

Since this can have extremely tricky runtime consequences, this patch
introduces a temporary escape hatch for the LLVM 22 release that allows
reverting to the previous behavior. It also explicitly calls out the
change in the release notes, adds some regression tests and adds debug
mode support for catching some of these invalid predicates.

Fixes #183189


  Commit: d161a220bc4a089038425c43904dd8e4d4ff2898
      https://github.com/llvm/llvm-project/commit/d161a220bc4a089038425c43904dd8e4d4ff2898
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll

  Log Message:
  -----------
  [AMDGPU] lower fptrunc.round(rtz) to cvt_pkrtz_f16_f32  (#177069)

Lower fptrunc.round(rtz) to cvt_pkrtz_f16_f32 and remove setreg


  Commit: 6f736e2cd9933aed1c8b72f2fe370f7d60bd3709
      https://github.com/llvm/llvm-project/commit/6f736e2cd9933aed1c8b72f2fe370f7d60bd3709
  Author: pkarveti <quic_pkarveti at quicinc.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/Hexagon.td
    A llvm/test/CodeGen/Hexagon/v81-early-arch-features.ll

  Log Message:
  -----------
  [Hexagon] Add missing early architecture features to V81 processor (#183499)

V81 was missing ArchV5, ArchV55, ArchV60, and ArchV62 in its feature
list, causing instructions requiring these architecture versions to fail
during compilation.


  Commit: 78689630b38076fa67caae02766b789d2e7871ab
      https://github.com/llvm/llvm-project/commit/78689630b38076fa67caae02766b789d2e7871ab
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_relaxed_printf_string_address_space/non-constant-printf.ll

  Log Message:
  -----------
  [SPIRV] Fix disabling of default extensions (#183325)

If you pass `-ExtName` to the `--spirv-ext` command line option. that
should disable the extension. However some vendors have some extensions
enabled by default when using a triple with that vendor, and disabling
an extension with the option did not effect the default extensions.

This PR makes it so disabling an extension with the `--spirv-ext` option
actually disables the extension.

The problem was we only considered the disabled extension when parsing
the arguments for `--spirv-ext`, but the default extensions are added
separately, so we need to store the disabled extensions and factor them
in when computing the final extension set to use.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 46aae011880428279b1b9e2df801d62ac4843a8b
      https://github.com/llvm/llvm-project/commit/46aae011880428279b1b9e2df801d62ac4843a8b
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [Driver][SPIRV] Fix SPIR-V build for AMD. (#183529)

The AMD path doesn't use spirv-link, and the driver was incorrectly
adding flags for it, which broke the build. The regression was
introduced in
https://github.com/llvm/llvm-project/commit/1870f3face71d6da2bc0095f751dd1b961b7e4c0.

Without this PR's fix, the following assertion is triggered
[here](https://github.com/llvm/llvm-project/blob/aa3d6b37c7945bfb4c261dd994689de2a2de25bf/clang/lib/Driver/ToolChains/HIPAMD.cpp#L43)
when the LLVM bitcode is linked because unexpected flags are forwarded:
```clang::driver::InputInfo::getFilename() const: Assertion
`isFilename() && "Invalid accessor."' failed.```

The bug was triggered by:
`clang++ --offload-new-driver -x hip -O3 --offload-arch=amdgcnspirv
-use-spirv-backend -fvisibility=default -v ./repro/foo.hip -o out
-save-temps`.

This eventually invoked: `clang --no-default-config -o
foo.hip-hip-spirv64-amd-amdhsa.hipfb.spirv64.amdgcnspirv.img -dumpdir
foo.hip-hip-spirv64-amd-amdhsa.hipfb.spirv64.amdgcnspirv.img.
--target=spirv64-amd-amdhsa -march=amdgcnspirv
foo-hip-spirv64-amd-amdhsa-spirv64-amd-amdhsa-amdgcnspirv.o -Xlinker
--allow-partial-linkage -O3 -use-spirv-backend -save-temps=cwd
-flto-partitions=8 -###`.
It triggered the crash due to the incorrect flags.


  Commit: bbaf723d863704017226b0f6fb4af26b779c0e89
      https://github.com/llvm/llvm-project/commit/bbaf723d863704017226b0f6fb4af26b779c0e89
  Author: Lidong Yan <yldhome2d2 at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/docs/HowToSetUpLLVMStyleRTTI.rst

  Log Message:
  -----------
  [llvm/docs] Add advanced RTTI techniques to HowToSetUpLLVMStyleRTTI (#181863)

The `HowToSetUpLLVMStyleRTTI.rst` document contained a TODO requesting
documentation for advanced RTTI usage, such as the `isa_impl` and
`simplify_type` templates. This patch resolves and removes that TODO by
adding the relevant usage introductions for `simplify_type`.

Since `isa_impl` will be moved to `namespace detail` in the future we
are not including it in the documentation.

CC: @nikic @zwuis

Signed-off-by: Lidong Yan <yldhome2d2 at gmail.com>


  Commit: ea52e855f2a29943f7461a76f80fe90120704fe9
      https://github.com/llvm/llvm-project/commit/ea52e855f2a29943f7461a76f80fe90120704fe9
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp

  Log Message:
  -----------
  [NFCI][analyzer] Spread use of CoreEngine::makeNode (#183540)

Simplify the code of `CoreEngine` by using the method
`CoreEngine::makeNode` (which was introduced recently in commit
1a81673922a3f5b75f342e416e925a69822c4613) and removing two similar, but
less practical utility methods.

This is technically speaking not an NFC change, because previously these
were able to generate non-sink nodes with `PosteriorlyOverconstrained`
state (which is logically unsound) and now the check in `makeNode`
prevents that.

However I labelled this as an NFCI change, as I'm fairly confident that
this won't lead to any observable changes because:
- `PosteriorlyOverconstrained` states are very rare.
- A state derived from a `PosteriorlyOverconstrained` state is also
posteriorly overconstrained, so even without this commit
`PosteriorlyOverconstrained` paths would been sunk soon at the next
transition that properly checks for it.

Note that simulated paths with a `PosteriorlyOverconstrained` state do
not correspond to real paths that can occur during the actual execution
of the program, so the analyzer should stop following them as soon as
possible. For more explanation see the doc-comment above the data member
`bool PosteriorlyOverconstrained` within `ProgramState`.


  Commit: fd8b45c396678d6f233e1c026b5df05c8b970818
      https://github.com/llvm/llvm-project/commit/fd8b45c396678d6f233e1c026b5df05c8b970818
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll

  Log Message:
  -----------
  [X86] vector-replicaton-i1-mask.ll - simplify check prefixes. NFC. (#183547)

Add common check prefixes and remove redundant ones


  Commit: 0141d82463e3f334fa6d8e3b98f5766438570f0d
      https://github.com/llvm/llvm-project/commit/0141d82463e3f334fa6d8e3b98f5766438570f0d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [X86] single_elt_vector_memory_operation.ll - simplify check prefixes. NFC. (#183545)

Add common check prefixes and remove redundant ones


  Commit: 73dec8293b8624668965c5fcf80baa9456fbd0c6
      https://github.com/llvm/llvm-project/commit/73dec8293b8624668965c5fcf80baa9456fbd0c6
  Author: Ravil Dorozhinskii <ravil.aviva.com at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td

  Log Message:
  -----------
  [ROCDL] Hot fix of mem trait in l2 prefetch (#183550)


  Commit: 3a8081cedccddb7e74351da2b534b5ad800c1ad8
      https://github.com/llvm/llvm-project/commit/3a8081cedccddb7e74351da2b534b5ad800c1ad8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll

  Log Message:
  -----------
  AMDGPU: Stop checking for r600 in printf pass (#183536)

Avoid adding the pass to the pipeline in the first place.


  Commit: 8d23abe4153e37b10f1a5c4963a9ed0b7d7850f6
      https://github.com/llvm/llvm-project/commit/8d23abe4153e37b10f1a5c4963a9ed0b7d7850f6
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    A llvm/test/Transforms/IROutliner/illegal-nomerge.ll

  Log Message:
  -----------
  [IROutliner] Don't outline callsites with nomerge (#183387)

`nomerge` states that calls to this function should never be merged
during optimisation. Outlining would have the effect of merging
callsites from separate functions into a single callsite in the outlined
function, so this attribute should prevent outlining.


  Commit: d44e41794540d7fa85f857228a7616ec8592a7c4
      https://github.com/llvm/llvm-project/commit/d44e41794540d7fa85f857228a7616ec8592a7c4
  Author: Joachim <jenke at itc.rwth-aachen.de>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M openmp/runtime/test/parallel/bug63197.c

  Log Message:
  -----------
  [openmp][tests] Fix bug63197.c (#183508)

#183269 tried to fix the test, but the test can still randomly fail. The
OpenMP spec does not prevent the runtime to chose a smaller team size
than returned from omp_max_threads() for the second parallel region.

Using a larger value than `omp_max_threads()` in a `num_threads` clause
is valid OpenMP code. With a correct OpenMP implementation, the
team-size of the second parallel region must still be smaller or equal
the value returned from `omp_max_threads()`.


  Commit: e2d2b23a5aeb6292fd135f7677a8655800ea7c20
      https://github.com/llvm/llvm-project/commit/e2d2b23a5aeb6292fd135f7677a8655800ea7c20
  Author: Twice <twice at apache.org>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [MLIR][Python] Add `convert_type` API for TypeConverter (#183561)

This PR adds the  `convert_type` API for `TypeConverter`.


  Commit: b654416f2ca958545f9c1e619d724fe2fd460d63
      https://github.com/llvm/llvm-project/commit/b654416f2ca958545f9c1e619d724fe2fd460d63
  Author: lntue <lntue at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/src/__support/math/atan2f128.h
    M libc/test/src/math/smoke/atan2f128_test.cpp

  Log Message:
  -----------
  [libc][math] Fix atan2f128 when the exponent difference is larger than the precision. (#183552)


  Commit: f14875f3f690f4aa2e387ba19122494eb0481486
      https://github.com/llvm/llvm-project/commit/f14875f3f690f4aa2e387ba19122494eb0481486
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll

  Log Message:
  -----------
  [Clang] Enable response file support for 'llvm-offload-binary' (#183548)

Summary:
These command line invocations can become so large that they no longer
fit, we should support response files in this case so the build on
Windows can be unblocked with the new driver.


  Commit: a17349f7870ba0543aa50b7ec9db80222d644123
      https://github.com/llvm/llvm-project/commit/a17349f7870ba0543aa50b7ec9db80222d644123
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll

  Log Message:
  -----------
  [VectorCombine][X86] shuffle-of-casts.ll - add x86-64-v2 and x86-64-v4 test coverage (#183562)

Prep work for #165813


  Commit: 11ed282b7a761c802b714a4b745b1311e8deb756
      https://github.com/llvm/llvm-project/commit/11ed282b7a761c802b714a4b745b1311e8deb756
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fmul.ll

  Log Message:
  -----------
  ValueTracking: Teach computeKnownFPClass that multiply by <= 1 cannot overflow (#183159)


  Commit: b9ad15feb58ddd555539441b3b2b8e0fa8c9722d
      https://github.com/llvm/llvm-project/commit/b9ad15feb58ddd555539441b3b2b8e0fa8c9722d
  Author: Wang Yaduo <wangyaduo at linux.alibaba.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [NFC][LICM] Update the comment about hoisting depend on block frequency (#183437)

It seems that the commit 1a25d0 remove the implementation but the
comment is left.


  Commit: 2a6a62ac33287eb96eb8dd9bae7ebc765b68d185
      https://github.com/llvm/llvm-project/commit/2a6a62ac33287eb96eb8dd9bae7ebc765b68d185
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Analysis/SliceAnalysis.cpp
    M mlir/test/Analysis/test-match-reduction.mlir

  Log Message:
  -----------
  [MLIR] Fix out-of-bounds crash in matchReduction for ops with fewer yield operands (#183555)

`mlir::matchReduction()` accessed `terminatorOp->getOperand(redPos)`
without checking that `redPos` is within the terminator's operand count.
This caused an assertion failure when the region's block-argument count
exceeds the terminator's yield count, e.g. for `linalg.pooling_nhwc_sum`
whose kernel region has three block args but yields only one value.

Add a bounds check before the operand access so the function returns
nullptr gracefully instead of crashing.

Fixes #131437


  Commit: a7723994a9a0642d24cb4fa554dc92918df62b9f
      https://github.com/llvm/llvm-project/commit/a7723994a9a0642d24cb4fa554dc92918df62b9f
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/memory.h
    M flang-rt/lib/runtime/unit.cpp
    M flang-rt/lib/runtime/unit.h

  Log Message:
  -----------
  [flang-rt] Get rid of cyclic call chain in ChildIo. (#183369)

This is a follow up on #182635

It was suggested to place `static_assert(std::is_trivially_destructible_c<A>)`
for the `OwningPtr` class. This cannot be done, because there are
non-trivially destructible types used with `OwnerPtr` (e.g. lots of types
that inherit from `IoErrorHandler`, which is not trivially destructible).

This patch brings back the desctructor call into `OwningPtr::delete_ptr`
just to be on the safe side (though, I do not think we had any memory
leaks even without the destructor call), and removes the cyclic
dependency for the `~ChildIo()` caused by `previous_` member.


  Commit: a6a77fd1a7a95098bc3bc530683cc5609f800f54
      https://github.com/llvm/llvm-project/commit/a6a77fd1a7a95098bc3bc530683cc5609f800f54
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/AST/ItaniumMangle.cpp
    A clang/test/CodeGen/cfi-icall-with-abi-tag.cpp

  Log Message:
  -----------
  [clang] Fixed a bug causing failure with CFI icalls enabled.  (#183428)

This is fixing a regression when abi_tag is used in conjunction with CFI.


  Commit: f5c3a8e99d87639b29572726abf13716482a680b
      https://github.com/llvm/llvm-project/commit/f5c3a8e99d87639b29572726abf13716482a680b
  Author: David Green <david.green at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    R llvm/test/Transforms/VectorCombine/AArch64/shuffle-of-intrinscis.ll
    A llvm/test/Transforms/VectorCombine/AArch64/shuffle-of-intrinsics.ll

  Log Message:
  -----------
  [AArch64] Rename shuffle-of-intrinscis.ll to shuffle-of-intrinsics.ll. NFC


  Commit: 7cc976cf0931cca42cfcb52d909ac8240b252520
      https://github.com/llvm/llvm-project/commit/7cc976cf0931cca42cfcb52d909ac8240b252520
  Author: Amina Chabane <amina.chabane at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    R llvm/lib/Target/AArch64/aarch64-tensorflow-isel-regression.ll
    A llvm/test/CodeGen/AArch64/aarch64-tensorflow-isel-regression.ll

  Log Message:
  -----------
  Move AArch64 regression test to CodeGen (#183566)

Corrected directory of regression test in #178227


  Commit: 1ad3a030a819e405bf0bdcd032744ab9e57ba972
      https://github.com/llvm/llvm-project/commit/1ad3a030a819e405bf0bdcd032744ab9e57ba972
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll

  Log Message:
  -----------
  [VectorCombine][X86] shuffle-of-casts.ll - add #165813 test coverage (#183569)


  Commit: 9608d0a561192718698f03fe733c38453a9be2ae
      https://github.com/llvm/llvm-project/commit/9608d0a561192718698f03fe733c38453a9be2ae
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/wmma-coececution-valu-hazards.mir
    A llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir

  Log Message:
  -----------
  [AMDGPU] Fix typo in test file name. NFC. (#183570)


  Commit: af15474262100ade9a8fcfd05f9e05c7ba23ff8c
      https://github.com/llvm/llvm-project/commit/af15474262100ade9a8fcfd05f9e05c7ba23ff8c
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/fold-init-type.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/fold-init-type.cpp

  Log Message:
  -----------
  [clang-tidy] Improve bugprone-fold-init-type to support overloads (#183300)

This PR extends the AST matchers to handle the overloaded versions of
`std::accumulate`, `std::reduce` and `std::inner_product`.

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

---------

Co-authored-by: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Co-authored-by: Baranov Victor <bar.victor.2002 at gmail.com>


  Commit: f55416b6308a4a89f71d7610e993a20404d11841
      https://github.com/llvm/llvm-project/commit/f55416b6308a4a89f71d7610e993a20404d11841
  Author: accauble <accauble at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    A clang/test/CodeGenHIP/debug-info-language-hip.hip

  Log Message:
  -----------
  [DebugInfo][HIP] Set DW_AT_language field to DW_LANG_HIP when AMD clang is used (#181738)

Before this change, HIP applications compiled with AMD clang would set
the `DW_AT_language` field to `DW_LANG_C_plus_plus_14`:

```
llvm-dwarfdump hello
hello:  file format elf64-x86-64

.debug_info contents:
0x00000000: ...

0x0000000c: DW_TAG_compile_unit
              ...
  ------> DW_AT_language  (DW_LANG_C_plus_plus_14)
              DW_AT_name  ("helloworld.cpp")
...
```

This change update the language tag to `DW_LANG_HIP` for these
applications:

```
llvm-dwarfdump hello
hello:  file format elf64-x86-64

.debug_info contents:
0x00000000: ...

0x0000000c: DW_TAG_compile_unit
              ...
  ------> DW_AT_language  (DW_LANG_HIP)
              DW_AT_name  ("helloworld.cpp")
...
```

Also added a test to check for the new tag
(`debug-info-language-hip.hip`).


The primary motivation for this change is that ROCgdb has to use a
workaround to detect that a program is a HIP application. This removes
the guessing and allows proper detection of the HIP language.

ROCgdb [already has support for
DW_LANG_HIP](https://github.com/ROCm/ROCgdb/commit/316e8393f2ad).


  Commit: 3839878d206059cda07cdd0eb93004330188e306
      https://github.com/llvm/llvm-project/commit/3839878d206059cda07cdd0eb93004330188e306
  Author: Weiwen He <60433849+he-weiwen at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanpif16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanpif16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanpif16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor tanpif16 to header-only (#181240)

Part of #147386

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

Closes #181207


  Commit: da851db4bbe5783d0a87a325641b82ddee9bc73d
      https://github.com/llvm/llvm-project/commit/da851db4bbe5783d0a87a325641b82ddee9bc73d
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll

  Log Message:
  -----------
  [PowerPC] using milicode call for memccpy instead of lib call (#182563)

AIX has "millicode" routines, which are functions loaded at boot time
into fixed addresses in kernel memory. This allows them to be customized
for the processor. The __memccpy routine is a millicode implementation;
we use millicode for the memccpy function instead of a library call to
improve performance

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 8e5b9cab5892b05443a7b817ca8c00bfa9f776cc
      https://github.com/llvm/llvm-project/commit/8e5b9cab5892b05443a7b817ca8c00bfa9f776cc
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/test/CIR/CodeGen/virtual-destructor-calls.cpp

  Log Message:
  -----------
  [CIR] Upstream support for pure virtual destructors (#182857)

Upstreams support for emitting traps for abstract destructors.

Signed-off-by: vishruth-thimmaiah <vishruththimmaiah at gmail.com>


  Commit: cc1f66d5df85ce420ba7934cb15585d1f0bd89ed
      https://github.com/llvm/llvm-project/commit/cc1f66d5df85ce420ba7934cb15585d1f0bd89ed
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir

  Log Message:
  -----------
  [CIR] Implement flattening of nested EH cleanup scopes (#183404)

This implements flattening of nested EH cleanup scopes, rewriting the
inner scope's resume to branch to the outer scope's EH cleanup block.

I used AI tools to generate many of the changes in this PR, but I have
carefully reviewed the changes and updated as needed.


  Commit: ab3f7cb4e9dc4a12e42325be5899f6ccf15d3723
      https://github.com/llvm/llvm-project/commit/ab3f7cb4e9dc4a12e42325be5899f6ccf15d3723
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/test/SemaCXX/constexpr-x86-avx-builtins.cpp
    M clang/test/SemaCXX/constexpr-x86-avx512f-builtins.cpp
    M clang/test/SemaCXX/constexpr-x86-sse2-builtins.cpp

  Log Message:
  -----------
  [NFC][clang][X86] Add tests for NaN,Denormal,Inf and rounding modes (#180013)

Follow up: #171966


  Commit: bdddc1683ae000df3a49189125e7e4c14e6bb579
      https://github.com/llvm/llvm-project/commit/bdddc1683ae000df3a49189125e7e4c14e6bb579
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Target/LLVM/XeVM/Target.cpp

  Log Message:
  -----------
  [MLIR][XeVM] Enable some SPIRV extensions by default for XeVM target. (#182399)

Enable,
SPV_EXT_relaxed_printf_string_address_space
SPV_INTEL_cache_controls
SPV_INTEL_variable_length_array


  Commit: d9a45dc2fc2b01f42a4b3b95bf5f718a974c5f91
      https://github.com/llvm/llvm-project/commit/d9a45dc2fc2b01f42a4b3b95bf5f718a974c5f91
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/nofpclass-callsite-prop.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll

  Log Message:
  -----------
  FunctionAttrs: Propagate nofpclass from callsite arguments (#183277)


  Commit: 186c54ec917625d413a2dad33720409e5210c56f
      https://github.com/llvm/llvm-project/commit/186c54ec917625d413a2dad33720409e5210c56f
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizeZeroSizeArrays.cpp
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-extern.ll

  Log Message:
  -----------
  [SPIRV] Fix legalization of zero-size external global (#183130)

`getInitializer` asserts if there's no initializer, so check first.

I found this compiling some `liboffload` unit tests.

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: e3735ce4b344a5b6177546ecf40904bedb852f09
      https://github.com/llvm/llvm-project/commit/e3735ce4b344a5b6177546ecf40904bedb852f09
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/float16-macros.h
    M libc/test/shared/CMakeLists.txt

  Log Message:
  -----------
  [libc][math] Disable float16 on Clang 11 and older (#183574)

This also reverts
https://github.com/llvm/llvm-project/commit/c5d6feb3152bf39d820935df0d0490f90364d44c


  Commit: 3490d28c8cab9541e57c31c0809d3fe09da43a4b
      https://github.com/llvm/llvm-project/commit/3490d28c8cab9541e57c31c0809d3fe09da43a4b
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Core/Debugger.cpp
    R lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/README.rst
    R lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/copy-sparse.py
    R lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
    R lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/lldb-minimize-processes.patch
    R lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/test.script

  Log Message:
  -----------
  [lldb] Remove last references to fbsdvm (#183418)

Support was removed in #181283
(a8cd1ac7058efdf7a9be823182da884243ca6c0b)


  Commit: 27905b119669d257a67e9312c1de46edb33b7e44
      https://github.com/llvm/llvm-project/commit/27905b119669d257a67e9312c1de46edb33b7e44
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16sqrtf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16sqrtf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16sqrtf128.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor f16sqrtf128 to Header Only. (#183542)

closes  #175328
part of https://github.com/llvm/llvm-project/issues/147386


  Commit: f6917fa6c90a9d55d3bfd9d8aa4583834771565d
      https://github.com/llvm/llvm-project/commit/f6917fa6c90a9d55d3bfd9d8aa4583834771565d
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/Lex/Lexer.cpp

  Log Message:
  -----------
  [Clang][Lexer][Performance] Optimize Lexer whitespace skipping logic (#180819)

... by extracting the check for space character and marking it as
`LLVM_LIKELY`. This increases performance because the space is by far
the most common horizontal character, so in most cases, this change
allows to replace a lookup table check with a simple comparison,
reducing latency and helping the cache.

This does not reduce instruction count, as a lookup table and a
comparison are both a single instruction. However, it _does_ reduce
cycles in a consistent manner, around `0.2` - `0.3`%:
[benchmark](https://llvm-compile-time-tracker.com/compare.php?from=3192fe2c7b08912cc72c86471a593165b615dc28&to=faa899a6ce518c1176f2bf59f199eb42e59d840e&stat=cycles).
I tested this locally and am able to confirm this is not noise (at least
not entirely, it does feel weird that this impacts `O3` more than
`O0`...), as I achieved almost `2`% faster PP speed in my tests.


  Commit: b8618ff61e719c9328f5198bbb9c5734223d5a37
      https://github.com/llvm/llvm-project/commit/b8618ff61e719c9328f5198bbb9c5734223d5a37
  Author: Aleksandr Nogikh <nogikh at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/AST/InferAlloc.cpp
    M clang/test/CodeGenCXX/alloc-token-pointer.cpp

  Log Message:
  -----------
  [AllocToken] [Clang] Fix type inference for atomic types (#183571)

When evaluating whether an allocated type contains a pointer to generate
the `alloc_token` metadata, `typeContainsPointer` incorrectly stopped
recursion upon encountering an `AtomicType`. This resulted in types like
`_Atomic(int *)` (or `std::atomic<int *>` under libc++) being
incorrectly evaluated as not containing a pointer.

Add support for `AtomicType` in `typeContainsPointer` by recursively
checking the contained type.

Add tests for structs containing `_Atomic(int *)` and `_Atomic(int)`.


  Commit: bf8e006c8438a2c953a0e1863ed1f0138c0b74b2
      https://github.com/llvm/llvm-project/commit/bf8e006c8438a2c953a0e1863ed1f0138c0b74b2
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/docs/ClangIRCleanupAndEHDesign.md

  Log Message:
  -----------
  [CIR][docs] Fix table of contents for CIR eh and cleanups doc (#183594)

When this document was converted from rst to markdown, the contents
didn't get updated correctly.


  Commit: 8702c6bab34f036798d52ba6c28769934a1e5b1e
      https://github.com/llvm/llvm-project/commit/8702c6bab34f036798d52ba6c28769934a1e5b1e
  Author: Ryan Mansfield <ryan_mansfield at apple.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    A clang/test/Driver/crash-report-no-integrated-cc1.c
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [clang] Fix driver resignaling when cc1 runs out-of-process (#183560)

When cc1 runs out-of-process and crashes, sys::ExecuteAndWait returns -2
for signal-killed children. The resignaling block added in 15488a7f78ce
only handled CommandRes > 128, so the driver would exit normally with
code 1 instead of dying by signal.


  Commit: e05b6cb6e11ae1a64673effbcc018f20adfeccf7
      https://github.com/llvm/llvm-project/commit/e05b6cb6e11ae1a64673effbcc018f20adfeccf7
  Author: Nirvedh Meshram <96096277+nirvedhmeshram at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/TransformOps/SCFTransformOps.td
    M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/test/Dialect/SCF/transform-op-coalesce.mlir

  Log Message:
  -----------
  [SCF] allow indexing operations for loop coalesceing (#183180)

Currently if there are operations between the loops we get a dominance
issue as the delinearlized index is added after the operations. This PR
fixes that.

For testing we also add a transform pattern that makes a direct call to
coalesceLoops as the existing pattern calls
coalescePerfectlyNestedSCFForLoops which does not consider the loop nest
perfectly nested if there are operations between them which is safer for
that usage.

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>


  Commit: c4e2891a1dca8ae7753f1913417ceddd9c90616e
      https://github.com/llvm/llvm-project/commit/c4e2891a1dca8ae7753f1913417ceddd9c90616e
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][Vector] Fix crash in BitCastOp::fold for index element type (#183572)

`BitCastOp::fold` called `Type::getIntOrFloatBitWidth()` on the source
element type without first verifying it satisfies `isIntOrFloat()`. When
the source vector has `index` element type (e.g. `vector<16xindex>`),
the assertion `only integers and floats have a bitwidth` fires.

Add an `srcElemType.isIntOrFloat()` guard to the condition so that the
constant-folding path is skipped for non-integer/float element types.

Fixes #177835


  Commit: ea0b65d4706904bbc630b5376c8103c86944a35a
      https://github.com/llvm/llvm-project/commit/ea0b65d4706904bbc630b5376c8103c86944a35a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/test/Dialect/Arith/canonicalize.mlir

  Log Message:
  -----------
  [mlir][arith] Fix crash in AddUIExtendedOp::fold when operand is ub.poison (#183596)

When `constFoldBinaryOp<IntegerAttr>` is called with a `ub.poison`
operand, it propagates the poison attribute as its result. The fold
method for `arith.addui_extended` then attempted to cast this result to
`TypedAttr` via `llvm::cast<TypedAttr>(sumAttr)`, which failed with an
assertion because `PoisonAttr` does not implement the `TypedAttr`
interface.

Fix this by checking whether the folded sum is a poison attribute before
the cast. When poison is detected, it is propagated to both the sum and
overflow results.

Fixes #181534


  Commit: 72daf0c02303c64dbd27f3e93667319829b05519
      https://github.com/llvm/llvm-project/commit/72daf0c02303c64dbd27f3e93667319829b05519
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/AST/DeclTemplate.cpp
    A clang/test/SemaTemplate/GH181062.cpp

  Log Message:
  -----------
  [clang] fix transformation of substituted constant template parameters of partial specializations (#183348)

This fixes a helper so it implements retrieval of the argument replaced
for a template parameter for partial spcializations.

This was left out of the original patch, since it's quite hard to
actually test.

This helper implements the retrieval for variable templates, but only
for completeness sake, as no current users rely on this, as I don't
think a similar test case is possible to implement with variable
templates.

This fixes a regression introduced in #161029 which will be backported
to llvm-22, so there are no release notes.

Fixes #181062
Fixes #181410


  Commit: b13718cd104fb0e70dc19093be3c3eb7af10e106
      https://github.com/llvm/llvm-project/commit/b13718cd104fb0e70dc19093be3c3eb7af10e106
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll

  Log Message:
  -----------
  [AMDGPU] Fix encoding of inline constants in v_fma_mix_f32_bf16 (#183487)

BF16 source operands use F32 inline constant values, so set OP_SEL to
select the high half of the constant, since BF16 encoding matches the
high 16 bits of F32 encoding. This behaviour is different from F16
source operands which use F16 constant values in the low 16 bits.

Fixes: #183337


  Commit: 5bbfce06e0d16722ff2bca5feedb10c1ebc530be
      https://github.com/llvm/llvm-project/commit/5bbfce06e0d16722ff2bca5feedb10c1ebc530be
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/AMDGPU/nofpclass-amdgcn-trig-preop.ll

  Log Message:
  -----------
  ValueTracking: Special case fmul by llvm.amdgcn.trig.preop (#183373)

This is another instance of the logic from #183159. If we know
one source is not-infinity, and the other source is less than or
equal to 1, this cannot overflow. Special case llvm.amdgcn.trig.preop,
as a substitute for proper range tracking. This almost enables pruning
edge case handling in trig function implementations, if not for the
recursion depth limit (but that's a problem for another day).


  Commit: 32f9a40d3a801821fa4b083e76492be26fb72755
      https://github.com/llvm/llvm-project/commit/32f9a40d3a801821fa4b083e76492be26fb72755
  Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/FMF.h
    M llvm/include/llvm/IR/PatternMatch.h

  Log Message:
  -----------
  Add remaining patterns for floating-point flag matches (#173912)

As in title. Only `reassoc` pattern was supplied -- for completeness all
should be supplied. Make FastMathFlag ctor public as well.


  Commit: 3d469665a286cac528c2ef2fb018032d80843716
      https://github.com/llvm/llvm-project/commit/3d469665a286cac528c2ef2fb018032d80843716
  Author: Chris B <chris.bieneman at me.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/HLSL.cpp
    A clang/test/Driver/HLSL/fre-errors.hlsl
    M clang/test/Driver/HLSL/metal-converter.hlsl

  Log Message:
  -----------
  [Metal][HLSL] Add support for dumping reflection (#181258)

The Metal Shader converter can output shader reflection information into
a JSON file. This connects the -Fre flag (DXC's flag for reflection) to
the Metal Shader Converter tool step to produce the JSON file. As a
temporary state the -Fre flag will error when used without the -metal
flag.

This is required to address
https://github.com/llvm/offload-test-suite/issues/452


  Commit: 25e15775da1c3e607f13bd40e85c54474f2f1ef7
      https://github.com/llvm/llvm-project/commit/25e15775da1c3e607f13bd40e85c54474f2f1ef7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [Clang] Add response file support to clang-linker-wrapper (#183598)

Summary:
This is needed on some platforms like Windows when the generated command
line becomes too large. This seems to be occurring in practice so we
need to support this. Uses the same basic support clang does.

No test because there isn't any current infrastructure to support it,
will likely be "tested" by ROCBLAS builds not failing anymore on
Windows.


  Commit: 19c862dd277b386bffb18247d53c801ae441390b
      https://github.com/llvm/llvm-project/commit/19c862dd277b386bffb18247d53c801ae441390b
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAsm.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp

  Log Message:
  -----------
  [CIR][NFC] Fix unused variable warnings (#183604)

We have accumulated four places where variables were only being used in
asserts. This change silences the warnings for that.


  Commit: aae3843c77e4d18a716945fa1a7b2159acf5539d
      https://github.com/llvm/llvm-project/commit/aae3843c77e4d18a716945fa1a7b2159acf5539d
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/vector.cpp

  Log Message:
  -----------
  [Clang][AST] Fix extending an unsigned to signed in `ExprConstant.cpp` (#180563)

Fixes #154713.

The crash was due to `Index` sometimes being an unsigned 64-bit integer
which was being zero-extended to a signed 64-bit, triggering an
assertion failure in `APSInt::getExtValue`. This patch zero-extends it
to a unsigned 64-bit integer instead, since `HandleLValueVectorElement`
takes in a `uint64_t` anyway.


  Commit: dc66b51a700ec6980afee4e43b913f871b759d0b
      https://github.com/llvm/llvm-project/commit/dc66b51a700ec6980afee4e43b913f871b759d0b
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll

  Log Message:
  -----------
  [PowerPC] Remove `NoNaNsFPMath` uses (#183449)


  Commit: 6c532a621a555c07da30e34b7956745d33c9dd79
      https://github.com/llvm/llvm-project/commit/6c532a621a555c07da30e34b7956745d33c9dd79
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp

  Log Message:
  -----------
  [OpenMP] Remove NVPTX local addrspace on parameters (#183195)

In CGOpenMPRuntimeGPU::translateParameter, reference-type captured
variables were translated to pointer parameters with two address-space
annotations:

1. LangAS::opencl_global on the pointee (for map'd variables), which
correctly produces ptr addrspace(1) in NVPTX IR.
2. getLangASFromTargetAS(NVPTX_local_addr=5) on the pointer itself,
annotating the parameter as living in NVPTX local (stack) memory.

The second annotation is incorrect at the Clang type-system level:
EmitParmDecl only supports parameters to be in LangAS::Default (or the
special cases for OpenCL).

Temporarily add an assert in EmitParmDecl that catches parameters with
non-default address spaces in non-OpenCL compilations, and fix the
violation by dropping the NVPTX_local_addr addAddressSpace call.

Should fix the issue noticed in

https://github.com/llvm/llvm-project/pull/181256#discussion_r2821894122,
allowing removing that special case there for OpenMP, though I haven't
tested the combination yet. That PR would fix EmitParmDecl to actually
support non-default address spaces from Sema, and will remove this
assert again.

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: 60eac414b79462122e2d33658f6a0bcb610f8f5d
      https://github.com/llvm/llvm-project/commit/60eac414b79462122e2d33658f6a0bcb610f8f5d
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    M clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/include/clang/Analysis/Scalable/Support/FormatProviders.h
    M clang/lib/Analysis/Scalable/EntityLinker/EntityLinker.cpp
    M clang/lib/Analysis/Scalable/Model/BuildNamespace.cpp
    M clang/lib/Analysis/Scalable/Model/EntityLinkage.cpp
    A clang/lib/Analysis/Scalable/ModelStringConversions.h
    M clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    M clang/unittests/Analysis/Scalable/BuildNamespaceTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    M clang/unittests/Analysis/Scalable/EntityIdTest.cpp
    M clang/unittests/Analysis/Scalable/EntityLinkageTest.cpp
    M clang/unittests/Analysis/Scalable/EntityLinkerTest.cpp
    M clang/unittests/Analysis/Scalable/EntityNameTest.cpp
    A clang/unittests/Analysis/Scalable/ModelStringConversionsTest.cpp
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
    M clang/unittests/Analysis/Scalable/SummaryNameTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Improve serialization for Model types and error messages in `JSONFormat`

This changes fixes the diagnostic infrastructure in `JSONFormat`
implementation to pass model objects (`EntityId`, `EntityLinkage`,
`BuildNamespace`, `NestedBuildNamespace`, `SummaryName`) directly to
`ErrorBuilder` instead of manually extracting their components. This
relies on existing `llvm::format_provider` specializations for these
objects.

To support consistent string conversion for `BuildNamespaceKind` and
`EntityLinkageType`, across both serialization and `operator<<`,
`toString`/`fromString` functions have been introduced in an internal
header `ModelStringConversions.h`.

`EntityLinkage::LinkageType` is promoted to a standalone enum class
`EntityLinkageType` at namespace scope, following the same pattern as
`BuildNamespaceKind`.

Tests have been added for `operator<<` and `format_provider` for all
affected types, and a new `ModelStringConversionsTest.cpp` directly
unit-tests the `toString/fromString` functions including round-trip and
unknown-input cases.


  Commit: 4c60c0164688f798bade20379b4cddaaf75eb233
      https://github.com/llvm/llvm-project/commit/4c60c0164688f798bade20379b4cddaaf75eb233
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    A llvm/test/CodeGen/Hexagon/constp-const32-signbit.mir

  Log Message:
  -----------
  [Hexagon] Fix assert on sign-bit CONST32 immediates (#182118)

This patch fixes a HexagonConstPropagation assert when evaluating
sign-bit CONST32/CONST64 immediates (e.g. 0x80000000) after ConstantInt
stopped implicitly truncating, by allowing truncation for that signed
case.


  Commit: 52f76c035aaab0854990e49bc629be3f833f2088
      https://github.com/llvm/llvm-project/commit/52f76c035aaab0854990e49bc629be3f833f2088
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
    M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add distribution pattern for xegpu.load & store for sg to wi pass (#181917)

This PR adds distribution pattern for xegpu.load & store ops for the new
sg-to-wi pass


  Commit: 4efc6a9378394ecb5dd28898d92c9a34153db019
      https://github.com/llvm/llvm-project/commit/4efc6a9378394ecb5dd28898d92c9a34153db019
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [cmake] Don't use PCH when clang-cache launcher is used (#183620)

Fix incremental build failure when using PCH build and clang-cache
together.


  Commit: c5f40ef7fe7f1fa616d28b46334cf60579d4893c
      https://github.com/llvm/llvm-project/commit/c5f40ef7fe7f1fa616d28b46334cf60579d4893c
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/test/FixIt/fixit-pragma-attribute.cpp
    M clang/test/Parser/pragma-attribute.cpp

  Log Message:
  -----------
  [Clang] fix crash parsing forbidden attribute args in pragma attributes (#182362)

Fixes #182122

--- 

This patch resolves a crash when parsing `#pragma clang attribute`
arguments for attributes that forbid arguments. The root cause is that
the `#pragma` attribute path doesn't pass `EndLoc` to


https://github.com/llvm/llvm-project/blob/413cafa4624eb37e586e266f44abd64896e1c598/clang/lib/Parse/ParsePragma.cpp#L1982-L1985

unlike the normal attribute parsing flow


https://github.com/llvm/llvm-project/blob/413cafa4624eb37e586e266f44abd64896e1c598/clang/lib/Parse/ParseDeclCXX.cpp#L4706

Without `EndLoc`, argument parsing cannot update the parsed end token


https://github.com/llvm/llvm-project/blob/413cafa4624eb37e586e266f44abd64896e1c598/clang/lib/Parse/ParseDecl.cpp#L621-L622

and `fix-it` gets an invalid end location


https://github.com/llvm/llvm-project/blob/0dafeb97a4687c29f5182fa0239c7fa39ee23091/clang/lib/Parse/ParseDeclCXX.cpp#L4537

This change makes the pragma path pass `EndLoc` the same way as the
regular flow does, preventing the crash and preserving valid fix-it
ranges.


  Commit: 5007dd9d0945938f2177142e9784e240490e7050
      https://github.com/llvm/llvm-project/commit/5007dd9d0945938f2177142e9784e240490e7050
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Expression/REPL.h
    M lldb/source/Expression/REPL.cpp
    M lldb/source/Plugins/REPL/Clang/ClangREPL.cpp
    M lldb/source/Plugins/REPL/Clang/ClangREPL.h

  Log Message:
  -----------
  [lldb][repl] fix output interleaving with the status line (#183600)

This patch fixes the REPL's output from interleaving with the status
line by locking the stream before printing.


  Commit: 2576ee1fd93fb87699650734ffafdb8092062d59
      https://github.com/llvm/llvm-project/commit/2576ee1fd93fb87699650734ffafdb8092062d59
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Use VPInstructionWithType for Load in VPlan0 (NFC)

VPInstructionWithType directly allows modeling the loaded type.


  Commit: fb81e59ccbea6753d6ccd87f113bcc7a77440b72
      https://github.com/llvm/llvm-project/commit/fb81e59ccbea6753d6ccd87f113bcc7a77440b72
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/test/AST/HLSL/WaveSize.hlsl
    M clang/test/CodeGen/aix-builtin-cpu-supports.c
    M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
    M clang/test/CodeGenCXX/vtable-assume-load.cpp

  Log Message:
  -----------
  [Clang] Fix typo "LABLE" in test checks (#178449)


  Commit: dbaa4d117aac3bf25505ca78a4b9752e1bb9c3dc
      https://github.com/llvm/llvm-project/commit/dbaa4d117aac3bf25505ca78a4b9752e1bb9c3dc
  Author: yasmincs <ysarita at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/reserved-smem-offset.ll

  Log Message:
  -----------
  [NVPTX] Support intrinsics for reserved shared memory special registers (#182354)

Added reserved_smem_offset_{begin|end|cap|0} intrinsics to expose shared
memory special registers and NVPTX TableGen support for these
intrinsics.


  Commit: 97835516393311d681d1ff6bec67e1093f94890e
      https://github.com/llvm/llvm-project/commit/97835516393311d681d1ff6bec67e1093f94890e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  Revert "[VPlan] Use VPInstructionWithType for Load in VPlan0 (NFC)"

This reverts commit 2576ee1fd93fb87699650734ffafdb8092062d59.

This was causing test failures when running check-llvm-unit.


  Commit: 46c06a34f1de56142935a305f0461cd0e54e1772
      https://github.com/llvm/llvm-project/commit/46c06a34f1de56142935a305f0461cd0e54e1772
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp

  Log Message:
  -----------
  [VPlan] Fixup C++ unit test output after 2576ee1fd93f.


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

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

  Log Message:
  -----------
  Reapply "[VPlan] Use VPInstructionWithType for Load in VPlan0 (NFC)"

This reverts commit 97835516393311d681d1ff6bec67e1093f94890e.

Unit tests have been updated


  Commit: 10abb231d6b4cbda74b2bd92921403ba361bb4c6
      https://github.com/llvm/llvm-project/commit/10abb231d6b4cbda74b2bd92921403ba361bb4c6
  Author: Alexis Perry-Holby <aperry at lanl.gov>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M flang/docs/GettingInvolved.md

  Log Message:
  -----------
  [flang] Update the Flang Community Call to the new MS Teams series (#183576)


  Commit: 6bc9ba786d0f705ebb1c8a08cef9f0552fb86f1d
      https://github.com/llvm/llvm-project/commit/6bc9ba786d0f705ebb1c8a08cef9f0552fb86f1d
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    A llvm/test/CodeGen/Hexagon/vgather-memvt.ll

  Log Message:
  -----------
  [Hexagon] Fix memory type for vgather intrinsics (#183563)

Some of the Hexagon vgather intrinsics were picking the memory type
(memVT) from a fixed argument position, but for several variants (e.g.
the predicated ones), that argument isn’t actually the data vector being
gathered. As a result, LLVM could end up recording the wrong memory type
or size (e.g. i32 or mask instead of the vector arg). This patch fixes
that by always taking memVT from the last intrinsic argument, which is
the actual data vector.


  Commit: c6db35fd343e43f6574062b6b580ec16ff9fb67a
      https://github.com/llvm/llvm-project/commit/c6db35fd343e43f6574062b6b580ec16ff9fb67a
  Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
    M mlir/test/Dialect/XeGPU/peephole-optimize.mlir

  Log Message:
  -----------
  [mlir][xegpu] Retain order attribute during load + transpose optimization. (#183608)

As described in the title `order` attribute is ignored in this
transformation causing downstream test failures.


  Commit: e92dd71f44c3eae4280693a5cf28e6ae2b94eb80
      https://github.com/llvm/llvm-project/commit/e92dd71f44c3eae4280693a5cf28e6ae2b94eb80
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [RISCV] Add Defs = VXSAT to P extension instructions. (#183455)


  Commit: 2fc0733805e3bdd8d37d35ba39763e646df88f52
      https://github.com/llvm/llvm-project/commit/2fc0733805e3bdd8d37d35ba39763e646df88f52
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/faddv-fp16.ll
    A llvm/test/CodeGen/AArch64/faddv.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll

  Log Message:
  -----------
  [AArch64] Decompose FADD reductions with known zero elements (#167313)

FADDV is matched into FADDPv4f32 + FADDPv2i32p but this can be relaxed
when one element (usually the 4th) or more are known to be zero.

Before:
```
movi d1, #0000000000000000
mov v0.s[3], v1.s[0]
faddp v0.4s, v0.4s, v0.4s
faddp s0, v0.2s
```

After:
```
mov s1, v0.s[2]
faddp s0, v0.2s
fadd s0, s0, s1
```

When all of the elements are zero, the intrinsic now simply reduces into
a constant instead of emitting two additions.


  Commit: e55945556a1e99a7d6618735873d513a0239b2a0
      https://github.com/llvm/llvm-project/commit/e55945556a1e99a7d6618735873d513a0239b2a0
  Author: Tamas Kaman <tamas.kaman at arm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Change header tagging for the secondary allocator (#182487)

When secondary allocator allocates a new chunk, the allocation is 
prepended with a chunk header (common with the primary allocator)
and large header (only used for secondary).
Only the headers are tagged, the data is not, and the headers are
tagged individually as different tags are used for them.
In the current implementation while tagging the large header the unused
area is tagged with it, so the allocator can tag up to a page size (in
worst case), which is costly and does not bring security benefit (as the
area is unused).
With the current fix we can get rid of around 97-98% of the tagging for
the secondary allocator, measured with random benchmarks.

Co-authored-by: Christopher Ferris <cferris1000 at users.noreply.github.com>


  Commit: 20ec9a9bb72560fe73706f46415dcfb118f9d265
      https://github.com/llvm/llvm-project/commit/20ec9a9bb72560fe73706f46415dcfb118f9d265
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/cmake/modules/AddClang.cmake

  Log Message:
  -----------
  build: correct `MSVC` and Windows mixup for `CLANG_BUILD_STATIC` (#183609)

The build incorrectly used `MSVC` to determine that we were building for
Windows (MS ABI). This prevents the use of the GNU driver for building
LLVM for Windows. Adjust the condition to `WIN32 AND NOT MINGW` to
correctly identify that we are building for Windows MS ABI.


  Commit: 7e39b280e8607e4bd09b87fb3271963803b4d02f
      https://github.com/llvm/llvm-project/commit/7e39b280e8607e4bd09b87fb3271963803b4d02f
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/nextafter.h
    A libc/shared/math/nextafterbf16.h
    A libc/shared/math/nextafterf.h
    A libc/shared/math/nextafterf128.h
    A libc/shared/math/nextafterf16.h
    A libc/shared/math/nextafterl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/nextafter.h
    A libc/src/__support/math/nextafterbf16.h
    A libc/src/__support/math/nextafterf.h
    A libc/src/__support/math/nextafterf128.h
    A libc/src/__support/math/nextafterf16.h
    A libc/src/__support/math/nextafterl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/nextafter.cpp
    M libc/src/math/generic/nextafterbf16.cpp
    M libc/src/math/generic/nextafterf.cpp
    M libc/src/math/generic/nextafterf128.cpp
    M libc/src/math/generic/nextafterf16.cpp
    M libc/src/math/generic/nextafterl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor nextafter family to header-only (#181673)

closes #181672


  Commit: 7c022af37ef2bc9deb60c6be93b7925028d39e8a
      https://github.com/llvm/llvm-project/commit/7c022af37ef2bc9deb60c6be93b7925028d39e8a
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/report.cpp
    M compiler-rt/lib/scudo/standalone/report.h
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    M compiler-rt/lib/scudo/standalone/wrappers_c_checks.h

  Log Message:
  -----------
  [scudo] Add reallocarray C wrapper. (#183385)

`reallocarray()` is a POSIX extension to C standard which wraps
`realloc` function and adds `calloc`-like overflow detection. It is
available in glibc and some other standard library implementations. Add
`reallocarray` to the list of Scudo C wrappers, so that the code that
depends on `reallocarray` presence will continue to work.


  Commit: 5e6f0c45a851ccb53a7bf1847b967d3cd42de724
      https://github.com/llvm/llvm-project/commit/5e6f0c45a851ccb53a7bf1847b967d3cd42de724
  Author: Ankit Aggarwal <aankit at qti.qualcomm.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/test/Preprocessor/hexagon-predefines.c
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/TargetParser/Triple.cpp

  Log Message:
  -----------
  [Clang][Hexagon] Add QURT as recognized OS in target triple (#183622)

Add support for the QURT as a recognized OS type in the LLVM triple
system, and define the __qurt__ predefined macro when targeting it.


  Commit: 26b4c25b8bceb414471d825395e418636d9d17e7
      https://github.com/llvm/llvm-project/commit/26b4c25b8bceb414471d825395e418636d9d17e7
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/stream.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang/include/flang/Optimizer/Builder/CUDAIntrinsicCall.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/CUDA/stream.h
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/module/cuda_runtime_api.f90
    M flang/test/Lower/CUDA/cuda-default-stream.cuf

  Log Message:
  -----------
  [flang][cuda] Add support for cudaStreamDestroy (#183648)

Add specific lowering and entry point for cudaStreamDestroy. Since we
keep associated stream for some allocation, we need to reset it when the
stream is destroy so we don't use it anymore.


  Commit: d149830b98f89787faa8a8cd2387e20b7cd7b0f2
      https://github.com/llvm/llvm-project/commit/d149830b98f89787faa8a8cd2387e20b7cd7b0f2
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll

  Log Message:
  -----------
  [AMDGPU] Pre-Commit tests for handle mbcnt in computeKnownBitsFromOperator (#178607)

For PR #183229


  Commit: 99c463512a0458ff1a1928d670cded3b320eb990
      https://github.com/llvm/llvm-project/commit/99c463512a0458ff1a1928d670cded3b320eb990
  Author: Shashi Shankar <shashishankar1687 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Debug/DebugCounter.cpp
    A mlir/test/mlir-opt/debugcounter-invalid-cl-options.mlir

  Log Message:
  -----------
  [MLIR] Do not abort on invalid --mlir-debug-counter values (#181751)

Use `cl::Option::error()` diagnostics for invalid `--mlir-debug-counter`
arguments and exit with status 1 (no stack dump).

Added `mlir/test/mlir-opt/debugcounter-invalid-cl-options.mlir`
covering:
  - non-numeric value (`-1n`)
  - missing `=`
  - missing `-skip`/`-count` suffix

Fixes #180117


  Commit: 9b708b0032745ca6f8bbd0c6d39a7ecb9fad0310
      https://github.com/llvm/llvm-project/commit/9b708b0032745ca6f8bbd0c6d39a7ecb9fad0310
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
    M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-unsupported.mlir

  Log Message:
  -----------
  [mlir][arith-to-spirv] Fix null dereference when converting trunci/extui with tensor types (#183654)

`getScalarOrVectorConstInt` only handles `VectorType` and `IntegerType`,
returning `nullptr` for any other type (e.g., a `RankedTensorType` that
slips through after type emulation maps `tensor<Nxi16>` to
`tensor<Nxi32>` with the same destination type). The callers in
`TruncIPattern` and `ExtUIPattern` passed this null value directly to
`spirv::BitwiseAndOp::create`, causing a null-pointer dereference in
`OperandStorage`.

Similarly, the signed-extension pattern passes the result of
`getScalarOrVectorConstInt` as a shift amount to
`ShiftLeftLogicalOp::create` without a null check.

Add `if (\!mask)` / `if (\!shiftSize)` guards that return a match
failure in all three cases, converting the crash into a proper
legalization failure.

Fixes #178214


  Commit: 361e2359860e332ea669f53717c9759f8b3ca7e0
      https://github.com/llvm/llvm-project/commit/361e2359860e332ea669f53717c9759f8b3ca7e0
  Author: Twice <twice at apache.org>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Support op adaptor for Python-defined operations (#183528)

Previously, in #177782, we added support for dialect conversion and
generated an `OpAdaptor` subtype for every ODS-defined operation. In
this PR, we will also generate `OpAdaptor` subtypes for Python-defined
operations, so that they can be applied in dialect conversion as well.


  Commit: decb5d3ff6a1351fa16c1a6850c553d416b1495e
      https://github.com/llvm/llvm-project/commit/decb5d3ff6a1351fa16c1a6850c553d416b1495e
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/test/CIR/CodeGen/goto.cpp
    M clang/test/CIR/CodeGen/label-values.c
    M clang/test/CIR/CodeGen/label.c
    M clang/test/CIR/CodeGen/nrvo.cpp
    M clang/test/CIR/CodeGen/vla.c

  Log Message:
  -----------
  [CIR] Remove branch through cleanup fixups (#182953)

Because we are using a structured representation of cleanups in CIR, we
don't need to handle branching through cleanups during codegen. These
branches are created during CFG flattening instead. However, we had
already committed some code that copied the classic codegen behavior for
branching through cleanups. This change deletes that unneeded code.

The most significant change here is that when we encounter a return
statement we emit the return directly in the current location.

The coroutine implementation still creates a return block in the current
lexical scope and branches to that block. Cleaning up that
representation is left as future work.

The popCleanupBlock handling still has a significant amount of logic
that is carried over from the classic codegen implementation. It is left
in place until we can be sure we won't need it.


  Commit: 408209275e63765d69ad752a55b15df5f6063f0a
      https://github.com/llvm/llvm-project/commit/408209275e63765d69ad752a55b15df5f6063f0a
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll

  Log Message:
  -----------
  [LoopUnrollAndJam] Update test dependencies.ll (NFC) (#183509)

Recent on-going works to fix the correctness issues in DA will affect
some existing regression tests for passes that rely on it. As a result,
the original intent of several tests will be lost.
This patch updates `dependencies.ll` to avoid such issues and preserve
its intent. Specifically, this patch changes the loop bounds from
parameters to constants, which allows SCEV to infer no-wrap flags for
the addrecs. Also this patch updates other minor issues in the test,
such as adding pseudo codes and removing some `nuw` to avoid UB.


  Commit: b28ad9cb96c29bb3a4fab187a64a20a70709e2da
      https://github.com/llvm/llvm-project/commit/b28ad9cb96c29bb3a4fab187a64a20a70709e2da
  Author: Sam James <sam at gentoo.org>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/tools/llvm-dwp/Opts.td

  Log Message:
  -----------
  [llvm-dwp] Fix typo in --help


  Commit: c1d33452468d2728005ced20be550e617f24e6dd
      https://github.com/llvm/llvm-project/commit/c1d33452468d2728005ced20be550e617f24e6dd
  Author: Yue Huang <30948580+AdUhTkJm at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Analysis/Presburger/PWMAFunction.cpp

  Log Message:
  -----------
  [MLIR][Presburger][NFC] Don't add empty regions when unioning PWMA functions (#182468)

This will prevent exponential behaviour in lexicographic maximum
computation, where the `tiebreak` predicate is very likely to return
empty regions.


  Commit: 46b6c9744f840981fb06504c3bf5583021064402
      https://github.com/llvm/llvm-project/commit/46b6c9744f840981fb06504c3bf5583021064402
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll

  Log Message:
  -----------
  [LoopUnrollAndJam] Update test unroll-and-jam.ll (NFC) (#183520)

The test `unroll-and-jam.ll` has the following issues:

- Some functions use `%i` and `%I` as variable names, which UTC fails to
distinguish, causing it to update the assertions incorrectly.
- Some tests use parameters for loop bounds, which means they will start
failing in the near future due to the ongoing changes in DA.

To address these issues, this patch updates the test as follows:

- Renames certain variables to avoid the naming conflict.
- For the tests that will be affected by the DA changes, adds variants
with constant loop bounds.


  Commit: c056d7c5d6ea076b38fa937c54ab44ce2e5a95e1
      https://github.com/llvm/llvm-project/commit/c056d7c5d6ea076b38fa937c54ab44ce2e5a95e1
  Author: Neha <151068751+nehaGautam07 at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/SemaCXX/crash-invalid-operator-template.cpp

  Log Message:
  -----------
  [Sema] Fix crash on invalid operator template-id (#181404)

Add checks in GetNameFromUnqualifiedId to handle invalid TemplateId
cases safely. This avoids a crash when handling an invalid template-id
during error recovery and allows normal error reporting to continue.

Fixes #177549


  Commit: 8f9c926868d1e9a53e392f430f7cd68bd49bb997
      https://github.com/llvm/llvm-project/commit/8f9c926868d1e9a53e392f430f7cd68bd49bb997
  Author: theRonShark <ron.lieberman at amd.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    R llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll

  Log Message:
  -----------
  Revert "AMDGPU: Fix runtime unrolling when cascaded GEPs present (#14… (#183641)

…7700)"

slows down llama.cpp

This reverts commit cff4a00d3f7d91c0dd3a93eb81db66be178273d3.


  Commit: 8d5b74db2d8f54da2609d18040504153c1afe5df
      https://github.com/llvm/llvm-project/commit/8d5b74db2d8f54da2609d18040504153c1afe5df
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

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

  Log Message:
  -----------
  [DenseMap] Add memory barrier for sanitizers in getInlineBuckets/getLargeRep

Add a compiler memory barrier to prevent optimizations from triggering
false positives on partially poisoned buckets in (HW)ASan.

Fixes #182720.

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


  Commit: 5929c9040fac0b9044080e50d683110104d600f4
      https://github.com/llvm/llvm-project/commit/5929c9040fac0b9044080e50d683110104d600f4
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp

  Log Message:
  -----------
  [mlir][vector] Fix fold result for empty vector.mask with no results (#180345)

This PR fixes `foldEmptyMaskOp` to return `failure` when folding an
empty vector.mask whose terminatorhas no operands. Previously this case
returned success without producing any folded results, which violates
the folding contract. Fixes #177825.


  Commit: b354b206d3bef08d254713c027e235c0251eebdb
      https://github.com/llvm/llvm-project/commit/b354b206d3bef08d254713c027e235c0251eebdb
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/test/Driver/fsanitize-minimal-runtime.c
    M compiler-rt/test/safestack/overflow.c

  Log Message:
  -----------
  [SafeStack] Allow -fsanitize-minimal-runtime with -fsanitize=safestack (#183644)

SafeStack does not require a full sanitizer runtime, so it should be
compatible
with the minimal runtime flag.


  Commit: f30dfe7de4c3c584ae470425e96bac41676ddc69
      https://github.com/llvm/llvm-project/commit/f30dfe7de4c3c584ae470425e96bac41676ddc69
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/tools/mlir-tblgen/OpDocGen.cpp

  Log Message:
  -----------
  Revert "[mlir-tblgen] Remove `namespace {}` around OpDocGroup (#182721)" (#183458)

Reverts #182721, it's not needed after #183457.

It was a work around for #182720.

This reverts commit a0f344f69d7eb5d87dd78c628a196a3a7440e792.


  Commit: 77600cbd9798bfde4949d047609866ebb6a7fd25
      https://github.com/llvm/llvm-project/commit/77600cbd9798bfde4949d047609866ebb6a7fd25
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] XeGPU Layout adds support for fractional-subgroup-size vector  (#183434)

This PR enhances the layout assignment for XeGPU load/store operations
to handle vector size smaller than subgroup size.
Say for vector[4], in case of lane_data=[1], lane_layout=[4] and
inst_data=[4].
The fractional-subgroup-size vector support is required to support the
cross-subgroup reduction case. The number of participant subgroups in
reduction can be small, so it causes each subgroup needs to reduce a
small vector size, often a fraction of subgroup size.
Most layout-based subgroup distribution patterns support
fraction-subgroup-size without no change except a few: reduction,
insert/extract, constant. We don't expect ND operations (like
load_nd/store_nd/dpas) accept fractional-subgroup-size vector.


  Commit: 07007b7c8d9eb4d3c4da4eb150aeae8d83c0f1f3
      https://github.com/llvm/llvm-project/commit/07007b7c8d9eb4d3c4da4eb150aeae8d83c0f1f3
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [lldb] Don't add remap entries for empty segments (#183651)

There are some binaries in the shared cache with a zero-length segment,
or segments who get mapped to lldb address 0 to indicate a failure. Do
not add entries to the VirtualDataExtractor's LookupTablefor those -
they
are not readable.

rdar://171106338


  Commit: 86b99eff8c4d2fc8b3391a67d2ba88b0840f6fea
      https://github.com/llvm/llvm-project/commit/86b99eff8c4d2fc8b3391a67d2ba88b0840f6fea
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    R clang/test/SemaCXX/crash-invalid-operator-template.cpp

  Log Message:
  -----------
  Revert "[Sema] Fix crash on invalid operator template-id (#181404)" (#183682)

Reverts llvm/llvm-project#181404
(c056d7c5d6ea076b38fa937c54ab44ce2e5a95e1) because of post-commit ci
failure.


  Commit: ed8f080737dec39212cad72100670c3a21de7720
      https://github.com/llvm/llvm-project/commit/ed8f080737dec39212cad72100670c3a21de7720
  Author: raycppwizard <raycppwizard at foxmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang][docs] Fix proposal number typo for P1847R4 (#183671)

This PR fixes a typo in `clang/www/cxx_status.html`. 

The link text for the feature "Make declaration order layout mandated"
incorrectly referred to **P1874R4**, while the actual URL
(https://wg21.link/p1847r4) and the feature name correctly point to
**P1847R4**.

This change corrects the displayed text to match the proposal number.


  Commit: 32134a64b195f7804698418b6f416e761d890dea
      https://github.com/llvm/llvm-project/commit/32134a64b195f7804698418b6f416e761d890dea
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialectBytecode.cpp
    A mlir/test/mlir-tblgen/bytecode-write.td
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp

  Log Message:
  -----------
  [mlirbc] Switch generator to enable write's with failures. (#182464)

Previously one had to have a matching case per entry (e.g., one could
use a printer predicate, but the assumption was one woujld never
fallback) and just always return success.


  Commit: 192acd6d536cbbb57f778bd996401716ec51d439
      https://github.com/llvm/llvm-project/commit/192acd6d536cbbb57f778bd996401716ec51d439
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-wmma-f16.hip

  Log Message:
  -----------
  [Clang][AMDGPU] Change __fp16 to _Float16 in GFX1250 WMMA/SWMMAC builtin definitions (#183493)

Change the type signature of `gfx1250 WMMA/SWMMAC` builtins from
`__fp16` to `_Float16` in the tablegen builtin definitions.


  Commit: b0b3e3e1c7f6387eabc2ef9ff1fea311e63a4299
      https://github.com/llvm/llvm-project/commit/b0b3e3e1c7f6387eabc2ef9ff1fea311e63a4299
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.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/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/ARM/active-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-vmla.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.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-complex-mask.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-known-no-overflow.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/X86/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
    M llvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_add_q7.ll

  Log Message:
  -----------
  [VPlan] Don't drop NUW flag on tail folded canonical IVs (#183301)

After #183080 vscale can no longer be a non-power of 2, which means the
canonical IV can't overflow with tail folding w/ scalable vectors
anymore. Therefore we don't need to drop the NUW flag.

IVUpdateMayOverflow is left to be removed in a separate PR since it
removes further runtime checks.


  Commit: a5bbedf522d4f75d4e4e5c0a9c8a92349f3b5a4b
      https://github.com/llvm/llvm-project/commit/a5bbedf522d4f75d4e4e5c0a9c8a92349f3b5a4b
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions-tf.ll

  Log Message:
  -----------
  [LV] Convert test to UTC. NFC


  Commit: 92704064e585247bbdd77be24ca3e8b8080f1580
      https://github.com/llvm/llvm-project/commit/92704064e585247bbdd77be24ca3e8b8080f1580
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll

  Log Message:
  -----------
  [VectorCombine][X86] Ensure we recognise free sign extends of vector comparison results (#183575)

Unless we're working with AVX512 mask predicate types, sign extending a
vXi1 comparison result back to the width of the comparison source types
is free.

VectorCombine::foldShuffleOfCastops - pass the original CastInst in the
getCastInstrCost calls to track the source comparison instruction.

Fixes #165813


  Commit: 058705bf76af61b5f8bba3005073331cecb8733e
      https://github.com/llvm/llvm-project/commit/058705bf76af61b5f8bba3005073331cecb8733e
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp

  Log Message:
  -----------
  [Clang][NFCI] Make program state GDM key const pointer (#183477)

This commit makes the GDM key in ProgramState a constant pointer. This
is done to better reflect the intention of the key as a unique
identifier for the data stored in the GDM, and to prevent the use of the
storage pointed to by the key as global state.

Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>


  Commit: 5af5bd4f9867336b2616aa84ad73368d18b945eb
      https://github.com/llvm/llvm-project/commit/5af5bd4f9867336b2616aa84ad73368d18b945eb
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAMX.td
    M llvm/lib/Target/X86/X86PreTileConfig.cpp

  Log Message:
  -----------
  [AMX][NFC] Match pseudo name with isa  (#182235)

Adds missing suffix to clear intent for isa.
we switch from `TILEMOVROWrre` to `TILEMOVROWrte` in
https://github.com/llvm/llvm-project/pull/168193 , however pseudo was
same, updating pseudo to intent right isa version, This patch makes
changes `PTILEMOVROWrre` to `PTILEMOVROWrte`, even though pseudo does
not actually have any tile register.

---------

Co-authored-by: mattarde <mattarde at intel.com>


  Commit: a1f83ba1b6a7b78ffa1a02b3ededab44be08150f
      https://github.com/llvm/llvm-project/commit/a1f83ba1b6a7b78ffa1a02b3ededab44be08150f
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [LV] NFCI: Move extend optimization to transformToPartialReduction. (#182860)

The reason for doing this in `transformToPartialReduction` is so that we
can create the VPExpressions directly when transforming reductions into
partial reductions (to be done in a follow-up PR).

I also intent to see if we can merge the in-loop reductions with partial
reductions, so that there will be no need for the separate
`convertToAbstractRecipes` VPlan Transform pass.


  Commit: c690414f83695d2000c31bc9eafb941a1f84aae9
      https://github.com/llvm/llvm-project/commit/c690414f83695d2000c31bc9eafb941a1f84aae9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Refactor visitDeclRef() (#183690)

Move the `!VD` case up so we can assume `VD` to be non-null earlier and
use a local variable instead of calling `D->getType()` several times.


  Commit: 16aa1900ef8fe0ac64a60d681adf4bcbaa7d864b
      https://github.com/llvm/llvm-project/commit/16aa1900ef8fe0ac64a60d681adf4bcbaa7d864b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Print more info in Pointer::operator<< (#183691)

So we know whether a pointer is a dummy and alive.


  Commit: d43213fe801213beb23b03f9d5297e791b4e8826
      https://github.com/llvm/llvm-project/commit/d43213fe801213beb23b03f9d5297e791b4e8826
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.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/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/ARM/active-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-vmla.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.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-complex-mask.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-known-no-overflow.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/X86/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
    M llvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_add_q7.ll

  Log Message:
  -----------
  Revert "[VPlan] Don't drop NUW flag on tail folded canonical IVs (#183301)" (#183698)

This reverts commit b0b3e3e1c7f6387eabc2ef9ff1fea311e63a4299.

After thinking about this for a bit, I don't think this is correct.
vscale being a power-of-2 only guarantees the canonical IV increment
overflows to zero, but not overflows in general.


  Commit: f71bd1c74fe8d86b007bbe683012e5b5b072091b
      https://github.com/llvm/llvm-project/commit/f71bd1c74fe8d86b007bbe683012e5b5b072091b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Record.cpp
    M clang/lib/AST/ByteCode/Record.h

  Log Message:
  -----------
  [clang][bytecode] Add `Record::hasPtrField()` (#183513)

So we can short-circuit the checking in
`EvaluationResult::collectBlock()`. This improves the compile time of
`X86Disassembler.cpp` by roughly 3.8%:
https://llvm-compile-time-tracker.com/compare_clang.php?from=d69c6a8528c60a8f8013651ff18ed4882f6e6836&to=b8b6333551d7c644e3c1b00ed19aceea09da40cc&stat=instructions%3Au


  Commit: 4147cd29e1f2ecbc3bcd609b23d02ddd7fab4502
      https://github.com/llvm/llvm-project/commit/4147cd29e1f2ecbc3bcd609b23d02ddd7fab4502
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/test/CodeGen/WebAssembly/load-ext.ll
    M llvm/test/CodeGen/WebAssembly/offset-fastisel.ll

  Log Message:
  -----------
  [WebAssembly][FastISel] Emit signed loads for sext of i8/i16/i32 (#182767)

FastISel currently defaults to unsigned loads for i8/i16/i32 types,
leaving any sign-extension to be handled by a separate instruction. This
patch optimizes this by folding the SExtInst into the LoadInst, directly
emitting a signed load (e.g., i32.load8_s).

When a load has a single SExtInst use, selectLoad emits a signed load
and safely removes the redundantly emitted SExtInst.

Fixed: #180783


  Commit: 28cbc682a9117013bcbdeeb24f0ad4f83f94a7c3
      https://github.com/llvm/llvm-project/commit/28cbc682a9117013bcbdeeb24f0ad4f83f94a7c3
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp

  Log Message:
  -----------
  [NFC][analyzer] Remove NodeBuilders: part I (#183354)

This commit simplifies some parts of the engine by replacing short-lived
`NodeBuilder`s with `CoreEngine::makeNode`.

Additionally, the three-argument overload of `CoreEngine::enqueue` is
renamed to `enqueueStmtNodes` to highlight that it just calls
`enqueueStmtNode` in a loop.


  Commit: 9e95cff5155a0a8524f2181dc9545ed7902ef6c1
      https://github.com/llvm/llvm-project/commit/9e95cff5155a0a8524f2181dc9545ed7902ef6c1
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/IR/RuntimeLibcalls.cpp
    A llvm/test/CodeGen/AArch64/veclib-llvm.pow.ll
    M llvm/test/Transforms/Util/DeclareRuntimeLibcalls/armpl.ll

  Log Message:
  -----------
  [AArch64] Add vector expansion support for ISD::FPOW when using ArmPL (#183526)

This patch is split off from PR #183319 and teaches the backend how to
lower the FPOW DAG node to the vector math library function when using
ArmPL. This is similar to what we already do for llvm.sincos/FSINCOS
today.


  Commit: 7a5ba652f08b890217b1d551b6c8e686a7b5379f
      https://github.com/llvm/llvm-project/commit/7a5ba652f08b890217b1d551b6c8e686a7b5379f
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/select-bitcast.ll

  Log Message:
  -----------
  [AArch64] optimize vselect of bitcast (#180375)

Using code/ideas from the x86 backend to optimize a select on a bitcast
integer. The previous aarch64 approach was to individually extract the
bits from the mask, which is kind of terrible.

https://rust.godbolt.org/z/576sndT66

```llvm
define void @if_then_else8(ptr %out, i8 %mask, ptr %if_true, ptr %if_false) {
start:
  %t = load <8 x i32>, ptr %if_true, align 4
  %f = load <8 x i32>, ptr %if_false, align 4
  %m = bitcast i8 %mask to <8 x i1>
  %s = select <8 x i1> %m, <8 x i32> %t, <8 x i32> %f
  store <8 x i32> %s, ptr %out, align 4
  ret void
}
```

turned into 

```asm
if_then_else8:                          // @if_then_else8
        sub     sp, sp, #16
        ubfx    w8, w1, #4, #1
        and     w11, w1, #0x1
        ubfx    w9, w1, #5, #1
        fmov    s1, w11
        ubfx    w10, w1, #1, #1
        fmov    s0, w8
        ubfx    w8, w1, #6, #1
        ldp     q5, q2, [x3]
        mov     v1.h[1], w10
        ldp     q4, q3, [x2]
        mov     v0.h[1], w9
        ubfx    w9, w1, #2, #1
        mov     v1.h[2], w9
        ubfx    w9, w1, #3, #1
        mov     v0.h[2], w8
        ubfx    w8, w1, #7, #1
        mov     v1.h[3], w9
        mov     v0.h[3], w8
        ushll   v1.4s, v1.4h, #0
        ushll   v0.4s, v0.4h, #0
        shl     v1.4s, v1.4s, #31
        shl     v0.4s, v0.4s, #31
        cmlt    v1.4s, v1.4s, #0
        cmlt    v0.4s, v0.4s, #0
        bsl     v1.16b, v4.16b, v5.16b
        bsl     v0.16b, v3.16b, v2.16b
        stp     q1, q0, [x0]
        add     sp, sp, #16
        ret
```

With this PR that instead emits

```asm
if_then_else8:
   adrp x8, .LCPI0_1
   dup v0.4s, w1
   ldr q1, [x8, :lo12:.LCPI0_1]
   adrp x8, .LCPI0_0
   ldr q2, [x8, :lo12:.LCPI0_0]
   ldp q4, q3, [x2]
   and v1.16b, v0.16b, v1.16b
   and v0.16b, v0.16b, v2.16b
   ldp q5, q2, [x3]
   cmeq v1.4s, v1.4s, #0
   cmeq v0.4s, v0.4s, #0
   bsl v1.16b, v2.16b, v3.16b
   bsl v0.16b, v5.16b, v4.16b
   stp q0, q1, [x0]
   ret
```

So substantially shorter. Instead of building the mask
element-by-element, this approach (by virtue of not splitting) instead
splats the mask value into all vector lanes, performs a bitwise and with
powers of 2, and compares with zero to construct the mask vector.

cc https://github.com/rust-lang/rust/issues/122376
cc https://github.com/llvm/llvm-project/pull/175769


  Commit: 10b48e41e7d7455a68c00ac52442f994d7c51ffe
      https://github.com/llvm/llvm-project/commit/10b48e41e7d7455a68c00ac52442f994d7c51ffe
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/get_active_lane_mask.ll

  Log Message:
  -----------
  [InstCombine] Combine extract from get_active_lane_mask where all lanes inactive (#183329)

When extracting a subvector from the result of a get_active_lane_mask, return
a constant zero vector if it can be proven that all lanes will be inactive.

For example, the result of the extract below will be a subvector where
every lane is inactive if X & Y are const, and `Y * VScale >= X`:
  vector.extract(get.active.lane.mask(Start, X), Y)


  Commit: 294cf1f6b49b56795757f1392d705cdb78cd1d06
      https://github.com/llvm/llvm-project/commit/294cf1f6b49b56795757f1392d705cdb78cd1d06
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [X86] fnabs.ll - regenerate test checks and add AVX512 test coverage (#183709)


  Commit: 5e1d99158e0bccc1b1de34c66f7b48a65c5a6116
      https://github.com/llvm/llvm-project/commit/5e1d99158e0bccc1b1de34c66f7b48a65c5a6116
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/stack-align.ll

  Log Message:
  -----------
  [X86] stack-align.ll - regenerate test checks with no address scrubing (#183712)


  Commit: d6fcf47a893475f6f3dbcace29093297b7e9f366
      https://github.com/llvm/llvm-project/commit/d6fcf47a893475f6f3dbcace29093297b7e9f366
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M libcxx/include/__vector/vector.h
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/append_range.pass.cpp

  Log Message:
  -----------
  [libc++] Fix vector::append_range growing before the capacity is reached (#183264)

Currently `vector::append_range` grows even when appending a number of
elements that is exactly equal to its spare capacity, which is
guaranteed by the standard to _not_ happen.

Fixes #183256


  Commit: 250ebfc3068819b22706010940724822ac6a426d
      https://github.com/llvm/llvm-project/commit/250ebfc3068819b22706010940724822ac6a426d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vec-copysign-avx512.ll
    M llvm/test/CodeGen/X86/vec_fcopysign.ll

  Log Message:
  -----------
  [X86] regenerate fcopysign test checks (#183710)

Fix vpternlog comments


  Commit: 1afd7d40afe33c2e7256210e07390cc0903a7069
      https://github.com/llvm/llvm-project/commit/1afd7d40afe33c2e7256210e07390cc0903a7069
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-gep.ll

  Log Message:
  -----------
  [AMDGPU] Support i8/i16 GEP indices when promoting allocas to vectors (#175489)

Allow promote alloca to vector to form a vector element index from
i8/i16
GEPs when the dynamic offset is known to be element size aligned.

Example:
```llvm
%alloca = alloca <3 x float>, addrspace(5)
%idx = select i1 %idx_select, i32 0, i32 4
%p = getelementptr inbounds i8, ptr addrspace(5) %alloca, i32 %idx
```
Or:
```llvm
%alloca = alloca <3 x float>, addrspace(5)
%idx = select i1 %idx_select, i32 0, i32 2
%p = getelementptr inbounds i16, ptr addrspace(5) %alloca, i32 %idx
```


  Commit: 5e30ff9e70becff834e1e0bbe22d3821630460e2
      https://github.com/llvm/llvm-project/commit/5e30ff9e70becff834e1e0bbe22d3821630460e2
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/dyld-launch-linux/TestDyldLaunchLinux.py

  Log Message:
  -----------
  [lldb][test] Re-enable TestDyldLaunchLinux.py for Linux/Arm (#181221)

The test was disabled in c55e021d, but it now passes, with both remote
and local runs.


  Commit: b9f2a489607cc8e9d7717450b1e32145cdb93ee9
      https://github.com/llvm/llvm-project/commit/b9f2a489607cc8e9d7717450b1e32145cdb93ee9
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [MemorySSA] Make `getBlockDefs` and `getBlockAccesses` return a non-const list (NFC)

As per discussion at https://github.com/llvm/llvm-project/pull/181709#discussion_r2847595945,
users may already get a non-const MemoryAccess pointer via
`getMemoryAccess` for a given instruction. Drop the restriction
on directly iterate over them by modifying public `getBlockDefs`/
`getBlockAccesses` APIs to return a mutable list, thus dropping the
now obsolete distinction with `getWritableBlockDefs` and
`getWritableBlockAccesses` helpers.


  Commit: 49f4232a7d73062de3796dec06bb34bf6842245b
      https://github.com/llvm/llvm-project/commit/49f4232a7d73062de3796dec06bb34bf6842245b
  Author: idubinov <53053614+idubinov at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h

  Log Message:
  -----------
  [AMDGPU] Remove unused CmpLGOp instruction (#180195)

The instruction was accidentally added, remove it.
Rename OrN2Op to OrN2Opc for consistency with other names


  Commit: e7bc02d9a49fe988daa5f149f30a8b3e06cbe348
      https://github.com/llvm/llvm-project/commit/e7bc02d9a49fe988daa5f149f30a8b3e06cbe348
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll

  Log Message:
  -----------
  [SCEV] Always return true for isKnownToBeAPowerOfTwo for SCEVVScale (#183693)

After #183080 vscale is always a power of two, so we don't need to check
for the vscale_range attribute.


  Commit: 98825908fc51f0226b38381520ba2a4f5f1f36e9
      https://github.com/llvm/llvm-project/commit/98825908fc51f0226b38381520ba2a4f5f1f36e9
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/test/Dialect/Affine/canonicalize.mlir

  Log Message:
  -----------
  [mlir][affine] Fix crash in linearize_index fold when basis is ub.poison (#183650)

`foldCstValueToCstAttrBasis` iterates the folded dynamic basis values
and erases any operand whose folded attribute is non-null (i.e., was
constant- folded). When an operand folds to `ub.PoisonAttr`, the
attribute is non-null so the operand was erased from the dynamic operand
list. However, `getConstantIntValue` on the corresponding `OpFoldResult`
in `mixedBasis` returns `std::nullopt` for poison (it is not an integer
constant), so the position was left as `ShapedType::kDynamic` in the
returned static basis.

This left the op in an inconsistent state: the static basis claimed one
more dynamic entry than actually existed. A subsequent call to
`getMixedBasis()` triggered the assertion inside `getMixedValues`.

Fix by skipping poison attributes in the erasure loop, treating them
like non-constant values. This keeps the dynamic operand and its
matching `kDynamic` entry in the static basis consistent.

Fixes #179265


  Commit: c5c0fe663c7ba55982422940a489cde15f8d2497
      https://github.com/llvm/llvm-project/commit/c5c0fe663c7ba55982422940a489cde15f8d2497
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [VPlan] Remove non-power-of-2 scalable VF comment. NFC (#183719)

No longer holds after #183080


  Commit: 14f73345ff0caa0694e9033d0c805f9cfa7ff519
      https://github.com/llvm/llvm-project/commit/14f73345ff0caa0694e9033d0c805f9cfa7ff519
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/test/Dialect/Arith/int-range-narrowing.mlir

  Log Message:
  -----------
  [mlir][dataflow] Fix crash in IntegerRangeAnalysis with non-constant loop bounds (#183660)

When visiting non-control-flow arguments of a LoopLikeOpInterface op,
IntegerRangeAnalysis assumed that getLoopLowerBounds(),
getLoopUpperBounds(), and getLoopSteps() always return non-null values
when getLoopInductionVars() is non-null. This assumption is incorrect:
for example, AffineForOp returns nullopt from getLoopUpperBounds() when
the upper bound is not a constant affine expression (e.g., a dynamic
index from a tensor.dim).

Fix this by checking whether the bound optionals are engaged before
dereferencing them and falling back to the generic analysis if any bound
is unavailable.

Fixes #180312


  Commit: 1a6bd39fd49868c5024db908cc194397f3415029
      https://github.com/llvm/llvm-project/commit/1a6bd39fd49868c5024db908cc194397f3415029
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang/test/Lower/HLFIR/goto-do-body.f90
    M flang/test/Lower/volatile3.f90

  Log Message:
  -----------
  [flang] Use CHECK-DAG to check constants (NFC) (#183687)

It is part of https://github.com/llvm/llvm-project/pull/180556, as a
separate NFC PR


  Commit: 4d169f38cab5071cd0e6233c1170cc02c95edff1
      https://github.com/llvm/llvm-project/commit/4d169f38cab5071cd0e6233c1170cc02c95edff1
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Clarify in vscale_range that vscale is a power-of-two without the attribute (#183689)

Previously vscale_range used to add the constraint that vscale is a
power-of-two, but after #183080 it's already a power-of-two to begin
with.

This clarifies the sentence about assumptions when there is no attribute


  Commit: 6b91049f44d21c5810703ccee23672875001d5ad
      https://github.com/llvm/llvm-project/commit/6b91049f44d21c5810703ccee23672875001d5ad
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/CodeGen/c23-constexpr-member-access.c
    A clang/test/Sema/constexpr-member-access.c

  Log Message:
  -----------
  [Clang] support C23 constexpr struct member access in constant expressions (#182770)

Fixes #178349

--- 

This patch resolves an issue where accessing C23 `constexpr` struct
members using the dot operator was not recognized as a constant
expression.

According to C23 spec:

> 6.6p7:
> 
> An identifier that is:
> — an enumeration constant,
> — a predefined constant, or
> — declared with storage-class specifier constexpr and has an object
type,
> is a named constant, as is a postfix expression that applies the .
member access operator to a named
> constant of structure or union type, even recursively. For enumeration
and predefined constants,
> their value and type are defined in the respective clauses; for
constexpr objects, such a named
> constant is a constant expression with the type and value of the
declared object.
> 
> § 6.6p13:
> 
> A structure or union constant is a named constant or compound literal
constant with structure or
> union type, respectively
> 
> § 6.6p15:
> 
> Starting from a structure or union constant, the member-access .
operator may be used to form a
> named constant or compound literal constant as described previously in
this subclause


  Commit: 3676ae43bff9159ab509654bd13c9145752a05b9
      https://github.com/llvm/llvm-project/commit/3676ae43bff9159ab509654bd13c9145752a05b9
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp

  Log Message:
  -----------
  [NFC][SPIRV] Remove dead code from `SPIRVPostLegalizer.cpp` (#183585)

Both `visit` functions are unused in the file and outside of it.


  Commit: d8671280d4bf4a598e0bc640a4608f7ac0089842
      https://github.com/llvm/llvm-project/commit/d8671280d4bf4a598e0bc640a4608f7ac0089842
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs-apple.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/select-index.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-constant-known-via-scev.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.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-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr131359-dead-for-splice.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr54634.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/X86/widened-value-used-as-scalar-and-first-lane.ll
    M llvm/test/Transforms/LoopVectorize/assume.ll
    M llvm/test/Transforms/LoopVectorize/cse-gep-source-element-type.ll
    M llvm/test/Transforms/LoopVectorize/find-last-iv-interleave.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/metadata.ll
    M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/select-index-interleaving.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll

  Log Message:
  -----------
  [VPlan] Add nuw to unrolled canonical IVs (#183716)

After #183080, the canonical IV (not the increment!) can't overflow. So
now canonical IVs that are unrolled will have steps that don't overflow,
so we can add the nuw flag.

This allows us to tighten the VPlanVerifier isKnownMonotonic check by
restricting it to adds with nuw.


  Commit: fc69531254ca9e81fd4371c68e7fd74fe4b9527a
      https://github.com/llvm/llvm-project/commit/fc69531254ca9e81fd4371c68e7fd74fe4b9527a
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/test/ExecutionEngine/Interpreter/test-interp-vec-insertelement.ll

  Log Message:
  -----------
  [LLVM][ExecutionEngine] Add vector ConstantInt/FP support to getConstantValue(). (#182538)

Unify vector constant handling via calls to getAggregateElement rather
than handling each constant type separately.


  Commit: e3dda81e2a802112fb9b3129ec34d1103e5ed5d6
      https://github.com/llvm/llvm-project/commit/e3dda81e2a802112fb9b3129ec34d1103e5ed5d6
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang/include/flang/Parser/openmp-utils.h

  Log Message:
  -----------
  [flang][OpenMP] Add `is_range<R>` trait to detect classes with begin/end, NFC (#183615)


  Commit: 2f4624613d05b2982dccc99ac0a06e87e6f3efd0
      https://github.com/llvm/llvm-project/commit/2f4624613d05b2982dccc99ac0a06e87e6f3efd0
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/test/Analysis/malloc-annotations.c

  Log Message:
  -----------
  [analyzer] Fix crash in MallocChecker when a function has both ownership_returns and ownership_takes (#183583)

When a function was annotated with both `ownership_returns` and
`ownership_takes` (or `ownership_holds`), MallocChecker::evalCall would
fall into the freeing-only branch (isFreeingOwnershipAttrCall) and call
checkOwnershipAttr without first calling MallocBindRetVal. That meant no
heap symbol had been conjured for the return value, so
checkOwnershipAttr later dereferenced a null/invalid symbol and crashed.

Fix: merge the two dispatch branches so that MallocBindRetVal is always
called first whenever ownership_returns is present, regardless of
whether the function also carries ownership_takes/ownership_holds.

The crash was introduced in #106081
339282d49f5310a2837da45c0ccc19da15675554.
Released in clang-20, and crashing ever since.

Fixes #183344.

Assisted-By: claude


  Commit: 8a0be0bc3772e8ed06b9a17255e0cfb25539f125
      https://github.com/llvm/llvm-project/commit/8a0be0bc3772e8ed06b9a17255e0cfb25539f125
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/gfni-xor-fold-avx512.ll
    M llvm/test/CodeGen/X86/gfni-xor-fold.ll

  Log Message:
  -----------
  [X86] Fold XOR of two vgf2p8affineqb instructions with same input (#179900)

This patch implements an optimization to fold XOR of two
`vgf2p8affineqb` instructions operating on the same input.
This optimization:
Reduces instruction count from 3 to 2
Eliminates one vgf2p8affineqb instruction 
Added combineXorWithTwoGF2P8AFFINEQB function in X86ISelLowering.cpp
Uses sd_match pattern matching for consistency with existing code
Checks that both operations have single use to avoid code bloat
Verifies both operations use the same input
Handles commutative XOR patterns automatically


  Commit: dc2ec04342de45b29ac7a170952776b2b3a0011f
      https://github.com/llvm/llvm-project/commit/dc2ec04342de45b29ac7a170952776b2b3a0011f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [gn] port 3490d28c8cab


  Commit: 20df251af50b4cb8cad2fcdb94e723f1debaddc4
      https://github.com/llvm/llvm-project/commit/20df251af50b4cb8cad2fcdb94e723f1debaddc4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [LLVM][Runtimes] Add 'llvm-gpu-loader' to dependency list (#183601)

Summary:
This is used to run the unit tests in libc / libc++. It must exist in
the build directory's binary path, but without this dependnecy we may
not build it before running the runtimes build. This should ensure that
it's present, and only if we have tests enabled.


  Commit: bf3ab0d873bf72dd0d73cb8975e642429ab95ea1
      https://github.com/llvm/llvm-project/commit/bf3ab0d873bf72dd0d73cb8975e642429ab95ea1
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h

  Log Message:
  -----------
  [AMDGPU][Scheduler] Add `GCNRegPressure`-based methods to `GCNRPTarget` (#182853)

This adds a few methods to `GCNRPTarget` that can estimate/perform RP
savings based on `GCNRegPressure` instead of a single `Register`,
opening the door to model/incorporate more complex savings made up of
multiple registers of potentially different classes. The scheduler's
rematerialization stage now uses this new API.

Although there are no test changes this is not really NFC since register
pressure savings in the rematerialization stage are now computed through
`GCNRegPressure` instead of the stage itself. If anything this makes
them more consistent with the rest of the RP-tracking infrastructure.


  Commit: 9210d701cbf07dad8a08743c953e0faf4f938699
      https://github.com/llvm/llvm-project/commit/9210d701cbf07dad8a08743c953e0faf4f938699
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    A llvm/test/CodeGen/MIR/Generic/expected-unsigned.mir

  Log Message:
  -----------
  [MIR] Error on signed integer in getUnsigned (#183171)

Previously we effectively took the absolute value of the APSInt, instead
diagnose the unexpected negative value.

Change-Id: I4efe961e7b29fdf1d5f97df12f8139aac12c9219


  Commit: 7402312ae12d91df436486ca296119607a81edd0
      https://github.com/llvm/llvm-project/commit/7402312ae12d91df436486ca296119607a81edd0
  Author: idubinov <igor.dubinov at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [NFC][SPIRV] Fix compile warnings (#183725)

Fix compile warnings in SPIR-V 

```
llvm-project/llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp:2882:26: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
 2882 |         return IsFloatTy ? SPIRV::OpGroupNonUniformFMax : IntOp;
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
llvm-project/llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp: In lambda function:
llvm-project/llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp:2897:26: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
 2897 |         return IsFloatTy ? SPIRV::OpGroupNonUniformFMin : IntOp;
      |                ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


  Commit: a8a6613cc4235c8cbd473927f8567b74b9030c6b
      https://github.com/llvm/llvm-project/commit/a8a6613cc4235c8cbd473927f8567b74b9030c6b
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU][Scheduler] Fix compilation fail in EXPENSIVE_CHECKS (#183745)

Bug introduced by #182853 (`Remat` is now a pointer).


  Commit: 9c2a3ca4949ee2e29a155efa9c69aea801b41813
      https://github.com/llvm/llvm-project/commit/9c2a3ca4949ee2e29a155efa9c69aea801b41813
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [MLIR] Fix OpenACC parser crash with opaque pointers (#183521)

Fixes #181453
Fixes #181589


  Commit: 7cc27e28db97a9b2fd145d35044b7dbe6c8426f2
      https://github.com/llvm/llvm-project/commit/7cc27e28db97a9b2fd145d35044b7dbe6c8426f2
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
    M mlir/test/Dialect/Vector/vector-unroll-options.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [MLIR][Vector] Enhance shape_cast unrolling support in case the target shape is [1, 1, ..1]  (#183436)

This PR fixes a minor issue in shape_cast unrolling: when all target
dimensions are unit-sized, it no longer removes all leading unit
dimensions.


  Commit: 370273382035097069c5472378df84e10e6fa66b
      https://github.com/llvm/llvm-project/commit/370273382035097069c5472378df84e10e6fa66b
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll

  Log Message:
  -----------
  [SelectionDAG] Fix CLMULR/CLMULH expansion  (#183537)

For v8i8 on AArch64, `expandCLMUL` picked the zext path (ExtVT=v8i16) since ZERO_EXTEND/SRL were legal, but CLMUL on v8i16 is not, resulting in a bit-by-bit expansion (~42 insns). Prefer the bitreverse path when CLMUL is legal on VT but not ExtVT.

v8i8 CLMULR: 42 → 4 instructions.

Fixes #182780


  Commit: f55b86258c913669a143e466adc43afb851bcbfb
      https://github.com/llvm/llvm-project/commit/f55b86258c913669a143e466adc43afb851bcbfb
  Author: RattataKing <amilywu2 at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp

  Log Message:
  -----------
  [mlir][Python] Drop Python <=3.9 compatibility path (#183416)

According to PR #163499, minimum Python version for mlir-py is now 3.10,
we no longer need patches for py<=3.9.

This change aligns with the Python version bump policy discussed
[here](https://discourse.llvm.org/t/rfc-adopt-regularly-scheduled-python-minimum-version-bumps/88841).


  Commit: 620425a884388947ae691f3b80545e47c8687840
      https://github.com/llvm/llvm-project/commit/620425a884388947ae691f3b80545e47c8687840
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Tensor/canonicalize.mlir

  Log Message:
  -----------
  [mlir][tensor] Fix crash in tensor.from_elements fold with non-scalar element types (#183659)

The fold for tensor.from_elements attempted to always produce a
DenseElementsAttr by calling DenseElementsAttr::get(type, elements).
However, DenseElementsAttr::get only handles basic scalar element types
(integer, index, float, complex) directly. For other element types such
as vector types, it expects StringAttr (raw bytes) for each element,
which folded constants won't provide — triggering an assertion.

Fix this by guarding the fold: only attempt the DenseElementsAttr fold
when the tensor element type is integer, index, float, or complex.

Fixes #180459


  Commit: bcd8819aee057f483c040743a6e8ccb2ecd7d44a
      https://github.com/llvm/llvm-project/commit/bcd8819aee057f483c040743a6e8ccb2ecd7d44a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir][transforms] Fix crash in remove-dead-values when function has non-call users (#183655)

`processFuncOp` asserts that all symbol uses of a function are
`CallOpInterface` operations. This is violated when a function is
referenced by a non-call operation such as `spirv.EntryPoint`, which
uses the function symbol for metadata purposes without calling it.

Fix this by replacing the assertion with an early return: if any user of
the function symbol is not a `CallOpInterface`, skip the function
entirely. This is safe because the pass cannot determine the semantics
of arbitrary non-call references, so it should leave such functions
alone.

Fixes #180416


  Commit: ef05d06109405fa4080f9dad762c7a5523a4b8b7
      https://github.com/llvm/llvm-project/commit/ef05d06109405fa4080f9dad762c7a5523a4b8b7
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCoreProperties.td
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernelCore] Implement DoWriteMemory() (#183553)

Implement `ProcessFreeBSDKernelCore::DoWriteMemory()` to write data on
kernel crash dump or `/dev/mem`. Due to safety reasons (e.g. writing
wrong value on `/dev/mem` can trigger kernel panic), this feature is
only enabled when `plugin.process.freebsd-kernel-core.read-only` is set
to false (true by default).

Since 85a1fe6 (#183237) was reverted as it was prematurely merged, I'm
committing changes again with corrections here.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: d8956d7796bb2d7e5feb7945dffb2dbcf372aaa3
      https://github.com/llvm/llvm-project/commit/d8956d7796bb2d7e5feb7945dffb2dbcf372aaa3
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
    M llvm/lib/Target/SPIRV/SPIRVAPI.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.h

  Log Message:
  -----------
  [SPIRV][NFCI] Use unordered data structures for SPIR-V extensions (#183567)

Review follow-up from https://github.com/llvm/llvm-project/pull/183325
No reason for these data structures to be ordered.

Minor annoyance when trying to use `DenseMap` because of the C++ code
for enums generated by TableGen, but not too bad.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 53656d1a2fad6765e69dbdc6613d44013d7bfcbd
      https://github.com/llvm/llvm-project/commit/53656d1a2fad6765e69dbdc6613d44013d7bfcbd
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/test/DebugInfo/CXX/vtable-external.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
    M clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp

  Log Message:
  -----------
  [clang][DebugInfo] Rename _vtable$ to __clang_vtable (#183617)

Discussion is a follow-up from
https://github.com/llvm/llvm-project/issues/182762#issuecomment-3965207289
(where we're discussing how LLDB could make use of this symbol for
vtable detection).

`_vtable$` is not a reserved identifier in C or C++. In order for
debuggers to reliably use this symbol without accidentally reaching into
user-identifiers, this patch renames it such that it is reserved. The
naming follows the style of the recently added `__clang_trap_msg`
debug-info symbol.


  Commit: 4eab75e21fdf1f180ef46f00591cc30cf72df69a
      https://github.com/llvm/llvm-project/commit/4eab75e21fdf1f180ef46f00591cc30cf72df69a
  Author: Akash Dutta <137309513+akadutta at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/zext-duplicate-shift.ll

  Log Message:
  -----------
  [SLP][NFC] Precommit test for zext reorder with duplicate shifts (#183748)

This is a pre-commit test for
https://github.com/llvm/llvm-project/pull/183627,


  Commit: 11a92a9305a79548449731e3be989a3ffaa8ae53
      https://github.com/llvm/llvm-project/commit/11a92a9305a79548449731e3be989a3ffaa8ae53
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCGOFFAttributes.h
    M llvm/include/llvm/MC/MCSymbolGOFF.h
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCSymbolGOFF.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp

  Log Message:
  -----------
  [SystemZ] Add indirect reference bit XATTR REFERENCE(INDIRECT) for indirect symbol handling support (#183441)

This is the first of three patches aimed to support indirect symbol
handling for the SystemZ backend. This PR introduces a `GOFF:ERAttr` to
represent indirect references, handles indirect symbols within
`setSymbolAttribute()` by setting the indirect reference bit, and also
updates the HLASM streamer to emit `XATTR REFERENCE(INDIRECT)` and
various other combinations.


  Commit: ed05f7012fe93af8b2b230f7059d0162d8aed126
      https://github.com/llvm/llvm-project/commit/ed05f7012fe93af8b2b230f7059d0162d8aed126
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp
    M mlir/test/Dialect/Vector/vector-multi-reduction-flattening.mlir

  Log Message:
  -----------
  [mlir][vector] Rename `ReduceMultiDimReductionRank` -> `FlattenMultiReduction` (NFC) (#183721)

The updated name better captures what the pattern does and matches the
coresponding `populat*` hook,
`populateVectorMultiReductionFlatteningPatterns`, that only contains
this pattern.


  Commit: 2265d3240f23c1c6ff7b4d0fa2711a9ed36fdc8a
      https://github.com/llvm/llvm-project/commit/2265d3240f23c1c6ff7b4d0fa2711a9ed36fdc8a
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp

  Log Message:
  -----------
  [pdb] Fix libc++ strict-weak-ordering assertion failures from gsiRecordCmp (#183749)

Builds using libc++ hardening was hitting asserts like

  libc++ Hardening assertion
  !__comp(*(__first + __a), *(__first + __b)) failed:
  Your comparator is not a valid strict-weak ordering

printf-debugging revealed that symbols like "?ST@@3JA" were not
comparing equal with themselves. It turns out the comparison was done
with

  return S1.compare_insensitive(S2.data());

and even when &S1 == &S2, S1 and S2.data() may not refer to identical
strings, since data() may not have a null terminator where the StringRef
locally ends.

This fixes the ordering, simplifies the code, and makes it a little
faster :)

Fixes: #163755


  Commit: 4b10a4c17781e389e5e67a0aa274ba00382ac149
      https://github.com/llvm/llvm-project/commit/4b10a4c17781e389e5e67a0aa274ba00382ac149
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    A mlir/test/Bytecode/bytecode_producer.mlir
    M mlir/test/CMakeLists.txt
    M mlir/test/lit.cfg.py

  Log Message:
  -----------
  [mlir] Enable specifying bytecode producer in mlir-opt. (#182846)


  Commit: 9c53215d213189d1f62e8f6ee7ba73a089ac2269
      https://github.com/llvm/llvm-project/commit/9c53215d213189d1f62e8f6ee7ba73a089ac2269
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/mul-simplification.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs-apple.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
    M llvm/test/Transforms/LoopVectorize/reduction-minmax-users-and-predicated.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll

  Log Message:
  -----------
  [VPlan] Remove manual region removal when simplifying for VF and UF. (#181252)

Replace manual region dissolution code in
simplifyBranchConditionForVFAndUF with using general
removeBranchOnConst. simplifyBranchConditionForVFAndUF now just creates
a (BranchOnCond true) or updates BranchOnTwoConds.

The loop then gets automatically removed by running removeBranchOnConst.

This removes a bunch of special logic to handle header phi replacements
and CFG updates. With the new code, there's no restriction on what kind
of header phi recipes the loop contains.

Note that VPEVLBasedIVRecipe needs to be marked as readnone. This is
technically unrelated, but I could not find an independent test that
would be impacted.

The code to deal with epilogue resume values now needs updating, because
we may simplify a reduction directly to the start value.

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


  Commit: 975dba28633d2f3746a8a370741b17024b0f5f9b
      https://github.com/llvm/llvm-project/commit/975dba28633d2f3746a8a370741b17024b0f5f9b
  Author: yonghong-song <yhs at fb.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
    M clang/test/CodeGen/distributed-thin-lto/cfi.ll
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    A llvm/test/ThinLTO/X86/Inputs/reduce-promotion-same-file-local-name.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
    M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
    M llvm/test/ThinLTO/X86/import_callee_declaration.ll
    M llvm/test/ThinLTO/X86/load-store-caching.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-devirt.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-same-file-local-name.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-same-local-name.ll
    A llvm/test/ThinLTO/X86/reduce-promotion.ll
    M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
    M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
    M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll

  Log Message:
  -----------
  [ThinLTO] Reduce the number of renaming due to promotions (#178587)

Currently for thin-lto, the imported static global values (functions,
variables, etc) will be promoted/renamed from e.g., foo() to
foo.llvm.<hash>(). Such a renaming caused difficulties in live patching
since function name is changed ([1]).

It is possible that some global value names have to be promoted to avoid
name collision and linker failure. But in practice, majority of name
promotions can be avoided.

In [2], the suggestion is that thin-lto pre-link decides whether
a particular global value needs name promotion or not. If yes, later on
in thinBackend() the name will be promoted.

I compiled a particular linux kernel version (latest bpf-next tree)
and found 1216 global values with suffix .llvm.<hash>. With this patch,
the number of promoted functions is 2, 98% reduction from the
original kernel build.

If some native objects are not participating with LTO, name promotions
have to be done to avoid potential linker issues. So the current
implementation cannot be on by default. But in certain cases, e.g., linux kernel
build, people can enable lld flag --lto-whole-program-visibility to reduce the
number of functions like foo.llvm.<hash>().

For ThinLTOCodeGenerator.cpp which is used by llvm-lto tool and a
few other rare cases, reducing the number of renaming due to promotion,
is not implemented as lld flag '-lto-whole-program-visibility' is not supported
in ThinLTOCodeGenerator.cpp for now. In summary, this pull request
only supports llvm-lto2 style workflow.

  [1] https://lpc.events/event/19/contributions/2212
  [2] https://discourse.llvm.org/t/rfc-avoid-functions-like-foo-llvm-for-kernel-live-patch/89400


  Commit: 729602e81009460a67dae3b8d1d8466b3c83211d
      https://github.com/llvm/llvm-project/commit/729602e81009460a67dae3b8d1d8466b3c83211d
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
    M llvm/lib/Target/SPIRV/SPIRVAPI.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.h

  Log Message:
  -----------
  Revert "[SPIRV][NFCI] Use unordered data structures for SPIR-V extensions" (#183774)

Reverts llvm/llvm-project#183567

UBSan failure.


  Commit: a703d91091ec6f61bc044413a2799349b2214a0d
      https://github.com/llvm/llvm-project/commit/a703d91091ec6f61bc044413a2799349b2214a0d
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
    A lldb/test/API/tools/lldb-dap/cancel/busy_loop.py

  Log Message:
  -----------
  [lldb-dap] Improve test performance for 'cancel' request. (#183632)

Update the test to more cleanly handle making a 'blocking' call using a
custom command instead of python `time.sleep`, which we cannot easily
interrupt.

This should improve the overall performance of the tests, locally they
took around 30s and now finish in around 6s.


  Commit: d1da7f6ee5d7ee8729ade96209d8b19bdef69d52
      https://github.com/llvm/llvm-project/commit/d1da7f6ee5d7ee8729ade96209d8b19bdef69d52
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    A clang/test/ClangScanDeps/modules-symlink-dir-from-module-incremental.c

  Log Message:
  -----------
  [clang-scan-deps] Add test for symlink-aliased module map PCM reuse across incremental scans (#183328)

Add a test that verifies symlink aliases to a module map directory
produce the same PCM across incremental scans.


  Commit: 0617623858054a3533b3ed44d355dee7f9102c1c
      https://github.com/llvm/llvm-project/commit/0617623858054a3533b3ed44d355dee7f9102c1c
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll

  Log Message:
  -----------
  [SPIR-V] Fix non-deterministic compiler output for debug type pointer (#182773)

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


  Commit: de4a1a77e1476e9105a6143a8d3b8760b61ff95f
      https://github.com/llvm/llvm-project/commit/de4a1a77e1476e9105a6143a8d3b8760b61ff95f
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/DependencyScanning/InProcessModuleCache.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Options/Options.td
    M clang/lib/DependencyScanning/InProcessModuleCache.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/Pragma.cpp
    A clang/test/ClangScanDeps/modules-cycle-deadlock.c
    A clang/test/Modules/implicit-cycle-deadlock.c
    M llvm/include/llvm/Support/AdvisoryLock.h
    M llvm/include/llvm/Support/LockFileManager.h
    M llvm/lib/Support/LockFileManager.cpp
    M llvm/lib/Support/VirtualOutputBackends.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp

  Log Message:
  -----------
  [clang][modules] Prevent deadlock in module cache (#182722)

When there's a dependency cycle between modules, the dependency scanner
may encounter a deadlock. This was caused by not respecting the lock
timeout. But even with the timeout implemented, leaving
`unsafeMaybeUnlock()` unimplemented means trying to take a lock after a
timeout would still fail and prevent making progress. This PR implements
this API in a way to avoid UB on `std::mutex` (when it's unlocked by
someone else than the owner). Lastly, this PR makes sure that
`unsafeUnlock()` ends the wait of existing threads, so that they don't
need to hit the full timeout amount.

This PR also implements `-fimplicit-modules-lock-timeout=<seconds>` that
allows tweaking the default 90-second lock timeout, and adds `#pragma
clang __debug sleep` that makes it easier to achieve desired execution
ordering.

rdar://170738600


  Commit: 35f8ca8b76c63b47a6c5a7aa041310f42947a838
      https://github.com/llvm/llvm-project/commit/35f8ca8b76c63b47a6c5a7aa041310f42947a838
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang/test/Lower/Intrinsics/abs.f90
    M flang/test/Lower/Intrinsics/achar.f90
    M flang/test/Lower/Intrinsics/acospi.f90
    M flang/test/Lower/Intrinsics/adjustl.f90
    M flang/test/Lower/intentout-deallocate.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 22) (#183681)

Tests converted from test/Lower: intentout-deallocate.f90
Tests converted from test/Lower/Intrinsics: abs.f90, achar.f90,
acospi.f90, adjustl.f90


  Commit: bad56dbb23853e1413d8df13a26b6a1dc02907a1
      https://github.com/llvm/llvm-project/commit/bad56dbb23853e1413d8df13a26b6a1dc02907a1
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/context.hpp
    M libsycl/include/sycl/__impl/device.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/CMakeLists.txt
    A libsycl/src/context.cpp
    A libsycl/src/detail/context_impl.cpp
    A libsycl/src/detail/context_impl.hpp
    M libsycl/src/detail/device_impl.cpp
    M libsycl/src/detail/device_impl.hpp
    M libsycl/src/detail/offload/offload_utils.hpp
    M libsycl/src/detail/platform_impl.cpp
    M libsycl/src/detail/platform_impl.hpp
    M libsycl/src/device.cpp
    M libsycl/src/platform.cpp

  Log Message:
  -----------
  [libsycl] Add sycl::context stub (#182826)

Part 1 of changes needed for USM alloc/dealloc impl.


This is part of the SYCL support upstreaming effort. The relevant RFCs
can be found here:


https://discourse.llvm.org/t/rfc-add-full-support-for-the-sycl-programming-model/74080
https://discourse.llvm.org/t/rfc-sycl-runtime-upstreaming/74479

---------

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 7f0a343a8ec48b41e3866cdbabfc8740985a44f3
      https://github.com/llvm/llvm-project/commit/7f0a343a8ec48b41e3866cdbabfc8740985a44f3
  Author: Yangyu Chen <cyy at cyyself.name>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Optimizer/Passes/Pipelines.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    A flang/test/Driver/grecord-command-line.f90
    A flang/test/Transforms/debug-dwarf-debug-flags.fir

  Log Message:
  -----------
  [flang] Implement -grecord-command-line for Flang (#181686)

Enable Flang to match Clang behavior for command-line recording in DWARF
producer strings when using -grecord-command-line.

Signed-off-by: Yangyu Chen <cyy at cyyself.name>


  Commit: dc26edd9b6602857b67f35c8d2f6fe4ed13c8137
      https://github.com/llvm/llvm-project/commit/dc26edd9b6602857b67f35c8d2f6fe4ed13c8137
  Author: Amit Kumar Pandey <pandey.kumaramit2023 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/hip-sanitize-options.hip
    M clang/test/Driver/rocm-device-libs.cl

  Log Message:
  -----------
  [ASan] Enable Internalization for 'asanrtl.bc' in Driver (#182825)

Just like other bitcode libs such as ockl.bc ocml.bc, link asanrtl.bc
with '-mlink-builtin-bitcode' in the driver when GPU ASan is enabled.


  Commit: 5661ed60e37d63d5deff6f4c943b928b6b957049
      https://github.com/llvm/llvm-project/commit/5661ed60e37d63d5deff6f4c943b928b6b957049
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [mlir][vector] Fix crashes in MaskOp::fold and CanonializeEmptyMaskOp (#183781)

Two related crashes were fixed in vector.mask handling:

1. MaskOp::fold() crashes with a null pointer dereference when the mask
is all-true and the mask body has no maskable operation (only a
vector.yield). getMaskableOp() returns nullptr in this case, and the
fold was calling nullptr->dropAllUses(). Fixed by returning failure()
when there is no maskable op, deferring to the canonicalizer.

2. CanonializeEmptyMaskOp creates an invalid arith.select when the mask
type is a vector (e.g., vector<1xi1>) but the result type is a scalar
(e.g., i32). arith.select with a vector condition requires the value
types to be vectors of the same shape. Fixed by bailing out when any
result type doesn't match the mask shape.

Regression tests are added for both cases.

Fixes #177833


  Commit: 55d62abadbc5e6bf129378fe9d0b87f124aefee5
      https://github.com/llvm/llvm-project/commit/55d62abadbc5e6bf129378fe9d0b87f124aefee5
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/ValueObject/DILAST.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
    M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/main.cpp

  Log Message:
  -----------
  [lldb] Add arithmetic binary addition to DIL (#177208)


  Commit: d2c545266b8b0216b51c7b87e3ca0980c47c5342
      https://github.com/llvm/llvm-project/commit/d2c545266b8b0216b51c7b87e3ca0980c47c5342
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/unittests/Target/RISCV/RISCVSelectionDAGTest.cpp

  Log Message:
  -----------
  [RISCV] Use getCopyFromReg in unit test to match comment. NFC (#183199)

Using physical register 0, aka NoRegister, also just looked suspicious.


  Commit: cd50a3074bdfcd2d9ba45d99b0129b1c1d68d58d
      https://github.com/llvm/llvm-project/commit/cd50a3074bdfcd2d9ba45d99b0129b1c1d68d58d
  Author: yonghong-song <yhs at fb.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
    M clang/test/CodeGen/distributed-thin-lto/cfi.ll
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    R llvm/test/ThinLTO/X86/Inputs/reduce-promotion-same-file-local-name.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
    M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
    M llvm/test/ThinLTO/X86/import_callee_declaration.ll
    M llvm/test/ThinLTO/X86/load-store-caching.ll
    R llvm/test/ThinLTO/X86/reduce-promotion-devirt.ll
    R llvm/test/ThinLTO/X86/reduce-promotion-same-file-local-name.ll
    R llvm/test/ThinLTO/X86/reduce-promotion-same-local-name.ll
    R llvm/test/ThinLTO/X86/reduce-promotion.ll
    M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
    M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
    M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll

  Log Message:
  -----------
  Revert "[ThinLTO] Reduce the number of renaming due to promotions (#178587)" (#183782)

There is a conflict with existing code. See
  https://github.com/llvm/llvm-project/pull/178587
Revert and resolve the conflict and then will submit later.


  Commit: 179c25eaefe651f815f4a32328d8e51dfcda1d34
      https://github.com/llvm/llvm-project/commit/179c25eaefe651f815f4a32328d8e51dfcda1d34
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/test/CodeGen/AArch64/stack-tagging.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [MTE] [HWASan] support more complicated lifetimes

This allows us to support more lifetimes, and also gets rid of
the quadratic call to isPotentiallyReachable.

Reviewers: pcc, usama54321

Reviewed By: pcc

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


  Commit: 1269a74db9ffde19f8230edeac0ddbcafc3a4d66
      https://github.com/llvm/llvm-project/commit/1269a74db9ffde19f8230edeac0ddbcafc3a4d66
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [bazel] Enable `parse_headers` for llvm/BUILD.bazel (#183680)

Instead of excluding the whole package, push any existing parse_headers
failures to individual targets. In some cases we can avoid suppressing a
target by adding a few missing deps.


  Commit: c3b3f4195219e368bd18fc1a1bab18d0dae45d8f
      https://github.com/llvm/llvm-project/commit/c3b3f4195219e368bd18fc1a1bab18d0dae45d8f
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCSectionGOFF.h
    M llvm/include/llvm/MC/MCSymbolGOFF.h
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAsmInfoGOFF.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h

  Log Message:
  -----------
  [SystemZ] Emit external aliases required for indirect symbol handling  support (#183442)

This is the second of three patches aimed to support indirect symbol
handling for the SystemZ backend. An external name is added for both MC
sections and symbols and makes the relevant printers and writers utilize
the external name when present. Furthermore, the ALIAS HLASM instruction
is emitted after every XATTR instruction.

Depends on https://github.com/llvm/llvm-project/pull/183441.


  Commit: 0d95dda1eeee690bb7c3ec425ebfed5a8a80517b
      https://github.com/llvm/llvm-project/commit/0d95dda1eeee690bb7c3ec425ebfed5a8a80517b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/LoopInfo.cpp
    M llvm/test/Transforms/LoopDeletion/invalidate-scev-after-hoisting.ll
    A llvm/test/Transforms/LoopSimplify/profile-info.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [LoopInfo] Preserve profile information in makeLoopInvariant (#174171)

When hoisting loop invariant instructions, we can preserve profile
metadata because it depends solely on the condition (which is loop
invariant) rather than where we are in the control flow graph.


  Commit: 67a51ea34d25b4be246791af5df858167dce901c
      https://github.com/llvm/llvm-project/commit/67a51ea34d25b4be246791af5df858167dce901c
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/PowerPC/bit_floor.ll

  Log Message:
  -----------
  [NFC][POWER] add Pre-Commit test case for Inefficient std::bit_floor(x)  (#183363)

add a pre-commit test case for Inefficient asm of std::bit_floor(x) for
powerpc.


  Commit: c49460bae76c873725ae77d5f9b4d6239b7c40a7
      https://github.com/llvm/llvm-project/commit/c49460bae76c873725ae77d5f9b4d6239b7c40a7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/lock.h
    M flang-rt/include/flang-rt/runtime/tools.h
    M flang-rt/lib/runtime/CMakeLists.txt
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/environment.cpp
    M flang-rt/lib/runtime/stop.cpp
    M flang-rt/lib/runtime/terminator.cpp
    M flang/include/flang/Common/api-attrs.h
    A offload/test/offloading/fortran/target-descriptor-ops.f90

  Log Message:
  -----------
  [flang-rt] Enable more runtime functions for the GPU target (#183649)

Summary:
This enables primarily `stop.cpp` and `descriptor.cpp`. Requires a
little bit of wrangling to get it to compile. Unlike the CUDA build,
this build uses an in-tree libc++ configured for the GPU. This is
configured without thread support, environment, or filesystem, and it is
not POSIX at all. So, no mutexes, pthreads, or get/setenv.

I tested stop, but i don't know if it's actually legal to exit from
OpenMP offloading.


  Commit: 6301243a5d69146b4b76ac4233b0b2f6a3c31616
      https://github.com/llvm/llvm-project/commit/6301243a5d69146b4b76ac4233b0b2f6a3c31616
  Author: Kshitij Paranjape <kshitijvparanjape at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Transforms/AggressiveInstCombine/X86/pr175590.ll

  Log Message:
  -----------
  Reapply "[ValueTracking] Propagate sign information out of loop" (#182512)

LLVM converts sqrt libcall to intrinsic call if the argument is within
the range(greater than or equal to 0.0). In this case the compiler is
not able to deduce the non-negativity on its own. Extended ValueTracking
to understand such loops.

Have created new ABI's for matching Intrinsics with three operands
(those existed only for 2 operands)
`matchSimpleTernaryIntrinsicRecurrence` and `matchThreeInputRecurrence`.

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


  Commit: ca0e7d31d05bea7b6d29a420e9b1c756a1845e95
      https://github.com/llvm/llvm-project/commit/ca0e7d31d05bea7b6d29a420e9b1c756a1845e95
  Author: kwyatt-ext <kwyatt.external at hpe.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang-rt/lib/runtime/character.cpp
    M flang-rt/unittests/Runtime/CharacterTest.cpp
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Character.h
    M flang/include/flang/Runtime/character.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Character.cpp
    A flang/test/Lower/Intrinsics/tokenize.f90
    A flang/test/Semantics/tokenize-errors.f90

  Log Message:
  -----------
  [flang] [flang-rt] Addition of the Fortran 2023 TOKENIZE intrinsic. (#181030)

This implements the TOKENIZE intrinsic per the Fortran 2023 Standard.

TOKENIZE is a more complicated addition to the flang intrinsics, as it
is the first subroutine that has multiple unique footprints. Intrinsic
functions have already addressed this challenge, however subroutines and
functions are processed slightly differently and the function code was
not a good 1:1 solution for the subroutines. To solve this the function
code was used as an example to create error buffering within the
intrinsics Process and select the most appropriate error message for a
given subroutine footprint.

A simple FIR compile test was added to show the proper compilation of
each case. A thorough negative path test has also been added, ensuring
that all possible errors are reported as expected.

Testing prior to commit:

= check-flang ==========================================
```
Testing Time: 139.51s

Total Discovered Tests: 4153
  Unsupported      :   77 (1.85%)
  Passed           : 4065 (97.88%)
  Expectedly Failed:   11 (0.26%)


FLANG Container Test completed 2 minutes (160 s).

Total Time: 2 minutes (160 s)
Completed : Wed Feb 11 04:05:50 PM CST 2026
```

= check-flang-rt ==========================================
```
Testing Time: 1.55s

Total Discovered Tests: 258
  Passed: 258 (100.00%)


FLANG Container Test completed 0 minutes (55 s).

Total Time: 0 minutes (56 s)
Completed : Wed Feb 11 04:08:32 PM CST 2026
```

= llvm-test-suite ==========================================
```
Testing Time: 1886.64s

Total Discovered Tests: 6926
  Passed: 6926 (100.00%)


CCE SLES Container debug compile completed 31 minutes (1895 s).
CCE SLES Container debug install completed in 0 minutes (0 s).

Total Time: 31 minutes (1895 s)
Completed : Wed Feb 11 05:46:52 PM CST 2026
```

Additionally, (FYI) an executable test has been written and will be
added to the llvm-test-suite under a separate PR.

---------

Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>


  Commit: 48eb40bee0248423fd6175ecd192ab15a71fb27b
      https://github.com/llvm/llvm-project/commit/48eb40bee0248423fd6175ecd192ab15a71fb27b
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-dap/variables/children/TestDAP_variables_children.py
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/ScopesRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/SBAPIExtras.h
    M lldb/tools/lldb-dap/Variables.cpp
    M lldb/tools/lldb-dap/Variables.h
    M lldb/unittests/DAP/DAPTypesTest.cpp
    M lldb/unittests/DAP/Inputs/linux-x86_64.core.yaml
    M lldb/unittests/DAP/Inputs/linux-x86_64.out.yaml
    M lldb/unittests/DAP/VariablesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Adjust VariableReferenceStorage lifetime management. (#183176)

Adjusting `VariableReferenceStorage` to only need to track permanent vs
temporary storage by making `VariableStore` the common base class.

Moved the subclasses of `VariableStore` into the Variables.cpp file,
since they're no long referenced externally.

Expanding on the tests by adding an updated core dump with variables in
the argument scope we can use to validate variable storage.


  Commit: 852c6ef5aca60c17c2b0972d44b4664759884927
      https://github.com/llvm/llvm-project/commit/852c6ef5aca60c17c2b0972d44b4664759884927
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][LLVM] Let decomposeValue/composeValue handle aggregates (#183405)

This commit updates the LLVM::decomposeValue and LLVM::composeValue
methods to handle aggregate types - LLVM arrays and structs, and to have
different behaviors on dealing with types like pointers that can't be
bitcast to fixed-size integers. This allows the "any type" on
gpu.subgroup_broadcast to be more comprehensive - you can broadcast a
memref to a subgroup by decomposing it, for example.

(This branched off of getting an LLM to implement
ValueuboundsOpInterface on subgroup_broadcast, having it add handling
for the dimensions of shaped types, and realizing that there's no
fundamental reason you can't broadcast a memref or the like)

---------

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>


  Commit: c05e323be7caaadff6fdd09a2336be60e3041af1
      https://github.com/llvm/llvm-project/commit/c05e323be7caaadff6fdd09a2336be60e3041af1
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp

  Log Message:
  -----------
  [WebAssembly] Incorporate SCCs into WebAssemblyFixIrreducibleControlFlow (#181755)

Rather than mapping out full "reachability" between blocks in a region
to find loops and using `LoopBlocks` to find the bodies of said loops,
use SCCs (strongly-connected components) to provide this information.

This brings in LLVM's generic `SCCIterator` (which uses Tarjan's
algorithm) as the implementation for sorting the basic blocks of the CFG
into their SCCs.

This PR greatly reduces the compile-time footprint of the pass, making
memory use and time taken negliable where it might have previously
caused stalls and OOM before (e.g. #47793,
usagi-coffee/tree-sitter-abl#114)

------

Supersedes #179722

Fixes #47793
Fixes #165041 (probably)

Thanks to @jkbz64 for the initial investigations (w/ AI; see #179722)
into why this pass was slow and memory consuming and showing that SCCs
were the key.

Also thanks to the Cheerp compiler project for bringing `SCCIterator` to
light in this context ([blog
post](https://cheerp.io/blog/control-flow#fix-the-irreducible-control-flow),
[implementation](https://github.com/leaningtech/cheerp-compiler/blob/master/llvm/lib/CheerpUtils/FixIrreducibleControlFlow.cpp)).


  Commit: dce48f2653cb81883a24ff5babdcac5bcb91725c
      https://github.com/llvm/llvm-project/commit/dce48f2653cb81883a24ff5babdcac5bcb91725c
  Author: Amit Kumar Pandey <pandey.kumaramit2023 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c

  Log Message:
  -----------
  [OpenMP] Enable internalization of 'ockl.bc' for OpenMP (#183685)

Fix linking of 'ockl.bc' for OpenMP by switching from
`-mlink-bitcode-file` to `-mlink-builtin-bitcode`


  Commit: 403fd7679f80c97c13e992b32a6762bfc92641cb
      https://github.com/llvm/llvm-project/commit/403fd7679f80c97c13e992b32a6762bfc92641cb
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SlotIndexes.cpp
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/remat-sop.mir
    M llvm/test/CodeGen/X86/statepoint-live-in.ll
    M llvm/test/CodeGen/X86/statepoint-regs.ll

  Log Message:
  -----------
  [SlotIndexes] Further pack indices to improve spill placement time (#182640)

This patch makes it so that renumbering indices when inserting
instructions into the SlotIndexes analysis renumbers the entire list if
the list is otherwise densely packed. This fixes a case we saw on
AArch64 with a lot of spills where every single spill instruction
insertion required a renumbering of most of the instructions in a large
function, making the operation approximately quadratic.

This is not NFC as heuristics depend on the SlotIndex numbers, although
this should mostly be a wash as LRs should be extended ~equally.


  Commit: 282a2b77c358c4509f8fcc97c2f0f2b8cdc9b915
      https://github.com/llvm/llvm-project/commit/282a2b77c358c4509f8fcc97c2f0f2b8cdc9b915
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    R clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummary.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummaryEncoding.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Add `JSONFormat` support for `TUSummaryEncoding`

This PR adds `JSONFormat` support for reading and writing
`TUSummaryEncoding`. The implementation exploits similarities in the
structures of `TUSummary` and `TUSummaryEncoding` by reusing existing
`JSONFormat` support for `TUSummary`. Duplication of tests has been
avoided by parameterizing the test fixture that runs all relevant
read/write tests against `TUSummary`, for `TUSummaryEncoding`. This
ensures that the two serialization paths remain in lockstep.


  Commit: cf28f23f10133f0419768ce8284fe05fa079f93c
      https://github.com/llvm/llvm-project/commit/cf28f23f10133f0419768ce8284fe05fa079f93c
  Author: Akash Dutta <137309513+akadutta at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/zext-duplicate-shift.ll

  Log Message:
  -----------
  [SLP] Reject duplicate shift amounts in matchesShlZExt reorder path (#183627)

In the reordered RHS path of matchesShlZExt, the code never checked that
each shift amount (0, Stride, 2×Stride, …) appears at most once. When
the same shift appeared in multiple lanes, it still filled Order,
producing a non-permutation (e.g. Order = [0,0,0,1]). That led to bad
shuffle masks and miscompilation (e.g. shuffles with poison).

The patch adds an explicit duplicate check: before setting Order[Idx] =
Pos, it ensures Pos has not been seen before, using a SmallBitVector
SeenPositions(VF). If a position is seen twice, the function returns
false and the optimization is not applied.


  Commit: 25d709e72c976f8f7420a342e7916b46b6c23e28
      https://github.com/llvm/llvm-project/commit/25d709e72c976f8f7420a342e7916b46b6c23e28
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/test/CodeGen/SystemZ/zos-ada-relocations.ll

  Log Message:
  -----------
  [SystemZ] Emit external aliases for indirect function descriptors in the ADA section (#183443)

This is the last of the three patches aimed to support indirect symbol
handling for the SystemZ backend.

An external alias is emitted for indirect function descriptors within
the ADA section, rather than a temporary alias, while also setting all
of the appropriate symbol attributes that are needed for the HLASM
streamer to emit the correct XATTR and ALIAS instructions for the
indirect symbols.

Moreover, this patch updates the
`CodeGen/SystemZ/zos-ada-relocations.ll` test as the ADA section is
currently the only user of indirect symbols on z/OS.

Depends on https://github.com/llvm/llvm-project/pull/183442.


  Commit: ee6f5f386f95753d869045acbe54a6b3ec38dde9
      https://github.com/llvm/llvm-project/commit/ee6f5f386f95753d869045acbe54a6b3ec38dde9
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    A llvm/test/Transforms/InstCombine/alloca-poison-size.ll

  Log Message:
  -----------
  [InstCombine] Replace alloca with undef size with poison instead of null (#182919)

InstCombine previously replaced an alloca instruction with a null
pointer when the array size operand was undef. While this replacement
may be legal, it still caused invalid IR in cases where the original
alloca was used by `@llvm.lifetime` intrinsics.

The spec requires that the pointer operand of `@llvm.lifetime.*` must be
either:

- a pointer to an alloca instruction, or
- a poison value.

Replacing the pointer with null violated this requirement and triggered
verifier errors.

These new changes update InstCombine so that in this scenario the alloca
is replaced with poison instead of null.


  Commit: 8ce2b9cbc2bcde50189e74650cf994e8f549f58d
      https://github.com/llvm/llvm-project/commit/8ce2b9cbc2bcde50189e74650cf994e8f549f58d
  Author: Tommy Chiang <ototot at google.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/DeclCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/test/CodeGenCXX/mangle-lambdas.cpp

  Log Message:
  -----------
  [Clang][ItaniumMangle] Fix recursive mangling for lambda init-captures (#182667)

[Clang][ItaniumMangle] Fix recursive mangling for lambda init-captures

Mangle computation for lambda signatures can recurse when a call
operator type
references an init-capture (for example via decltype(init-capture)). In
these
cases, mangling can re-enter the init-capture declaration and cycle back
through
operator() mangling.

Make lambda context publication explicit and independent from numbering
state,
then use that context uniformly during mangling:
* Publish lambda `ContextDecl` in `Sema::handleLambdaNumbering()` before
numbering, so dependent type mangling can resolve the lambda context
without
  recursing through the call operator.
* Introduce `CXXRecordDecl::setLambdaContextDecl()` and remove
`ContextDecl`
  from `CXXRecordDecl::LambdaNumbering`.
* Update `ASTImporter` to import/set lambda context separately from
numbering.
* In Itanium mangling, derive init-capture handling from context
computation:
  - map local-lambda init-captures to the enclosing local context in
    `getEffectiveDeclContext()`
  - support init-capture variables in `getClosurePrefix()`
  - keep `mangleLocalName()` generic and rely on the computed context

Add mangling regression coverage in mangle-lambdas.cpp, including:
* local init-captures used through decltype
* non-local variable-template init-captures in decltype
* non-local static inline member init-captures in decltype

* Fixes https://github.com/llvm/llvm-project/issues/63271
* Fixes https://github.com/llvm/llvm-project/issues/86240
* Fixes https://github.com/llvm/llvm-project/issues/139089


  Commit: df5bee6afc79eb393c6dcbaad1b2ab3665f3a853
      https://github.com/llvm/llvm-project/commit/df5bee6afc79eb393c6dcbaad1b2ab3665f3a853
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir
    A clang/test/CIR/Transforms/flatten-try-op.cir

  Log Message:
  -----------
  [CIR] Implement TryOp flattening (#183591)

This updates the FlattenCFG pass to add flattening for cir::TryOp in
cases where the TryOp contains catch or unwind handlers.

Substantial amounts of this PR were created using agentic AI tools, but
I have carefully reviewed the code, comments, and tests and made changes
as needed. I've left intermediate commits in the initial PR if you'd
like to see the progression.


  Commit: 3d889c464eb19f3c9d5dd00caab37be19a81efa3
      https://github.com/llvm/llvm-project/commit/3d889c464eb19f3c9d5dd00caab37be19a81efa3
  Author: Ben Dunkin <108952361+bdunkin at users.noreply.github.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [clang-format] Fix SpaceBeforeParens with explicit template instantiations (#183183)

This fixes explicit template instantiated functions not having spaces
added/removed based on the value of `SpaceBeforeParens`.

Attribution Note - I have been authorized to contribute this change on
behalf of my company: ArenaNet LLC


  Commit: 4f05592bc01ca0252e904a59f8e321e254cd0473
      https://github.com/llvm/llvm-project/commit/4f05592bc01ca0252e904a59f8e321e254cd0473
  Author: Srividya Sundaram <srividya.sundaram at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    A clang/test/Driver/sycl-offload-jit-xarch.cpp

  Log Message:
  -----------
  [Driver][SYCL] Add tests for -Xarch_<arch> option forwarding to SYCL JIT compilation. (#178025)

This change adds test coverage to verify that options passed via
`-Xarch_<arch> <option>` are correctly forwarded to SYCL JIT
compilations.


  Commit: d1f4f9453c78619af334dfe59f812fe54f70459b
      https://github.com/llvm/llvm-project/commit/d1f4f9453c78619af334dfe59f812fe54f70459b
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M flang/include/flang/Semantics/expression.h
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/bug2295.f90

  Log Message:
  -----------
  [flang] Fix explanatory messages for generic resolution error (#183565)

The compiler emits messages to explain why each of a generic procedure's
specific procedures is not a match for a given set of actual arguments.
In the case of specific procedures with PASS arguments in derived type
procedure bindings or procedure components, these explanatory messages
are often bogus, because the re-analysis didn't adjust the actual
arguments to account for the PASS argument. Fix.


  Commit: 6f612cfbd921f48f28d228689cabd8722ad47368
      https://github.com/llvm/llvm-project/commit/6f612cfbd921f48f28d228689cabd8722ad47368
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx11.cpp

  Log Message:
  -----------
  [clang] stop error recovery in SFINAE for narrowing in converted constant expressions (#183614)

A narrowing conversion in a converted constant expression should produce
an invalid expression so that [temp.deduct.general]p7 is satisfied, by
stopping substitution at this point.

This regression was introduced in #164703, and this will be backported
to clang-22, so no release notes.

Fixes #167709


  Commit: ca04a70891fbc1ce97f3abd3479848c3731fe8c8
      https://github.com/llvm/llvm-project/commit/ca04a70891fbc1ce97f3abd3479848c3731fe8c8
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16sub.h
    A libc/shared/math/bf16subf.h
    A libc/shared/math/bf16subf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16sub.h
    A libc/src/__support/math/bf16subf.h
    A libc/src/__support/math/bf16subf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16sub.cpp
    M libc/src/math/generic/bf16subf.cpp
    M libc/src/math/generic/bf16subf128.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16sub family to header-only (#182115)

Refactors the bf16sub math family to be header-only.

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

Target Functions:
  - bf16sub
  - bf16subf
  - bf16subf128


  Commit: fc153b1e254fcdab9fa6c2c477f7ba3dec187454
      https://github.com/llvm/llvm-project/commit/fc153b1e254fcdab9fa6c2c477f7ba3dec187454
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Check if each field is trivially destructive (#183711)

This PR fixes the bug that NoDeleteChecker and trivial function analysis
were not detecting any non-trivial destruction of class member
variables.

When evaluating a delete expression or calling a destructor directly for
triviality, check if each field in the class and its base classes is
trivially destructive.


  Commit: fff2f0ba78fe0a7073dd971c0db48d6d0f17975c
      https://github.com/llvm/llvm-project/commit/fff2f0ba78fe0a7073dd971c0db48d6d0f17975c
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir

  Log Message:
  -----------
  [AMDGPU] Handle GFX1250 hazards between WMMA and VOPD (#183573)

Hazards between WMMA and VALU were handled in #149865 but this only
worked for regular VOP* VALU encodings, not for VOPD.

Fixes: #183546


  Commit: 02ebe23163c03a2a4f470f9b3073b35046926a99
      https://github.com/llvm/llvm-project/commit/02ebe23163c03a2a4f470f9b3073b35046926a99
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/docs/AddressSanitizer.rst

  Log Message:
  -----------
  [ASan] Document limitations of container overflow checks (#183590)

Mention that partially poisoning stack objects can
lead to false positives and negatives.

See #182720.

---------

Co-authored-by: Saleem Abdulrasool <compnerd at compnerd.org>


  Commit: 2c98566900f09aa329c41abd164766e7a7e76968
      https://github.com/llvm/llvm-project/commit/2c98566900f09aa329c41abd164766e7a7e76968
  Author: Daniel Thornburgh <mysterymath at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/HLSL.cpp
    R clang/test/Driver/HLSL/fre-errors.hlsl
    M clang/test/Driver/HLSL/metal-converter.hlsl

  Log Message:
  -----------
  Revert "[Metal][HLSL] Add support for dumping reflection" (#183818)

Reverts llvm/llvm-project#181258

`env PATH=""` will prevent finding any binary run by `env`.


  Commit: 977702ccc40dbaad64a453e75239914f3dff0761
      https://github.com/llvm/llvm-project/commit/977702ccc40dbaad64a453e75239914f3dff0761
  Author: Serosh <janmejayapanda400 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/SemaCXX/gh183505.cpp

  Log Message:
  -----------
  [clang] fix crash when casting a parenthesized unresolved template-id (#183633)

this fix uses ignoreparens() in checkplaceholderexpr to prevent a crash
when an unresolved template-id is wrapped in parentheses. fixes #183505


  Commit: d0afaeadecd06849b3d9cf107cf23c583b5a7736
      https://github.com/llvm/llvm-project/commit/d0afaeadecd06849b3d9cf107cf23c583b5a7736
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/HeaderSearchOptions.h
    M clang/include/clang/Lex/ModuleMap.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/Modules/lazy-by-header-extern.c
    A clang/test/Modules/lazy-by-header-lookup.c
    A clang/test/Modules/lazy-by-header-nested.c
    A clang/test/Modules/lazy-by-header-private.c
    A clang/test/Modules/lazy-by-header-umbrella-dir.c
    A clang/test/Modules/lazy-by-header-umbrella-header.c
    M clang/test/Modules/lazy-by-name-lookup.c

  Log Message:
  -----------
  [clang][modulemap] Lazily load module maps by header name (#181916)

After header search has found a header it looks for module maps that
cover that header. This patch uses the parsed representation of module
maps to do this search instead of relying on FileEntryRef lookups after
stating headers in module maps.

This behavior is currently gated behind the
`-fmodules-lazy-load-module-maps` `-cc1` flag.


  Commit: 1073951bdb8e12552a5d9b9fffa806ffe187e475
      https://github.com/llvm/llvm-project/commit/1073951bdb8e12552a5d9b9fffa806ffe187e475
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
    M mlir/test/Dialect/ControlFlow/canonicalize.mlir

  Log Message:
  -----------
  [mlir][cf] Fix crash in simplifyBrToBlockWithSinglePred when branch operand is a block argument of its successor (#183797)

When `simplifyBrToBlockWithSinglePred` merges a block into its sole
predecessor, it calls `inlineBlockBefore` which replaces each block
argument with the corresponding value passed by the branch. If one of
those values is itself a block argument of the successor block, the call
`replaceAllUsesWith(arg, arg)` is a no-op. Any uses of that argument
outside the block (e.g. in a downstream block) are therefore not
replaced, and when the successor block is erased the argument is
destroyed while those uses are still live, triggering the assertion
`use_empty() && "Cannot destroy a value that still has uses\!"` in
`IRObjectWithUseList::~IRObjectWithUseList`.

Guard against this by returning early when any branch operand is a block
argument owned by the destination block.

Fixes #126213


  Commit: a71ded3861aafd88cc8abd672a24901d73e5624a
      https://github.com/llvm/llvm-project/commit/a71ded3861aafd88cc8abd672a24901d73e5624a
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT][AArch64] Add a unittest for compare-and-branch inversion. (#181177)

Checks that isReversibleBranch() returns false
 - when the immediate value is 63 and needs +1 adjustment
 - when the immediate value is 0 and needs -1 adjustment

Checks that reverseBranchCondition() adjusts
 - the opcode
 - the immediate operand if necessary (+/-1)
 - the register operands if necessary (swap)


  Commit: c2f66f2a940e8c7edca2264ae207db5711432070
      https://github.com/llvm/llvm-project/commit/c2f66f2a940e8c7edca2264ae207db5711432070
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp

  Log Message:
  -----------
  [WebAseembly] Fix -Wunused-variable in #181755

This variable ends up being unused in builds without assertions. Mark it
[[maybe_unused]] per the coding standards.


  Commit: 63ab568070c757ad9c4a4ba8c34f12f69e3ccc6d
      https://github.com/llvm/llvm-project/commit/63ab568070c757ad9c4a4ba8c34f12f69e3ccc6d
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [NFC] [HWASan] add test for duplicated lifetime end



Reviewers: 

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


  Commit: 94bd8b9444be293dbed98b0c3c2adaeac796e31f
      https://github.com/llvm/llvm-project/commit/94bd8b9444be293dbed98b0c3c2adaeac796e31f
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/stack-tagging.ll

  Log Message:
  -----------
  [NFC] [MTE] add test for duplicated lifetime end



Reviewers: 

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


  Commit: d7e037c8383e66e5c07897f144f6d8ef47258682
      https://github.com/llvm/llvm-project/commit/d7e037c8383e66e5c07897f144f6d8ef47258682
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/mul-simplification.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs-apple.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
    M llvm/test/Transforms/LoopVectorize/reduction-minmax-users-and-predicated.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll

  Log Message:
  -----------
  Revert "[VPlan] Remove manual region removal when simplifying for VF and UF. (#181252)"

This reverts commit 9c53215d213189d1f62e8f6ee7ba73a089ac2269.

Appears to cause crashes with ordered reductions, revert while I
investigate


  Commit: cdd4313183184e0741cce3b425779fcce16cc39b
      https://github.com/llvm/llvm-project/commit/cdd4313183184e0741cce3b425779fcce16cc39b
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][LLVM] Let decomposeValue/composeVale pad out larger types (#183825)

Currently, as pointed out in the reviews for #183405, decomposeValues
and composeValues should be able to emit zexts and truncations for cases
like i48 and vector<3xi16> becoming i32s but currently that's an assert.
This commit fixes that limitation.

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>


  Commit: 8f268e63e484106f25e2a5740c8a38b587218387
      https://github.com/llvm/llvm-project/commit/8f268e63e484106f25e2a5740c8a38b587218387
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Program.h

  Log Message:
  -----------
  [Offload] Remove unused data type (#183840)


  Commit: 73d655a598d7743a2d415c4c85110c591414a08b
      https://github.com/llvm/llvm-project/commit/73d655a598d7743a2d415c4c85110c591414a08b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll

  Log Message:
  -----------
  [VPlan] Support unrolling/cloning masked VPInstructions.

Account for masked VPInstruction when verifying the operands in the
constructor. Fixes a crash when trying to unroll VPlans for predicated
early exits.


  Commit: 7ad2c6db54a0e77249f2edb3c589ccf4c930d455
      https://github.com/llvm/llvm-project/commit/7ad2c6db54a0e77249f2edb3c589ccf4c930d455
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
    M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
    M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
    M mlir/test/Dialect/Arith/canonicalize.mlir
    M mlir/test/Dialect/Arith/ops.mlir
    M mlir/test/Transforms/canonicalize.mlir

  Log Message:
  -----------
  [mlir][arith] Add `exact` to `index_cast{,ui}` (#183395)

The `exact` flag with the following semantics

> If the `exact` attribute is present, it is assumed that the index type
width
> is such that the conversion does not lose information. When this
assumption
>    is violated, the result is poison.

can be added to index_cast and index_castui operations. This unlocks
the following lowerings:

*   index_cast (signed) exact    -> trunc nsw
*   index_castui (unsigned) exact -> trunc nuw
*   index_castui nneg exact       -> trunc nuw nsw

Changes:

* Adds ArithExactFlagInterface.
* Updates Arith_IntBinaryOpWithExactFlag to use ArithExactFlagInterface
* Update IndexCastOp and IndexCastUIOp to declare
`ArithExactFlagInterface`
* Update canonicalization patterns
* Update roundtrip, lowering, and canonicalization tests.


  Commit: abbba22f45665b25b01693fc7a41712660b3c124
      https://github.com/llvm/llvm-project/commit/abbba22f45665b25b01693fc7a41712660b3c124
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/examples/python/formatter_bytecode.py
    M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test

  Log Message:
  -----------
  [lldb] Add synthetic support to formatter_bytecode.py (#183804)

Updates formatter_bytecode.py to support compilation and disassembly for
synthetic formatters, in other words support for multiple functions
(signatures).

This includes a number of other changes:
* String parsing and encoding have bugs fixed
* CLI args are updated, primarily to support an output file
* Added uleb encoding/decoding support

This work is a prelude the ongoing work of a Python to formatter
bytecode compiler. The python compiler to emit assembly, and this module
(formatter_bytecode) will compile it into binary bytecode.


  Commit: c5588becb8dd0c9dd0e81bd29bb39d098f8df572
      https://github.com/llvm/llvm-project/commit/c5588becb8dd0c9dd0e81bd29bb39d098f8df572
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
    M lldb/test/API/lang/cpp/gmodules/basic/TestWithModuleDebugging.py
    M lldb/test/API/macosx/add-dsym/TestAddDsymDownload.py
    M lldb/test/API/macosx/add-dsym/TestAddDsymMidExecutionCommand.py

  Log Message:
  -----------
  [lldb] Add skip shared build to more API tests

Fixing test failures on my local desktop with incremental
building.


  Commit: 0a9b5d52188f96b29cacbfee3bac8e1438035b32
      https://github.com/llvm/llvm-project/commit/0a9b5d52188f96b29cacbfee3bac8e1438035b32
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_if.h
    M libcxx/include/__algorithm/find_if_not.h
    M libcxx/include/__algorithm/ranges_find_if.h
    M libcxx/include/__algorithm/ranges_find_if_not.h
    M libcxx/include/__algorithm/ranges_remove_if.h

  Log Message:
  -----------
  [libc++] Forward find* algorithms to find_if (#179938)

This propagates any optimizations to the whole family of `find`
functions.


  Commit: e35fc30cb8f52a1d5a011649c47760845b5d14c0
      https://github.com/llvm/llvm-project/commit/e35fc30cb8f52a1d5a011649c47760845b5d14c0
  Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  Fix `BuiltinTypeMethodBuilder` uninitialized pointer (#183814)

>From [this
comment](https://github.com/llvm/llvm-project/pull/176058/changes/BASE..50c5be4bdf19a8a80b7e6e9d3ae46e11ff20a6e0#r2856661750)
on PR #176058, static analysis was flagging `TemplateParams` as not
initialized on all paths. This change fixes it by initializing to
`nullptr` at declaration.


  Commit: 788625757ea4a7de562461dfea9b7a59b050ec91
      https://github.com/llvm/llvm-project/commit/788625757ea4a7de562461dfea9b7a59b050ec91
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [NFC] Fix use-after-free: track TargetLibraryAnalysis in BasicAAResult invalidation (#183852)

`BasicAAResult` holds a reference to `TargetLibraryInfo` but its
`invalidate()` function did not check `TargetLibraryAnalysis`. When the
pass manager destroyed and re-created `TLI` (e.g. during `CGSCC`
invalidation or `FAM.clear()`), `BasicAAResult` survived with a dangling
`TLI` reference.

This was exposed by #157495 which added `aliasErrno()`, the first code
path that dereferences `TLI` from `BasicAAResult` during the `CGSCC`
pipeline, causing a AV when compiling Rust's core library on Arm64
Windows.

This change adds `TargetLibraryAnalysis` to the invalidation check so
`BasicAAResult` is properly invalidated when its `TLI` reference becomes
stale.


  Commit: 329c52c1004f2d0f487577f73387c8dd8b47fd9a
      https://github.com/llvm/llvm-project/commit/329c52c1004f2d0f487577f73387c8dd8b47fd9a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/HostInfoBase.h
    M lldb/include/lldb/Host/aix/HostInfoAIX.h
    M lldb/include/lldb/Host/linux/HostInfoLinux.h
    M lldb/include/lldb/Host/windows/HostInfoWindows.h
    M lldb/include/lldb/Initialization/SystemInitializerCommon.h
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Host/aix/HostInfoAIX.cpp
    M lldb/source/Host/common/HostInfoBase.cpp
    M lldb/source/Host/linux/HostInfoLinux.cpp
    M lldb/source/Host/windows/HostInfoWindows.cpp
    M lldb/source/Initialization/SystemInitializerCommon.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/tools/lldb-mcp/lldb-mcp.cpp
    M lldb/tools/lldb-server/SystemInitializerLLGS.h
    M lldb/tools/lldb-test/SystemInitializerTest.cpp

  Log Message:
  -----------
  [lldb] Change the way the shlib directory helper is set (#183637)

This PR changes the way we set the shlib directory helper. Instead of
setting it while initializing the Host plugin, we register it when
initializing the Python plugin. The motivation is that the current
approach is incompatible with the dynamically linked script
interpreters, as they will not have been loaded at the time the Host
plugin is initialized.

The downside of the new approach is that we set the helper after having
initialized the Host plugin, which theoretically introduces a small
window where someone could query the helper before it has been set.
Fortunately the window is pretty small and limited to when we're
initializing plugins, but it's less "pure" than what we had previously.
That said, I think it balances out with removing the plugin include.


  Commit: 07891ab5901cb25ac47afa99ead9eafea4d1cf2c
      https://github.com/llvm/llvm-project/commit/07891ab5901cb25ac47afa99ead9eafea4d1cf2c
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [cmake] Disable -Wdangling-pointer on GCC 12+ (#183593)

GCC 12 started warning on the RAII DAGUpdateListener pattern in
SelectionDAG.h (storing `this` in the constructor). It's a false
positive -- suppress it the same way we handle -Wno-dangling-reference
(GCC 13+) and -Wno-stringop-overread (GCC 11+).


  Commit: c78f37fdebd852f567e6380382a8eda8a28f382f
      https://github.com/llvm/llvm-project/commit/c78f37fdebd852f567e6380382a8eda8a28f382f
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/defaultarg.cpp
    M clang/test/CIR/CodeGen/dtors.cpp
    M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
    M clang/test/CIR/CodeGen/stmt-expr.cpp
    M clang/test/CIR/CodeGen/struct.cpp

  Log Message:
  -----------
  [CIR] Fix dominance problems with values defined in cleanup scopes (#183810)

We currently encounter dominance verification errors when a value is
defined inside a cleanup scope but used outside the scope. This occurs
when forceCleanup() is used to exit a cleanup scope while a variable is
holding a value that was created in the scope body. Classic codegen
solved this problem by passing a list of values to spill and reload to
forceCleanup(). This change implements that same solution for CIR.

I have also aligned the ScalarExprEmitter::VisitExprWithCleanups
implementation with that of classic codegen, eliminating an extra
lexical scope. This causes temporary allocas to be created at the next
higher existing lexical scope, but I think that's OK since they would be
hoisted there anyway by a later pass.


  Commit: dc520a5f493aac270315304be10b9b8bc5119dfe
      https://github.com/llvm/llvm-project/commit/dc520a5f493aac270315304be10b9b8bc5119dfe
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  [mlir][GPU] Add  ValueBoundsOphinterface to gpu.subgroup_broadcast (#183848)

This commit adds an ValueBoundsOpInterface to gpu.subgroup_broadcast,
matching its integer range interface implementation, so that affine
analysis can peek through subgroup broadcast ops.


  Commit: 136ba6e208b2b670e999ce77c2b4c85771a0bdf2
      https://github.com/llvm/llvm-project/commit/136ba6e208b2b670e999ce77c2b4c85771a0bdf2
  Author: Ankit Aggarwal <aankit at qti.qualcomm.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/lib/Basic/Targets/Hexagon.cpp
    M clang/lib/Basic/Targets/Hexagon.h
    M clang/test/Preprocessor/hexagon-predefines.c

  Log Message:
  -----------
  [Hexagon] Define __HVX_IEEE_FP__ when -mhvx-ieee-fp is enabled (#183829)

Add a __HVX_IEEE_FP__ define when the compiler is invoked with
-mhvx-ieee-fp flag


  Commit: e3c045415ae52167e197d4a6ed4ad5a04e49423a
      https://github.com/llvm/llvm-project/commit/e3c045415ae52167e197d4a6ed4ad5a04e49423a
  Author: Johannes de Fine Licht <johannes.definelicht at nextsilicon.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/cmake/modules/AddClang.cmake
    M llvm/cmake/modules/AddLLVM.cmake
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  [CMake] Propagate dependencies to OBJECT libraries in `add_llvm_library` (#183541)

Previously, transitively inherited calls to
`target_include_directories(foo SYSTEM ...)` were being squashed into a
flat list of includes, effectively stripping off `-isystem` and
unintentionally forwarding warnings from such dependencies.

To correctly propagate `SYSTEM` dependencies, use
`target_link_libraries` to forward the parent target's link dependencies
to the OBJECT library (similar to the `_static` flow below). Unlike a
flat `target_include_directories`, this lets CMake resolve transitive
SYSTEM include directories through the proper dependency chain.

Note that `target_link_libraries` on an OBJECT library propagates all
usage requirements, not just includes. This also brings in transitive
`INTERFACE_COMPILE_DEFINITIONS`, `INTERFACE_COMPILE_OPTIONS`, and
`INTERFACE_COMPILE_FEATURES`. This is arguably more correct, as the
OBJECT library compiles the same sources and should see the same flags.

The existing `target_include_directories` call is retained for include
directories set directly on the target (not through link dependencies).
CMake deduplicates include directories that appear through both paths.
Compile definitions and options may technically appear twice (once via
the OBJECT library, once via the consuming target), but duplicate `-D`
and flag entries should be harmless in practice.

Also fix `clang_target_link_libraries` and `mlir_target_link_libraries`
to forward the link type (PUBLIC/PRIVATE/INTERFACE) to `obj.*` targets.
Previously the type keyword was silently dropped, resulting in
plain-signature `target_link_libraries` calls. This is now required
because the new keyword-signature call in `llvm_add_library` would
otherwise conflict (CMake requires all calls on a target to use the same
signature).


  Commit: fd9421cccd0bc11b312485542cfc7e88b4d3c7b5
      https://github.com/llvm/llvm-project/commit/fd9421cccd0bc11b312485542cfc7e88b4d3c7b5
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/examples/python/formatter_bytecode.py

  Log Message:
  -----------
  [lldb] Fix sys.path manipulation failure in formatter_bytecode.py (#183868)

Fix bug in #183804.


  Commit: 12e1075b6495a448fd985bfad1c35382aa0e0e42
      https://github.com/llvm/llvm-project/commit/12e1075b6495a448fd985bfad1c35382aa0e0e42
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/bv-root-part-of-graph.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-node-with-non-schedulable-parent.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-vectorize-gathered-def-after-use.ll
    M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll

  Log Message:
  -----------
  [SLP]Fix operand reordering when estimating profitability of operands

Need to swap operand for a single instruction, not for the the same lane
of the first and second instruction in the list


  Commit: 795cfaea9cc8a812f5dace400d13d879b825e42c
      https://github.com/llvm/llvm-project/commit/795cfaea9cc8a812f5dace400d13d879b825e42c
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    R clang/test/CIR/CodeGen/address-of.cpp
    R clang/test/CIR/CodeGen/builtin-bit-cast.cpp
    R clang/test/CIR/CodeGen/builtin-floating-point.c
    R clang/test/CIR/CodeGen/builtin-memchr.c
    R clang/test/CIR/CodeGen/builtins-elementwise.c
    R clang/test/CIR/CodeGen/object-size.c
    R clang/test/CIR/CodeGen/object-size.cpp
    R clang/test/CIR/CodeGen/offset-of.cpp
    R clang/test/CIR/CodeGen/pred-info-builtins.c
    A clang/test/CIR/CodeGenBuiltins/builtin-address-of.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-bit-cast.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-bit.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-call.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-inline.c
    A clang/test/CIR/CodeGenBuiltins/builtin-memchr.c
    A clang/test/CIR/CodeGenBuiltins/builtin-new-delete.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-object-size.c
    A clang/test/CIR/CodeGenBuiltins/builtin-object-size.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-offset-of.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-prefetch.c
    A clang/test/CIR/CodeGenBuiltins/builtin-printf.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_bit.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_inline.c
    R clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_prefetch.c
    R clang/test/CIR/CodeGenBuiltins/builtin_printf.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    M clang/test/CIR/CodeGenBuiltins/builtins-floating-point.c
    A clang/test/CIR/CodeGenBuiltins/builtins-pred-info.c

  Log Message:
  -----------
  [CIR][NFC] Move some builtin tests to the CodeGenBuitins folder (#183607)

This moves a few tests that were created in the wrong location. Also
changes the names of some test files to maintain consistency.


  Commit: 342e44603dc2a3a44820f93b4d974af03c3ff68a
      https://github.com/llvm/llvm-project/commit/342e44603dc2a3a44820f93b4d974af03c3ff68a
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts] Move VCCZ workaround code out of the way (#182619)

This is a cleanup patch that moves the VCCZ specific workaround code
from `SIInsertWaitcnts::insertWaitcntInBlock()` to a separate class and
refactors it a bit to make it easier to read.
The end result is a simpler `insertWaitcntInBlock()`.

Should be NFC.


  Commit: 5395d2668968742043c2c0e47796930a63cd6bbf
      https://github.com/llvm/llvm-project/commit/5395d2668968742043c2c0e47796930a63cd6bbf
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp

  Log Message:
  -----------
  Revert "[WebAssembly] Incorporate SCCs into WebAssemblyFixIrreducibleControlFlow (#181755)" (#183872)

This reverts commit c05e323be7caaadff6fdd09a2336be60e3041af1.

Changes failed Emscripten tests.


  Commit: 8bd8d8e6debe81bbffde1543921150503d012b65
      https://github.com/llvm/llvm-project/commit/8bd8d8e6debe81bbffde1543921150503d012b65
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll

  Log Message:
  -----------
  [AMDGPU] Remove extra pipes from load-saddr-offset-imm.ll (#183874)

This test uses opt to run instcombin and then pipes that into llc which
has its output piped into FileCheck. Before this patch, the test also
piped in the source file into llc as well, which caused issues with a
downstream test executor that executes the lines in bash. However, these
extra pipes don't make sense anyways, so remove them.


  Commit: fb6b470caedc37c880b5112bd1c85be5f55e9114
      https://github.com/llvm/llvm-project/commit/fb6b470caedc37c880b5112bd1c85be5f55e9114
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/floor.h
    A libc/shared/math/floorbf16.h
    A libc/shared/math/floorf.h
    A libc/shared/math/floorf128.h
    A libc/shared/math/floorf16.h
    A libc/shared/math/floorl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/floor.h
    A libc/src/__support/math/floorbf16.h
    A libc/src/__support/math/floorf.h
    A libc/src/__support/math/floorf128.h
    A libc/src/__support/math/floorf16.h
    A libc/src/__support/math/floorl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/floor.cpp
    M libc/src/math/generic/floorbf16.cpp
    M libc/src/math/generic/floorf.cpp
    M libc/src/math/generic/floorf128.cpp
    M libc/src/math/generic/floorf16.cpp
    M libc/src/math/generic/floorl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor floor family to header-only (#182194)

Refactors the floor math family to be header-only.

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

Target Functions:
  - floor
  - floorbf16
  - floorf
  - floorf128
  - floorf16
  - floorl


  Commit: 62cfe1659edff8874f2d814ee356cfc9199f62d5
      https://github.com/llvm/llvm-project/commit/62cfe1659edff8874f2d814ee356cfc9199f62d5
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 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/gpu/amdgpu/entrypoints.txt
    M libc/config/gpu/nvptx/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/config/windows/entrypoints.txt
    M libc/shared/math.h
    A libc/shared/math/acospif.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/acospif.h
    M libc/src/__support/math/asinpif.h
    M libc/src/__support/math/inv_trigf_utils.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/acospif.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/acospif.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/acospif_test.cpp
    M libc/test/src/math/asinpif_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/acospif_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/acospif_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math][c23] implement C23 `acospif` math function (#183661)

Implementing C23 `acospi` math function for single-precision with the
header-only approach that is followed since #147386


  Commit: 5f22decefac061c6e1e01804d46669a8c3ebc06c
      https://github.com/llvm/llvm-project/commit/5f22decefac061c6e1e01804d46669a8c3ebc06c
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/SemaCXX/builtins-elementwise-math.cpp
    M libclc/clc/lib/generic/math/clc_fdim.inc

  Log Message:
  -----------
  Clang: Deprecate float support from __builtin_elementwise_max (#180885)

Now we have
  __builtin_elementwise_maxnum
  __builtin_elementwise_maximum
  __builtin_elementwise_maximumnum


  Commit: 6f9c68d32074162304f27d38e69f4de4cd26ab50
      https://github.com/llvm/llvm-project/commit/6f9c68d32074162304f27d38e69f4de4cd26ab50
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-28 (Sat, 28 Feb 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/conditional-scalar-assignment-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fixed-wide-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions-tf.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve-tail-folding-forced.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing.ll

  Log Message:
  -----------
  [VPlan] Don't adjust trip count for DataAndControlFlowWithoutRuntimeCheck (#183729)

Previously, the canonical IV increment may have overflowed to a non-zero
value due to vscale being a non power-of-two. So we used to emit a
runtime check for this.

If you didn't want the runtime check,
DataAndControlFlowWithoutRuntimeCheck skipped it and instead tweaked the
trip count so it wouldn't overflow.

However #144963 stopped the check from ever being emitted because vscale
is always a power-of-two on AArch64 and RISC-V, so it never overflowed
to a non-zero value. And in #183292 the code to emit the check was
removed. But we never restored the trip count back to normal when the
target's vscale was a power-of-two.

Now that vscale is always a power-of-two, this PR avoids adjusting it. A
follow up NFC can then remove DataAndControlFlowWithoutRuntimeCheck.


  Commit: 0b88ee12dd88cb27275750406364fad014d87d65
      https://github.com/llvm/llvm-project/commit/0b88ee12dd88cb27275750406364fad014d87d65
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/IR/address-space.cir
    M clang/test/CIR/IR/invalid-addrspace.cir

  Log Message:
  -----------
  [CIR] Infrastructure and MemorySpaceAttrInterface for Address Spaces (#179073)

Related: https://github.com/llvm/llvm-project/issues/175871,
https://github.com/issues/assigned?issue=llvm%7Cllvm-project%7C179278,
https://github.com/issues/assigned?issue=llvm%7Cllvm-project%7C160386

- Introducing the LangAddressSpace enum with offload address space kinds
(offload_private, offload_local, offload_global, offload_constant,
offload_generic) and the LangAddressSpaceAttr attribute.


- Generalizes CIR AS attributes as MemorySpaceAttrInterface and Attaches
it to `PointerType`. Includes test coverage for valid IR roundtrips and
invalid address space parsing.

This starts a series of patches with the purpose of bringing complete
address spaces support features for CIR. Most of the test coverage is
provided in subsequent patches further down the stack. note that most of
these patches are based on: https://github.com/llvm/clangir/pull/1986


  Commit: d72e95bab071ef4f7f45ab3c4e47047325d50333
      https://github.com/llvm/llvm-project/commit/d72e95bab071ef4f7f45ab3c4e47047325d50333
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl

  Log Message:
  -----------
  [CIR] Use `-verify` on clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl (#182817)

Update clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl to use
`-verify` with expected CIR NYI diagnostics.


  Commit: fe76e9004b5bcc50dc5410910350f97f05db8984
      https://github.com/llvm/llvm-project/commit/fe76e9004b5bcc50dc5410910350f97f05db8984
  Author: SharonXSharon <xiaoranxu.nju at gmail.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    A llvm/test/CodeGen/X86/code_placement_ext_tsp_size_and_perf.ll

  Log Message:
  -----------
  [CodeGen] Allow `-enable-ext-tsp-block-placement` and `-apply-ext-tsp-for-size`  passed together (#183642)

Currently, the asserts fires when both `UseExtTspForPerf` and
`UseExtTspForSize` are true on a given function.

Ideally, we should allow `-enable-ext-tsp-block-placement` and
`-apply-ext-tsp-for-size` passed together, meaning run the block
placement for performance on hot functions, while run the placement for
size on cold functions.

The diff makes `UseExtTspForPerf` and `UseExtTspForSize` mutually
exclusive per-function: functions with the `OptForSize` attribute use
ext-tsp block placement for size, while the others use ext-tsp block
placement for perf.

Co-authored-by: Sharon Xu <sharonxu at fb.com>


  Commit: ce6a3d98cc3e208e8a4014b7812515951bf048ce
      https://github.com/llvm/llvm-project/commit/ce6a3d98cc3e208e8a4014b7812515951bf048ce
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-module.cpp

  Log Message:
  -----------
  [clang-tidy] Teach `misc-unused-using-decls` that exported using-decls aren't unused (#183638)

Fixes #162619.


  Commit: bed89970c3df5e755820708580e405f65ddaa1ba
      https://github.com/llvm/llvm-project/commit/bed89970c3df5e755820708580e405f65ddaa1ba
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
    M lld/test/ELF/aarch64-branch-to-branch.s
    M lld/test/ELF/aarch64-feature-bti.s
    M lld/test/ELF/aarch64-funcinit64-invalid.s
    M lld/test/ELF/aarch64-funcinit64.s
    M lld/test/ELF/aarch64-range-thunk-extension-plt32.s
    M lld/test/ELF/aarch64-reloc-gotpcrel32.s
    M lld/test/ELF/aarch64-reloc-plt32.s
    M lld/test/ELF/aarch64-undefined-weak.s
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h
    M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
    M llvm/test/MC/AArch64/data-directive-specifier.s
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s

  Log Message:
  -----------
  AArch64: Replace @plt/%gotpcrel in data directives with %pltpcrel %gotpcrel (#155776)

Similar to #132569 for RISC-V, replace the unofficial `@plt` and
`@gotpcrel` relocation specifiers, currently only used by clang
-fexperimental-relative-c++-abi-vtables, with %pltpcrel %gotpcrel. The
syntax is not used in humand-written assembly code, and is not supported
by GNU assembler.

Also replace the recent `@funcinit` with `%funcinit(x)`.


  Commit: 27d654c4c4e6eb7c19e46af20500200e793da7c7
      https://github.com/llvm/llvm-project/commit/27d654c4c4e6eb7c19e46af20500200e793da7c7
  Author: Son Tuan Vu <sontuavu at amd.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir

  Log Message:
  -----------
  [AMDGPU] Fix piggybacking after commute in AMDGPULowerVGPREncoding (#183778)

After successfully commuting an instruction to be compatible with the
current VGPR MSB mode, update CurrentMode with the commuted
instruction's mode requirements. This locks in the mode bits the
commuted instruction relies on, preventing later instructions from
piggybacking and corrupting those bits.

Without this fix, a subsequent instruction needing a different mode
could piggyback onto the preceding s_set_vgpr_msb and change mode bits
that the commuted instruction depends on. For example, a nullopt src1
position (treated as 0) could be overwritten to a different value,
causing incorrect register encoding for the commuted instruction.

The fix still allows compatible piggybacking - instructions that only
add new mode bits without changing existing ones can still piggyback.


  Commit: 3b30dcddd97355ee36f13c5e2ca56c1d6f137b7a
      https://github.com/llvm/llvm-project/commit/3b30dcddd97355ee36f13c5e2ca56c1d6f137b7a
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/reloc-section-sym.c
    A clang/test/Misc/cc1as-reloc-section-sym.s
    M clang/tools/driver/cc1as_main.cpp

  Log Message:
  -----------
  [Driver] Add -Wa,--reloc-section-sym= to control section symbol conversion (#183472)

Wire the llvm-mc --reloc-section-sym={all,internal,none} option through
the clang driver (-Wa,--reloc-section-sym=) and cc1as
(--reloc-section-sym=). The option is only valid for ELF targets.

GNU Assembler will add the option as well.


  Commit: 702e4ec5f705ccf72ecbf31301a364e8b2664843
      https://github.com/llvm/llvm-project/commit/702e4ec5f705ccf72ecbf31301a364e8b2664843
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/test/API/macosx/delay-init-dependency/TestDelayInitDependency.py

  Log Message:
  -----------
  [lldb/test] Skip TestDelayInitDependency on remote platforms (#183885)

This test exercises macOS-specific linker functionality (-delay_library)
and uses a hardcoded local working directory for the launch info. It
should not run against a remote platform where neither condition holds.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 1ff1e5f10a5c765b4cf1344c4964604dcd09fef3
      https://github.com/llvm/llvm-project/commit/1ff1e5f10a5c765b4cf1344c4964604dcd09fef3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Stop applying nofpclass from use nofpclass attribute (#183835)

Functionally reverts a80d4329ce96856a02bd279c800c3d08619da4c9, with new
test.
This should be applied somewhere, but this is the wrong place.

Fixes regression reported after #182444


  Commit: 55f9cf33fc14878d22415735cc1116925d9e79b3
      https://github.com/llvm/llvm-project/commit/55f9cf33fc14878d22415735cc1116925d9e79b3
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp

  Log Message:
  -----------
  RISCVMCAsmInfo: Remove redundant `UseAtForSpecifier = false`. NFC (#183890)

UseAtForSpecifier defaults to false in MCAsmInfo, and RISCVMCAsmInfo
never calls initializeAtSpecifiers (which sets it to true).


  Commit: ab2908ed21e7d45793fb6128543f4494f5c42c66
      https://github.com/llvm/llvm-project/commit/ab2908ed21e7d45793fb6128543f4494f5c42c66
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-fold-tail.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-group-requires-scalar-epilogue.ll
    A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory-live-outs.ll

  Log Message:
  -----------
  [LV] Add tail-folding & required scalar epilogue tests for IG narrowing.

Add additional tests to cover missing code paths when narrowing
interleave groups:
 * tail-folding
 * interleave-groups that require a scalar iteration.


  Commit: c40b0b2235e5bfe600304fa4087e002b1a2f0908
      https://github.com/llvm/llvm-project/commit/c40b0b2235e5bfe600304fa4087e002b1a2f0908
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
    M llvm/test/tools/llvm-dwarfdump/X86/verify_unit_header_chain.s
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5_invalid.s
    M llvm/test/tools/llvm-symbolizer/split-dwarf-dwp-invalid.test

  Log Message:
  -----------
  [llvm][DebugInfo] Bump DWARFContext maximum DWARF version (#183838)

In order to start testing DWARFv6 feature support we need to bump this
version for tooling to work.

This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.


  Commit: ce3460e002727a226ef6c2c3e29a978fb1823ad7
      https://github.com/llvm/llvm-project/commit/ce3460e002727a226ef6c2c3e29a978fb1823ad7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp

  Log Message:
  -----------
  [llvm][DebugInfo] Bump DWARFDebugLine maximum DWARF version (#183841)

Bumps `.debug_line` maximum supported version to DWARFv6.

This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.


  Commit: 8f0928252bbe0a541cb9072a9504651d53e0d9dc
      https://github.com/llvm/llvm-project/commit/8f0928252bbe0a541cb9072a9504651d53e0d9dc
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFListTableTest.cpp

  Log Message:
  -----------
  [llvm][DebugInfo] Bump DWARFListTable maximum DWARF version (#183859)

Bumps `.debug_rnglists` maximum supported version to DWARFv6.

This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.

Added unit-test since there was no prior test in the entire LLVM
test-suite that checked this.


  Commit: 9b1f7845227e48d71f206172f628bd2b1ebf2d1f
      https://github.com/llvm/llvm-project/commit/9b1f7845227e48d71f206172f628bd2b1ebf2d1f
  Author: David Green <david.green at arm.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrMVE.td
    M llvm/test/CodeGen/Thumb2/mve-sli-sri.ll

  Log Message:
  -----------
  [ARM][MVE] Add SLI and SRI recognition. (#183471)

This uses the newly added code from #182051 to optimize to MVE sli and
sri. The only major difference is the legal types supported, but we also
lower intrinsics via VSLIIMM/VSLIIMM, so that only one tablegen pattern
is needed.


  Commit: 3403aac734189ae9d36695f3f8d12bd61f3678ea
      https://github.com/llvm/llvm-project/commit/3403aac734189ae9d36695f3f8d12bd61f3678ea
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

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

  Log Message:
  -----------
  [CMake][LLVM] Disable PCH on Clang for file with custom flags too (#183813)

Precompiled headers are already skipped when building ConstantFolding.cpp with MSVC, they cause problems with Clang too so disable it there the same way.


  Commit: b2c92bca2e6636c62c49719defd4f4e3df6b7ab1
      https://github.com/llvm/llvm-project/commit/b2c92bca2e6636c62c49719defd4f4e3df6b7ab1
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/test/MC/ARM/dwarf-asm-multiple-sections.s
    M llvm/test/MC/ELF/gen-dwarf.s
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [llvm-mc][dwarf] Bump supported version to DWARF 6 (#183779)

Depends on:
* https://github.com/llvm/llvm-project/pull/183838
* https://github.com/llvm/llvm-project/pull/183841
* https://github.com/llvm/llvm-project/pull/183859

Bumps the supported version to 6. Unit header layout hasn't changed
between versions AFAIK, so re-used the DWARF5 `FileCheck` in the test.
This by no means claims full DWARFv6 support, but is handy for testing
DWARFv6 features while full support is being gradually implemented.


  Commit: c8e211c2a8b23b7bed4fb6b76bd441caa44973de
      https://github.com/llvm/llvm-project/commit/c8e211c2a8b23b7bed4fb6b76bd441caa44973de
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Tensor/canonicalize.mlir

  Log Message:
  -----------
  [mlir][tensor] Fix crash in expand_shape fold with dynamic result type (#183785)

`foldReshapeOp` (in `ReshapeOpsUtils.h`) and `FoldReshapeWithConstant`
(in `TensorOps.cpp`) both tried to create a new `DenseElementsAttr`
constant when folding a reshape op whose operand is a constant. Neither
checked that the result type was statically shaped before doing so, but
`DenseElementsAttr::reshape()` and
`DenseElementsAttr::getFromRawBuffer()` both assert `hasStaticShape()`.

Guard both fold paths with a `hasStaticShape()` check so they return
early when the result type contains a dynamic dimension.

Fixes #177845


  Commit: 7370091a43e5cbcb4cf56fb83b62e056903cb918
      https://github.com/llvm/llvm-project/commit/7370091a43e5cbcb4cf56fb83b62e056903cb918
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/test/IR/visitors.mlir
    M mlir/test/lib/IR/TestVisitors.cpp

  Log Message:
  -----------
  [mlir][test-ir-visitors] Fix noSkipBlockErasure crash with block args used across blocks (#183828)

The noSkipBlockErasure callback in TestVisitors.cpp dropped uses of op
results within the same region before erasing a block, but did not drop
uses of the block's own arguments (e.g. function entry block arguments).
When the block was subsequently erased its block arguments were
destroyed while their use-lists were still non-empty, triggering the
assertion in IRObjectWithUseList::~IRObjectWithUseList().

Fix this by also iterating over the block's arguments and dropping any
uses that belong to the same parent region. This mirrors the existing
logic for op result uses and makes the block-erasure walk handle IRs
where function arguments are consumed by ops in sibling blocks.

Also replace `block->front().getParentRegion()` with
`block->getParent()` for robustness (avoids UB when the block has no
ops).

Add a regression test based on the reproducer from
https://github.com/llvm/llvm-project/issues/182996.

Fixes #182996


  Commit: 245621408d03f8f85e2454332ad1816fed62c386
      https://github.com/llvm/llvm-project/commit/245621408d03f8f85e2454332ad1816fed62c386
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/test/tools/llvm-cov/mcdc-macro.test

  Log Message:
  -----------
  Restore #125407, Make covmap tolerant of nested Decisions (#183073)

Change(s):

- Suppress range errors in CounterExpr


  Commit: f05b705dd3ce7fad6b30a2bc40dd9bbebf1e6a74
      https://github.com/llvm/llvm-project/commit/f05b705dd3ce7fad6b30a2bc40dd9bbebf1e6a74
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/test/IR/visitors.mlir

  Log Message:
  -----------
  [mlir] Fix crash in testNoSkipErasureCallbacks on empty blocks (#183757)

The `noSkipBlockErasure` callback in `testNoSkipErasureCallbacks` called
`block->front().getParentRegion()` to get the parent region of a block.
This dereferences the ilist sentinel node when the block has no
operations, triggering an assertion failure.

Use `block->getParent()` instead, which directly returns the region
containing the block without requiring any operations to be present.

Fixes #183511


  Commit: b3be782c4d149d9f9fd4dbf0452db0af451bd1a2
      https://github.com/llvm/llvm-project/commit/b3be782c4d149d9f9fd4dbf0452db0af451bd1a2
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/test/Dialect/Affine/canonicalize.mlir

  Log Message:
  -----------
  [mlir][affine] Fix crash in linearize_index fold when multi-index is ub.poison (#183816)

`AffineLinearizeIndexOp::fold` guarded the constant-folding path with
`llvm::is_contained(adaptor.getMultiIndex(), nullptr)`, which only
catches operands that have not been evaluated at all. When an operand
folds to `ub.PoisonAttr`, the attribute is non-null so the guard passed,
and the subsequent `cast<IntegerAttr>(indexAttr)` call crashed with an
assertion failure.

Fix by replacing the null-only check with one that requires every
multi-index attribute to be a concrete `IntegerAttr`, returning
`nullptr` for any other attribute (including null and PoisonAttr).

Fixes #178204


  Commit: 903acc2762d550d8f5934924aaf87b3527c63112
      https://github.com/llvm/llvm-project/commit/903acc2762d550d8f5934924aaf87b3527c63112
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    A clang/test/DebugInfo/CXX/ptrauth-member-function-pointer-debuglocs.cpp

  Log Message:
  -----------
  [AArch64][PAC] Emit `!dbg` locations in `*_vfpthunk_` functions (#179688)

The usage of pointers to member functions with Pointer Authentication
requires generation of `*_vfpthunk_` functions. These thunk functions
can be later inlined and optimized by replacing the indirect call
instruction with a direct one and then inlining that function call.

In absence of `!dbg` metadata attached to the original call instruction,
such inlining ultimately results in an assertion "!dbg attachment points
at wrong subprogram for function" in the assertions-enabled builds. By
manually executing `opt` with `-verify-each` option on the LLVM IR
produced by the frontend, an actual issue can be observed: "inlinable
function call in a function with debug info must have a !dbg location"
after the replacement of indirect call instruction with the direct one
takes place.

This commit fixes the issue by attaching artificial `!dbg` locations to
the original call instruction (as well as most other instructions in
`*_vfpthunk_` function) the same way it is done for other
compiler-generated helper functions.


  Commit: 0b61f15f2e138f7662d4542eabed478a99275751
      https://github.com/llvm/llvm-project/commit/0b61f15f2e138f7662d4542eabed478a99275751
  Author: David Green <david.green at arm.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/fcvt-i256.ll

  Log Message:
  -----------
  [AArch64] Add fcvt-i256 test cases. NFC


  Commit: 94ebc8a95baf27a6e53737d0e32fcd210ce75a1b
      https://github.com/llvm/llvm-project/commit/94ebc8a95baf27a6e53737d0e32fcd210ce75a1b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll

  Log Message:
  -----------
  [LV] Remove duplicated IV expression sinking tests. (NFC)

Remove duplicated tests already covered by
llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-expr.ll.


  Commit: 72525fb4ee370dcd598fd68a6515620ee3144bba
      https://github.com/llvm/llvm-project/commit/72525fb4ee370dcd598fd68a6515620ee3144bba
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp

  Log Message:
  -----------
  [VPlan] Materialize UF after unrolling (NFCI).

Move materialization of the symbolic UF directly to unrollByUF. At this
point, unrolling materializes the decision and it is natural to also
materialize the symbolic UF here.


  Commit: e655c36c16c118e3f8ae0c95854f33119218a4bf
      https://github.com/llvm/llvm-project/commit/e655c36c16c118e3f8ae0c95854f33119218a4bf
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/AttributeDetail.h
    M mlir/lib/IR/BuiltinAttributes.cpp
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    A mlir/test/IR/dense-elements-type-interface.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h

  Log Message:
  -----------
  [mlir][IR] Generalize `DenseElementsAttr` to custom element types (#183891)

`DenseElementsAttr` supports only a hard-coded list of element types:
`int`, `index`, `float`, `complex`. This commit generalizes the
`DenseElementsAttr` infrastructure: it now supports arbitrary element
types, as long as they implement the new `DenseElementTypeInterface`.

The `DenseElementTypeInterface` has the following helper functions:
- `getDenseElementBitSize`: Query the size of an element in bits. (When
storing an element in memory, each element is padded to a full byte.
This is an existing limitation of the `DenseElementsAttr`; with an
exception for `i1`.)
- `convertToAttribute`: Attribute factory / deserializer. Converts bytes
into an MLIR attribute. The attribute provides the assembly format /
printer for a single element.
- `convertFromAttribute`: Serializer. Converts an MLIR attribute into
bytes.

Note: `convertToAttribute` / `convertFromAttribute` are mainly for
writing test cases. For performance reasons, `DenseElementsAttr` users
should work with raw bytes / elements and avoid any API that
materializes MLIR attributes. However, MLIR attributes typically have
human-readable parsers/printers, making them suitable for lit tests and
debugging.

This PR introduces an additional assembly format for
`DenseElementsAttrs`. There are now two formats. (The existing one is
kept for compatibility reasons.)
- Literal-first (existing): `dense<[1, 2, 3]> : tensor<3xi32>`
- Type-first (new): `dense<tensor<3xi32> : [1 : i32, 2 : i32, 3 : i32]>`

The new syntax is needed to disambiguate between "literal" (e.g., `1`)
and attribute (e.g., `1 : i32`) when parsing the first token. In the
literal-first syntax, we only parse literals. In the type-first syntax,
we only parse attributes.

The existing `int`, `index`, `float`, `complex` types also implement the
`DenseElementTypeInterface`. This allows us to implement
`DenseElementsAttr::get` and `AttributeElementIterator::operator*` in a
generic way.

RFC:

https://discourse.llvm.org/t/rfc-allow-custom-element-types-in-denseelementattr/89656

This is a re-upload of #179122.


  Commit: 2f7c947946f4861f93aee795de5f42ed80f03072
      https://github.com/llvm/llvm-project/commit/2f7c947946f4861f93aee795de5f42ed80f03072
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll

  Log Message:
  -----------
  Precommit tests: strictfp rounding vector f16 intrinsics (#183699)


  Commit: 225b56e742fea0abd326028872d257ae8cfd7544
      https://github.com/llvm/llvm-project/commit/225b56e742fea0abd326028872d257ae8cfd7544
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir

  Log Message:
  -----------
  [mlir][VectorToLLVM] Fix crash in VectorInsertOpConversion with dynamic index (#183783)

VectorInsertOpConversion crashes with an assertion failure when
inserting a sub-vector at a dynamic position into a multi-dimensional
vector. The pattern calls getAsIntegers() on the position, which asserts
that all fold results are compile-time constant attributes.

The existing guard (checking llvm::IsaPred<Attribute>) only covered the
case where a scalar is inserted into the innermost dimension (the
extractvalue path). The guard was missing for the insertvalue path when
inserting a sub-vector at a dynamic position into a nested aggregate.

Fix: add the same guard before the llvm.insertvalue creation to return
failure() gracefully when any position index is dynamic, matching the
behavior of VectorExtractOpConversion.

Fixes #177829


  Commit: 2342db00ab4d0305580814fb00f477b4b5cebec6
      https://github.com/llvm/llvm-project/commit/2342db00ab4d0305580814fb00f477b4b5cebec6
  Author: nextsilicon-itay-bookstein <55076759+nextsilicon-itay-bookstein at users.noreply.github.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lld/tools/lld/CMakeLists.txt
    M llvm/cmake/modules/LLVM-Config.cmake

  Log Message:
  -----------
  [CMake] Use keyword signature in two additional callsites (#183889)

Fix-forward for https://github.com/llvm/llvm-project/pull/183541.
Two callsites to target_link_libraries were not migrated to the
keyword signature.

Signed-off-by: Itay Bookstein <itay.bookstein at nextsilicon.com>


  Commit: 5b64aeb409ecd9f8e9ff95ffe5fde7eb6a26146c
      https://github.com/llvm/llvm-project/commit/5b64aeb409ecd9f8e9ff95ffe5fde7eb6a26146c
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/AttributeDetail.h
    M mlir/lib/IR/BuiltinAttributes.cpp
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    R mlir/test/IR/dense-elements-type-interface.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h

  Log Message:
  -----------
  Revert "[mlir][IR] Generalize `DenseElementsAttr` to custom element types" (#183917)

Reverts llvm/llvm-project#183891

Reverting a second time. The build bot failure seems to be
non-deterministic.


  Commit: d5a8f1eda29abae6d2d0fa8e08a8402cc3fd84cc
      https://github.com/llvm/llvm-project/commit/d5a8f1eda29abae6d2d0fa8e08a8402cc3fd84cc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

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

  Log Message:
  -----------
  [X86] known-pow2.ll - add tests showing failure to handle ISD::EXTRACT_VECTOR_ELT nodes (#183918)


  Commit: 7585ab05d6fb08f6b03329637018eb4774d39042
      https://github.com/llvm/llvm-project/commit/7585ab05d6fb08f6b03329637018eb4774d39042
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/test/CodeGen/AMDGPU/hazard-shift64.mir

  Log Message:
  -----------
  [AMDGPU] Enable shift64 hazard recognition for gfx9 (#183839)

Enable shift64 hazard recognition for gfx9 cores.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 3d086f573dc410a11bd11b1cdfba1ed2b80a95cb
      https://github.com/llvm/llvm-project/commit/3d086f573dc410a11bd11b1cdfba1ed2b80a95cb
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/test/CIR/CodeGen/implicit-value-init-expr.cpp

  Log Message:
  -----------
  [CIR] Implement ImplicitValueInitExpr for ComplexType (#183836)

Implement ImplicitValueInitExpr for ComplexType


  Commit: a6ceae48f56cfd5ae3e87a865ef1fab315d1e0d0
      https://github.com/llvm/llvm-project/commit/a6ceae48f56cfd5ae3e87a865ef1fab315d1e0d0
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

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

  Log Message:
  -----------
  [AMDGPU] Assert non-array alloca does have a size (#183834)

Refs
https://github.com/llvm/llvm-project/pull/179523/changes#r2851952141


  Commit: 4a93b9a1b1ec221cb66e7d31a4d80b225d7f8fce
      https://github.com/llvm/llvm-project/commit/4a93b9a1b1ec221cb66e7d31a4d80b225d7f8fce
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll

  Log Message:
  -----------
  [ARM] Lower strictfp vector fp16 rounding operations similar to default mode (#183700)

Previously the strictfp rounding nodes were lowered using unrolling to
scalar operations, which has negative impact on performance. Partially
this issue was fixed in #180480, this change continues that work and
implements optimized lowering for v4f16 and v8f16.


  Commit: 2430410b7d879fce3db76c21bb8c60ed22abd0b5
      https://github.com/llvm/llvm-project/commit/2430410b7d879fce3db76c21bb8c60ed22abd0b5
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/docs/index.rst
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.h
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernelCore] Add ppc64le support (#180669)

This is LLDB version of
https://cgit.freebsd.org/ports/tree/devel/gdb/files/kgdb/ppcfbsd-kern.c.
This enables selecting ppc64le and reading registers from PCB structure
on core dump and live kernel debugging. FPU registers aren't supported
yet due to pcb structure issue, but this change still achieves feature
parity with KGDB. Trapframe unwinding support will be implemented in
future. Test files using core dump from ppc64le will be implemented once
other kernel debugging improvements are done.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 1909e43a4adc049db3fc4f1e622dd6702120562d
      https://github.com/llvm/llvm-project/commit/1909e43a4adc049db3fc4f1e622dd6702120562d
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Dialect/GPU/invalid.mlir

  Log Message:
  -----------
  [mlir][GPU] Fix crash in WarpExecuteOnLane0Op::verify with wrong terminator (#183930)

WarpExecuteOnLane0Op::verify() called getTerminator() which performed an
unconditional cast<gpu::YieldOp> on the block's last operation. When the
op body was written with a different terminator (e.g. affine.yield), the
cast asserted immediately instead of emitting a verifier diagnostic.

Fix by using dyn_cast in verify() before calling getTerminator(), and
emitting a proper error message when the terminator is not gpu.yield.

Add a regression test to invalid.mlir.

Fixes #181450


  Commit: 4d724c074dd14000c46224bf303cb8157a48d8ee
      https://github.com/llvm/llvm-project/commit/4d724c074dd14000c46224bf303cb8157a48d8ee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

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

  Log Message:
  -----------
  [X86] known-never-zero.ll - add tests showing failure to handle ISD::EXTRACT_VECTOR_ELT nodes (#183934)


  Commit: 3034c0966931bef36c169b5727ee20129aa4d4e3
      https://github.com/llvm/llvm-project/commit/3034c0966931bef36c169b5727ee20129aa4d4e3
  Author: James Wobser <james.wobser at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] bugfix: Whitesmiths with IndentAccessModifiers (#182432)

Due to special handling of Whitesmiths when parsing, the additional
level(s) needed for the block, when used with IndentAccessModifiers,
were not being applied. Consequently, when calculating the access
modifier indent offset, the modifiers were being placed at the class
level.

This change ensures that the additional level(s) are not omitted for
Whitesmiths.


  Commit: 5ed875a06cb0a6d543f719ad72df2a1660e42cb9
      https://github.com/llvm/llvm-project/commit/5ed875a06cb0a6d543f719ad72df2a1660e42cb9
  Author: Gabriele Mondada <gab at ijk.ch>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/source/Utility/ZipFile.cpp
    M lldb/unittests/Host/common/CMakeLists.txt
    A lldb/unittests/Host/common/Inputs/zip-test-no-extras.zip
    M lldb/unittests/Host/common/ZipFileResolverTest.cpp

  Log Message:
  -----------
  [lldb][lldb-server] Fix zip file lookup ignoring last entry in the zip file (#173966)

Command qModuleInfo (GDB server protocol) can be used to request
metadata of shared libraries stored in a ZIP archive on the target. This
is typically used for retrieving SO files bundled in a APK file on
Android.

Requesting the last entry in the ZIP file often fails because of a bug
in the entry search mechanism. This PR fixes this.

NOTES:
* The bug appears only if the entry in the zip file has no extra field
or comment
* This is part on an effort to get lldb working for debugging Swift on
Android: https://github.com/swiftlang/llvm-project/issues/10831


  Commit: e317f424557cbf76deaa568ab8a5416822453d50
      https://github.com/llvm/llvm-project/commit/e317f424557cbf76deaa568ab8a5416822453d50
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/last-buildvector-node.ll

  Log Message:
  -----------
  [SLP]Recalculate dependencies for the buildvector schedule node, if they have copyable node

Need to recalculate the deps for all buildvector nodes with copyable
deps to prevent a compiler crash during scheduling of instructions


  Commit: 3e05ab6322cbf2a96362dcacb5907ba519fe552d
      https://github.com/llvm/llvm-project/commit/3e05ab6322cbf2a96362dcacb5907ba519fe552d
  Author: yonghong-song <yhs at fb.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
    M clang/test/CodeGen/distributed-thin-lto/cfi.ll
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    A llvm/test/ThinLTO/X86/Inputs/reduce-promotion-same-file-local-name.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
    M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
    M llvm/test/ThinLTO/X86/import_callee_declaration.ll
    M llvm/test/ThinLTO/X86/load-store-caching.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-devirt.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-same-file-local-name.ll
    A llvm/test/ThinLTO/X86/reduce-promotion-same-local-name.ll
    A llvm/test/ThinLTO/X86/reduce-promotion.ll
    M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
    M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
    M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll

  Log Message:
  -----------
  [ThinLTO] Reduce the number of renaming due to promotions (#183793)

Currently for thin-lto, the imported static global values (functions,
variables, etc) will be promoted/renamed from e.g., foo() to
foo.llvm.(). Such a renaming caused difficulties in live patching
since function name is changed ([1]).

It is possible that some global value names have to be promoted to avoid
name collision and linker failure. But in practice, majority of name
promotions can be avoided.

In [2], the suggestion is that thin-lto pre-link decides whether
a particular global value needs name promotion or not. If yes, later on
in thinBackend() the name will be promoted.

I compiled a particular linux kernel version (latest bpf-next tree)
and found 1216 global values with suffix .llvm.. With this patch,
the number of promoted functions is 2, 98% reduction from the
original kernel build.

If some native objects are not participating with LTO, name promotions
have to be done to avoid potential linker issues. So the current
implementation cannot be on by default. But in certain cases, e.g., linux kernel
build, people can enable lld flag --lto-whole-program-visibility to reduce the
number of functions like foo.llvm.().

For ThinLTOCodeGenerator.cpp which is used by llvm-lto tool and a
few other rare cases, reducing the number of renaming due to promotion,
is not implemented as lld flag '-lto-whole-program-visibility' is not
supported in ThinLTOCodeGenerator.cpp for now. In summary, this pull
request only supports llvm-lto2 style workflow.

The feature is off by default. To enable the future, lld flag
'-lto-whole-program-visibility'  and llvm flag
'-always-rename-promoted-locals=false' are needed.

The link [3] has more context for the pull request discussions.

[1] https://lpc.events/event/19/contributions/2212
[2] https://discourse.llvm.org/t/rfc-avoid-functions-like-foo-llvm-for-kernel-live-patch/89400
[3] https://github.com/llvm/llvm-project/pull/178587


  Commit: 4a602c03ea050d7adf666d5a440164ca6f78707c
      https://github.com/llvm/llvm-project/commit/4a602c03ea050d7adf666d5a440164ca6f78707c
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/docs/index.rst
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.h
    M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernelCore] Add riscv64 support (#180670)

This is LLDB version of
https://cgit.freebsd.org/ports/tree/devel/gdb/files/kgdb/riscv-fbsd-kern.c.
This enables selecting riscv64 and reading registers from PCB structure
on core dump and live kenrel debugging while trapframe unwinding support
will be implemented in future. Test files using core dump from riscv64
will be implemented once other kernel debugging improvements are done.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 59ba10b9d38a27e6783a64f21c0a4f56bccae126
      https://github.com/llvm/llvm-project/commit/59ba10b9d38a27e6783a64f21c0a4f56bccae126
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/test/Dialect/SPIRV/IR/types.mlir

  Log Message:
  -----------
  [mlir][spirv] Fix crash when spirv.struct member type is not a SPIR-V type (#183942)

When parsing a spirv.struct type, any MLIR type was accepted as a member
type without validation. This caused a crash in TypeExtensionVisitor and
TypeCapabilityVisitor which unconditionally used cast<SPIRVType> on
struct element types, asserting when a non-SPIR-V type (e.g.,
vector<2x2xi1>) was encountered.

Fix the parser to reject non-SPIR-V member types with a proper error
message.

Fixes #179675


  Commit: a0fb4f67084839d0209a303b223217a04532fd48
      https://github.com/llvm/llvm-project/commit/a0fb4f67084839d0209a303b223217a04532fd48
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/examples/python/formatter_bytecode.py

  Log Message:
  -----------
  [lldb] Add BytecodeSection class to formatter_bytecode.py (#183876)

Changes `formatter_bytecode.compile_file` to return a `BytecodeSection`
value. The `BytecodeSection` holds the data that needs to be emitted to
an `__lldbformatters` section.

The `BytecodeSection` currently provides `write_binary`, but will be
updated in a follow up commit to include `write_source` which will allow
the data to be emitted as C source code, or Swift source code. This will
make it easier to integrate into build systems, as it's easier to get
data into a binary via source code, than as a raw binary file.


  Commit: df616fbe1c908b6c79b81599e0a6ec9d0137543c
      https://github.com/llvm/llvm-project/commit/df616fbe1c908b6c79b81599e0a6ec9d0137543c
  Author: Gabriele Mondada <gab at ijk.ch>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M lldb/tools/lldb-dap/EventHelper.cpp

  Log Message:
  -----------
  [lldb][lldb-dap] Correctly format lldb warnings in the debug console (#173852)

Trivial change to prevent all warnings from being printed on a single
line in the VS Code debug console.


  Commit: b72d8ac98c6eee51ac66bc865c81a23a16c37731
      https://github.com/llvm/llvm-project/commit/b72d8ac98c6eee51ac66bc865c81a23a16c37731
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/known-never-zero.ll

  Log Message:
  -----------
  [DAG] isKnownNeverZero - add ISD::EXTRACT_VECTOR_ELT handling (#183961)

Initialize DemandedElts mask when the index is constant and inbounds, otherwise check all elements.


  Commit: 20f36a2ff10fd5c4ca821a3382b44440a6429b88
      https://github.com/llvm/llvm-project/commit/20f36a2ff10fd5c4ca821a3382b44440a6429b88
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp

  Log Message:
  -----------
  [MLIR][GPU] Improve error message on invalid pass option

This provides a more helpful message to the user when passing invalid command
line options


  Commit: 2c3d5f958f22965a1b7f76aac97467fdf4f4a8d1
      https://github.com/llvm/llvm-project/commit/2c3d5f958f22965a1b7f76aac97467fdf4f4a8d1
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/ParserOpenACC/parse-constructs.cpp
    A clang/test/SemaCXX/GH175783.cpp

  Log Message:
  -----------
  [clang] use typo-corrected name qualifier for expressions (#183937)

Fixes #175783


  Commit: 0b423a5b2738a795d8033398ca0959d36cee0e06
      https://github.com/llvm/llvm-project/commit/0b423a5b2738a795d8033398ca0959d36cee0e06
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M mlir/test/Dialect/GPU/module-to-binary-invalid-format.mlir

  Log Message:
  -----------
  [MLIR] Fix invalid test after improving the error message (NFC)


  Commit: 910988b9f15ce8c4b3a383e925c7c0ab0ef52f2f
      https://github.com/llvm/llvm-project/commit/910988b9f15ce8c4b3a383e925c7c0ab0ef52f2f
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/amdpal-chain-metadata.ll

  Log Message:
  -----------
  [AMDGPU] Stop treating AMDGPU_CS_ChainPreserve as a module entry funtion (#183718)

Starting with AMD PAL metadata v3.6, pipeline ELFs cannot have a
`.shader_functions` section. However, dynamic VGPR retry helpers use
the `AMDGPU_CS_ChainPreserve` calling convention, which LLVM previously
treated as a module entrypoint, incorrectly emitting this metadata.


  Commit: 4673cecc89d1a2260edcff2808ed46de7bc0435d
      https://github.com/llvm/llvm-project/commit/4673cecc89d1a2260edcff2808ed46de7bc0435d
  Author: Twice <twice at apache.org>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/include/mlir-c/Rewrite.h
    M mlir/lib/Bindings/Python/Rewrite.cpp
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    A mlir/test/python/integration/dialects/bf.py

  Log Message:
  -----------
  [MLIR][Python] Add support of `convert_region_types` and the bf integration test (#183664)

This PR adds the `convert_region_types` API to
`ConversionPatternRewriter` and introduces a new integration test,
`bf.py`, which demonstrates how to combine a Python-defined dialect, the
dialect conversion API, the pass manager, and the execution engine to
build a pure-Python JIT compilation pipeline.


  Commit: da8d18190530be7265bdb15b29cf0c654095c26c
      https://github.com/llvm/llvm-project/commit/da8d18190530be7265bdb15b29cf0c654095c26c
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M libc/shared/math/asinf16.h
    M libc/shared/math/asinhf16.h
    M libc/shared/math/asinpif16.h
    M libc/shared/math/atanf16.h
    M libc/shared/math/atanhf16.h
    M libc/shared/math/bf16fmaf128.h
    M libc/shared/math/bf16mul.h
    M libc/shared/math/bf16mulf.h
    M libc/shared/math/bf16mulf128.h
    M libc/shared/math/bf16mull.h
    M libc/shared/math/bf16sub.h
    M libc/shared/math/bf16subf.h
    M libc/shared/math/bf16subf128.h
    M libc/shared/math/ceil.h
    M libc/shared/math/ceilbf16.h
    M libc/shared/math/ceilf.h
    M libc/shared/math/ceilf128.h
    M libc/shared/math/ceilf16.h
    M libc/shared/math/ceill.h
    M libc/shared/math/cosf16.h
    M libc/shared/math/coshf16.h
    M libc/shared/math/cospif16.h
    M libc/shared/math/dfmal.h
    M libc/shared/math/exp10f16.h
    M libc/shared/math/exp10m1f16.h
    M libc/shared/math/exp2f16.h
    M libc/shared/math/exp2m1f16.h
    M libc/shared/math/expf16.h
    M libc/shared/math/expm1f16.h
    M libc/shared/math/f16div.h
    M libc/shared/math/f16divf.h
    M libc/shared/math/f16divf128.h
    M libc/shared/math/f16divl.h
    M libc/shared/math/f16fma.h
    M libc/shared/math/f16fmaf.h
    M libc/shared/math/f16fmaf128.h
    M libc/shared/math/f16fmal.h
    M libc/shared/math/f16mul.h
    M libc/shared/math/f16mulf.h
    M libc/shared/math/f16mulf128.h
    M libc/shared/math/f16mull.h
    M libc/shared/math/f16sqrtf128.h
    M libc/shared/math/f16sqrtl.h
    M libc/shared/math/f16sub.h
    M libc/shared/math/f16subf.h
    M libc/shared/math/f16subf128.h
    M libc/shared/math/f16subl.h
    M libc/shared/math/fadd.h
    M libc/shared/math/faddf128.h
    M libc/shared/math/faddl.h
    M libc/shared/math/fdim.h
    M libc/shared/math/fdimbf16.h
    M libc/shared/math/fdimf.h
    M libc/shared/math/fdimf128.h
    M libc/shared/math/fdimf16.h
    M libc/shared/math/fdiml.h
    M libc/shared/math/floor.h
    M libc/shared/math/floorbf16.h
    M libc/shared/math/floorf.h
    M libc/shared/math/floorf128.h
    M libc/shared/math/floorf16.h
    M libc/shared/math/floorl.h
    M libc/shared/math/fmax.h
    M libc/shared/math/fmaxbf16.h
    M libc/shared/math/fmaxf.h
    M libc/shared/math/fmaxf128.h
    M libc/shared/math/fmaxf16.h
    M libc/shared/math/fmaxl.h
    M libc/shared/math/frexpf16.h
    M libc/shared/math/fsqrtf128.h
    M libc/shared/math/getpayload.h
    M libc/shared/math/getpayloadbf16.h
    M libc/shared/math/getpayloadf.h
    M libc/shared/math/getpayloadf128.h
    M libc/shared/math/getpayloadf16.h
    M libc/shared/math/getpayloadl.h
    M libc/shared/math/hypotf.h
    M libc/shared/math/hypotf16.h
    M libc/shared/math/ilogbf.h
    M libc/shared/math/ilogbf16.h
    M libc/shared/math/ldexpf16.h
    M libc/shared/math/log.h
    M libc/shared/math/log10.h
    M libc/shared/math/log1p.h
    M libc/shared/math/log2.h
    M libc/shared/math/logb.h
    M libc/shared/math/logbf.h
    M libc/shared/math/logbf128.h
    M libc/shared/math/logbf16.h
    M libc/shared/math/logf16.h
    M libc/shared/math/setpayload.h
    M libc/shared/math/setpayloadbf16.h
    M libc/shared/math/setpayloadf.h
    M libc/shared/math/setpayloadf128.h
    M libc/shared/math/setpayloadf16.h
    M libc/shared/math/setpayloadl.h
    M libc/shared/math/setpayloadsig.h
    M libc/shared/math/setpayloadsigbf16.h
    M libc/shared/math/setpayloadsigf.h
    M libc/shared/math/setpayloadsigf128.h
    M libc/shared/math/setpayloadsigf16.h
    M libc/shared/math/setpayloadsigl.h
    M libc/shared/math/sinhf16.h
    M libc/shared/math/tanpif16.h

  Log Message:
  -----------
  [libc][math] Cleanup shared/math (#183971)


  Commit: c35a726ca9795928e419044e6349edf6b73b6cd0
      https://github.com/llvm/llvm-project/commit/c35a726ca9795928e419044e6349edf6b73b6cd0
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M clang/test/TableGen/builtin-docs.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Sort undocumented builtins after documented ones in generated docs (#183938)

The builtin documentation emitter previously sorted all categories
purely alphabetically, which placed the "Undocumented" section before
categories like "WMMA" in the generated RST. This made the output
confusing since stub entries appeared before real documentation.

Push the "Undocumented" category to the end of the output so that all
documented categories appear first, regardless of their names.


  Commit: bf4ed7903aee3690977f1865fb5509f74f3f860c
      https://github.com/llvm/llvm-project/commit/bf4ed7903aee3690977f1865fb5509f74f3f860c
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/initializer_list
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/memory
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/vector
    M clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp
    M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
    R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/smart-ptr/initializer_list.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique-default-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-random-shuffle.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/shrink-to-fit.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace-ignore-implicit-constructors.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Use singe mock vector header in tests (#183963)

In new tests we should encourage to use these "source of truth" files if
possible.


  Commit: b2ce908a48e0ab6b0404742f38e5e5d0ee51cc2f
      https://github.com/llvm/llvm-project/commit/b2ce908a48e0ab6b0404742f38e5e5d0ee51cc2f
  Author: Reagan <xbjfk.github at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/gwp_asan/CMakeLists.txt
    M compiler-rt/lib/msan/tests/CMakeLists.txt
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt][CMake] Fix build when specifying --stdlib= (with 2 dashes) (#136111)

You can pass the stdlib argument either as -stdlib and --stdlib - the
previous regex did not account for this however - which caused the build
to fail, as a --stdlib argument would be replaced with a single dash,
causing clang to assume reading from stdin and the build to fail:

clang++: error: -E or -x required when input is from standard input
clang++: error: cannot specify -o when generating multiple output files

The files
[libcxxabi/CMakeLists.txt](https://github.com/llvm/llvm-project/blob/bf6986f9f09f79da38006a83c339226c429bb686/libcxxabi/CMakeLists.txt#L261)
and
[libunwind/CMakeLists.txt](https://github.com/llvm/llvm-project/blob/bf6986f9f09f79da38006a83c339226c429bb686/libunwind/CMakeLists.txt#L257)
account for this by removing --stdlib first.

Co-authored-by: Vitaly Buka <vitalybuka at google.com>


  Commit: 10b1b7857b0564c447054ed5f451729230280f54
      https://github.com/llvm/llvm-project/commit/10b1b7857b0564c447054ed5f451729230280f54
  Author: MacGyver Codilla <77024043+39otsu at users.noreply.github.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
    M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp

  Log Message:
  -----------
  [ASan] Mark recent integration tests as accordingly for MSVC (#135889)

Both of these tests will cause an unsuccessful pass when using msvc.

`shadowed-stack-serialization.cpp` - XFAIL due to the metadata not being
generated.
`fakeframe-right-redzone.cpp` - UNSUPPORTED due to the optimization
limitations of the msvc compiler.

---------

Co-authored-by: MacGyver Codilla <mcodilla at microsoft.com>


  Commit: d412b04a883c7d6212edf1d678349689cb7d723b
      https://github.com/llvm/llvm-project/commit/d412b04a883c7d6212edf1d678349689cb7d723b
  Author: Benjamin Stott <Benjamin.Stott at sony.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M compiler-rt/lib/ubsan/ubsan_diag.h

  Log Message:
  -----------
  [UBSan] Wrap Location variants in anonymous union (#168866)

(Addresses the FIXME)


  Commit: b872179bebe7a9aa42163fdb3334ab9e388c9dfd
      https://github.com/llvm/llvm-project/commit/b872179bebe7a9aa42163fdb3334ab9e388c9dfd
  Author: Xavier Roche <roche at httrack.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/bitcnt-i256.ll
    A llvm/test/CodeGen/AArch64/cmp-i256.ll
    A llvm/test/CodeGen/AArch64/div-i256.ll
    A llvm/test/CodeGen/AArch64/mul-i256.ll
    A llvm/test/CodeGen/AArch64/shift-i256.ll

  Log Message:
  -----------
  [AArch64][test] Add i256 codegen baseline tests (#183587)

## Summary

Add baseline codegen tests for i256 operations on AArch64:
- `bitcnt-i256.ll`: ctpop, ctlz, cttz, Hamming distance, parity (3 RUN
lines: +neon, +sve, +cssc)
- `cmp-i256.ll`: 8 icmp variants (slt/sgt/sle/sge/ult/ugt/ule/uge) +
select
- `div-i256.ll`: udiv, sdiv, urem, srem, power-of-2, and constant
division
- `mul-i256.ll`: multiply, multiply-by-constant, add, sub, and, or, xor
- `shift-i256.ll`: variable shl/lshr/ashr, constant shifts, narrow (i32)
amounts

These are test-only NFC pre-patches for `__int256` builtin type support
(#182733). i256 is already a valid LLVM IR type; these tests capture the
current baseline codegen. The main PR will update the CHECK lines to
show codegen improvements (e.g., direct libcall routing for
division/multiply).

## Test plan

- All 5 tests pass with `llvm-lit` on upstream `main` (generated with
`update_llc_test_checks.py` using upstream `llc`)

## AI Disclosure

This patch was developed with assistance from Claude (Anthropic). All
commits carry `Assisted-by: Claude (Anthropic)` and `Co-Authored-By:
Claude Opus 4.6 <noreply at anthropic.com>` trailers, per the [LLVM AI Tool
Policy](https://llvm.org/docs/DeveloperPolicy.html#use-of-ai-generated-contributions).
All code has been reviewed and validated by the author.

---------

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>


  Commit: 9ffa08f097d45a36a50d5a8066d00488db3596ed
      https://github.com/llvm/llvm-project/commit/9ffa08f097d45a36a50d5a8066d00488db3596ed
  Author: Krzysztof Drewniak <krzysdrewniak at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/test/mlir-tblgen/op-properties-predicates.td

  Log Message:
  -----------
  [mlir][NFC] Fix typo in property predicate tests (#183987)


  Commit: d74c6b1176e92b1741bb3275c2befbe76b7449e9
      https://github.com/llvm/llvm-project/commit/d74c6b1176e92b1741bb3275c2befbe76b7449e9
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/Support/InterfaceSupport.h
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/AttributeDetail.h
    M mlir/lib/IR/BuiltinAttributes.cpp
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    A mlir/test/IR/dense-elements-type-interface.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h

  Log Message:
  -----------
  [mlir][IR] Generalize `DenseElementsAttr` to custom element types (#183920)

`DenseElementsAttr` supports only a hard-coded list of element types:
`int`, `index`, `float`, `complex`. This commit generalizes the
`DenseElementsAttr` infrastructure: it now supports arbitrary element
types, as long as they implement the new `DenseElementTypeInterface`.

The `DenseElementTypeInterface` has the following helper functions:
- `getDenseElementBitSize`: Query the size of an element in bits. (When
storing an element in memory, each element is padded to a full byte.
This is an existing limitation of the `DenseElementsAttr`; with an
exception for `i1`.)
- `convertToAttribute`: Attribute factory / deserializer. Converts bytes
into an MLIR attribute. The attribute provides the assembly format /
printer for a single element.
- `convertFromAttribute`: Serializer. Converts an MLIR attribute into
bytes.

Note: `convertToAttribute` / `convertFromAttribute` are mainly for
writing test cases. For performance reasons, `DenseElementsAttr` users
should work with raw bytes / elements and avoid any API that
materializes MLIR attributes. However, MLIR attributes typically have
human-readable parsers/printers, making them suitable for lit tests and
debugging.

This PR introduces an additional assembly format for
`DenseElementsAttrs`. There are now two formats. (The existing one is
kept for compatibility reasons.)
- Literal-first (existing): `dense<[1, 2, 3]> : tensor<3xi32>`
- Type-first (new): `dense<tensor<3xi32> : [1 : i32, 2 : i32, 3 : i32]>`

The new syntax is needed to disambiguate between "literal" (e.g., `1`)
and attribute (e.g., `1 : i32`) when parsing the first token. In the
literal-first syntax, we only parse literals. In the type-first syntax,
we only parse attributes.

The existing `int`, `index`, `float`, `complex` types also implement the
`DenseElementTypeInterface`. This allows us to implement
`DenseElementsAttr::get` and `AttributeElementIterator::operator*` in a
generic way.

RFC:

https://discourse.llvm.org/t/rfc-allow-custom-element-types-in-denseelementattr/89656

This is a re-upload of #179122.


  Commit: 5768ee2dcdad1bba9763361313ccce5641497033
      https://github.com/llvm/llvm-project/commit/5768ee2dcdad1bba9763361313ccce5641497033
  Author: fogsong233 <fogsong233 at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/lib/Interpreter/IncrementalParser.cpp
    A clang/test/Interpreter/incremental-c-implicit-error.c
    A clang/test/Interpreter/incremental-c-implicit-undo.c

  Log Message:
  -----------
  [clang-repl] fix CleanUpPTU by removing decl according to C implicitly FuncitonDecl. (#178648)

fix #171440

---------

Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>


  Commit: 0f63db5c665b77c943ed19d2615f94dbf24cfb7a
      https://github.com/llvm/llvm-project/commit/0f63db5c665b77c943ed19d2615f94dbf24cfb7a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/Attributor.cpp

  Log Message:
  -----------
  Attributor: Avoid calling identifyDefaultAbstractAttributes on declarations (#182663)

Previously it would be called and inserted into a visited map,
but would never be used. This could possibly go one step further
and never add declarations to the SetVector of Functions. If I try
that, only one call graph printing test fails.


  Commit: d68d47db7b5a08f1722cc03ccfbc1bf441b34fe2
      https://github.com/llvm/llvm-project/commit/d68d47db7b5a08f1722cc03ccfbc1bf441b34fe2
  Author: David Green <david.green at arm.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/test/CodeGen/ARM/bfx.ll
    M llvm/test/CodeGen/ARM/extract-bits.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/ARM/vector-DAGCombine.ll
    M llvm/test/CodeGen/ARM/vector-store.ll
    M llvm/test/CodeGen/ARM/vext.ll
    M llvm/test/CodeGen/ARM/vselect_imax.ll
    M llvm/test/CodeGen/ARM/vtrn.ll
    M llvm/test/CodeGen/Thumb/pr35836.ll
    M llvm/test/CodeGen/Thumb/pr35836_2.ll
    M llvm/test/CodeGen/Thumb/umulo-128-legalisation-lowering.ll
    M llvm/test/tools/llvm-mca/ARM/cortex-a57-basic-instructions.s
    M llvm/test/tools/llvm-mca/ARM/cortex-a57-neon-instructions.s
    M llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s
    M llvm/test/tools/llvm-mca/ARM/m4-int.s
    M llvm/test/tools/llvm-mca/ARM/m55-int.s
    M llvm/test/tools/llvm-mca/ARM/m7-int.s
    M llvm/test/tools/llvm-mca/ARM/m85-int.s
    M llvm/test/tools/llvm-mca/ARM/simple-cortex-m33.s

  Log Message:
  -----------
  [ARM] Explicitly mark certain instructions as having no side effects. (#182771)

This goes through some Arm instructions and adds hasSideEffects = 0 to
ones where it was not already implied. This should help with scheduling
and instruction movement.


  Commit: 6fa90a3f7e893fa83880f42a76ec2346917e331f
      https://github.com/llvm/llvm-project/commit/6fa90a3f7e893fa83880f42a76ec2346917e331f
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/lib/IR/SymbolTable.cpp
    M mlir/test/Dialect/IRDL/invalid.irdl.mlir

  Log Message:
  -----------
  [MLIR][SymbolTable] Fix crash when SymbolTable is built on unverified IR (#183945)

The SymbolTable::SymbolTable constructor asserted that all symbol names
in the region were unique. This could cause mlir-opt to crash instead of
producing a proper diagnostic when the IR contained both:

1. An IsolatedFromAbove op (e.g., irdl.dialect) with a symbol user that
looks up symbols in an ancestor symbol table, and
2. Duplicate symbols in that ancestor (e.g., two func.func @test).

The crash occurred because IsolatedFromAbove ops are verified in
verifyOnExit() before verifyRegionInvariants() runs the SymbolTable
trait's verifyRegionTrait (which produces the proper duplicate-symbol
diagnostic). When the isolated op's symbol use verification triggered
SymbolTableCollection::getSymbolTable() on the ancestor, the constructor
would assert instead of gracefully handling the invalid-but-not-yet-
reported duplicate symbols.

The fix removes the assertion and silently skips duplicate symbol
insertions (keeping the first definition). The proper diagnostic is
still produced by the SymbolTable trait's verifyRegionTrait, which runs
after all children have been verified.

Add a regression test in invalid.irdl.mlir using a self-referencing IRDL
parametric type combined with duplicate function symbols.

Fixes #159673


  Commit: 74c0ee7e72bf62589c4dfa6f4601887bafa82d7c
      https://github.com/llvm/llvm-project/commit/74c0ee7e72bf62589c4dfa6f4601887bafa82d7c
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/CostModel.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [TTI] Remove TargetLibraryInfo from IntrinsicCostAttributes (NFC) (#183764)

This is a remnant from when `sincos` costs used the vector mappings from
`TargetLibraryInfo::getVectorMappingInfo`.


  Commit: 9801e752024ff641d2f7fea308d5cc078d74794e
      https://github.com/llvm/llvm-project/commit/9801e752024ff641d2f7fea308d5cc078d74794e
  Author: David Green <david.green at arm.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/test/tools/llvm-mca/ARM/simple-cortex-m33.s

  Log Message:
  -----------
  [ARM] tADDrSPi no side effects change (#183071)

This is pulled out of #182771 in case it causes issues. The mis-compile
I believe is no longer present, as tADDrSPi is used in several test
cases which do not change due to of marking tADDrSPi as not affect side
effects.


  Commit: 2cb2fe7f2a1dfd51642651264c644e213809cb0b
      https://github.com/llvm/llvm-project/commit/2cb2fe7f2a1dfd51642651264c644e213809cb0b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/test/Dialect/SCF/invalid.mlir

  Log Message:
  -----------
  [mlir][scf] Fix crash in ForOp verifier when body block has no arguments (#183946)

A malformed `scf.for` whose body block contains no arguments caused
`getRegionIterArgs()` to crash via an out-of-bounds `drop_front(1)`
call. This happened because `verifyLoopLikeOpInterface` (a
`verifyRegionTrait`) invokes `getRegionIterArgs()` during
`verifyRegionInvariants`, which runs before `verifyRegions()` has a
chance to report a proper diagnostic.

Fix by adding an explicit check in `ForOp::verify()` (which runs in
`verifyInvariants`, before any region trait verifiers execute) that
ensures the body block has at least as many arguments as there are
induction variables. This prevents the crash and produces a clear error
message.

Fixes #159737


  Commit: b7e20442d5edc768c986cc1f3363ab76cd9d7281
      https://github.com/llvm/llvm-project/commit/b7e20442d5edc768c986cc1f3363ab76cd9d7281
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/include/mlir/IR/OpBase.td
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/mlir-tblgen/types.mlir

  Log Message:
  -----------
  [MLIR][ODS] Fix AllElementCountsMatch crash on dynamic shaped types (#183948)

The AllElementCountsMatch trait called ShapedType::getNumElements() on
operands or results with dynamic dimensions, which unconditionally
asserts hasStaticShape(). This caused mlir-opt to crash instead of
failing gracefully when the trait was used with dynamically-shaped
types.

Fix this by rewriting AllElementCountsMatch to use an And<> predicate
combining Neg<AnyMatchOperatorPred> (requiring all types to be
statically shaped) with AllMatchSameOperatorPred (requiring equal
element counts). When any type has dynamic dimensions the verification
now fails with a diagnostic instead of crashing.

Update the regression test to expect a verification failure rather than
success when dynamic shapes are present.

Fixes #159740


  Commit: 785490e9db54ef03988d8e9fe56aab45e4b29129
      https://github.com/llvm/llvm-project/commit/785490e9db54ef03988d8e9fe56aab45e4b29129
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/include/mlir/Transforms/Passes.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/include/mlir/Transforms/ViewOpGraph.h
    M mlir/lib/Transforms/CSE.cpp
    M mlir/lib/Transforms/Canonicalizer.cpp
    M mlir/lib/Transforms/ControlFlowSink.cpp
    M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
    M mlir/lib/Transforms/InlinerPass.cpp
    M mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
    M mlir/lib/Transforms/OpStats.cpp
    M mlir/lib/Transforms/PrintIR.cpp
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/lib/Transforms/SCCP.cpp
    M mlir/lib/Transforms/StripDebugInfo.cpp
    M mlir/lib/Transforms/SymbolDCE.cpp
    M mlir/lib/Transforms/SymbolPrivatize.cpp
    M mlir/lib/Transforms/TopologicalSort.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp
    M mlir/test/CAPI/pass.c
    M mlir/test/Pass/ir-printing.mlir
    M mlir/test/Pass/pass-timing.mlir
    M mlir/test/Pass/run-reproducer.mlir
    M mlir/test/Transforms/composite-pass.mlir
    M mlir/test/python/pass_manager.py

  Log Message:
  -----------
  [MLIR] Remove `let constructor = ` from mlir/include/mlir/Transforms/Passes.td (#183950)

This makes the constructor auto-generated.


  Commit: 0ba4f13b264a385ffdcdcb77c935f6c503ba62df
      https://github.com/llvm/llvm-project/commit/0ba4f13b264a385ffdcdcb77c935f6c503ba62df
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/test/Dialect/Affine/invalid-reify-bound-dim.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp

  Log Message:
  -----------
  [mlir][test] Fix crash in ReifyBoundOp with invalid 'type' attribute (#184004)

The `ReifyBoundOp::getBoundType()` called `llvm_unreachable("invalid
bound type")` when the `type` attribute was set to a value other than
"EQ", "LB", or "UB" (e.g., "scalable"). This caused an abort instead of
a user-visible diagnostic.

Add a verification check that rejects invalid `type` values with a
proper error message before `getBoundType()` is ever called.

Fixes #128805


  Commit: 2c9720972e90fce4a5409cac9d9141c048a64632
      https://github.com/llvm/llvm-project/commit/2c9720972e90fce4a5409cac9d9141c048a64632
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/CMakeLists.txt
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
    M mlir/include/mlir/Bindings/Python/NanobindUtils.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/test/CMakeLists.txt
    M mlir/test/lit.cfg.py
    M mlir/test/lit.site.cfg.py.in
    M mlir/test/python/ir/auto_location.py
    A mlir/test/python/ir/auto_location_stable_abi.py

  Log Message:
  -----------
  [mlir][python] Add stable ABI (abi3) support (#183856)

Add `MLIR_ENABLE_PYTHON_STABLE_ABI` cmake flag to build bindings against
the Python limited/stable API (abi3 / PEP 384). This allow for
compatibility across different >=3.12 versions with a single .so /
wheel. We also require CMake >=3.26.

The stable ABI restricts usage to a subset of the CPython C API: frame
and code object structs are opaque, so introspection APIs like
`PyCode_Addr2Location`, `PyFrame_GetLasti`, and `PyFrame_GetCode` are
unavailable. The traceback-based auto-location logic is dropped because
we don’t have stable ABI to produce complete locations.

Assisted-by: claude


  Commit: 3bdee9b5576bd0b64da9501c267d4b40d768be9a
      https://github.com/llvm/llvm-project/commit/3bdee9b5576bd0b64da9501c267d4b40d768be9a
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
    M llvm/test/Transforms/GVN/PRE/pre-loop-load-through-select.ll
    A llvm/test/Transforms/GVN/load-select-addr-store-fwd.ll

  Log Message:
  -----------
  [GVN] Forward store values through select addresses in findDominatingValue (#183316)

## Alive2 proof

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


  Commit: 49b77e3b45555b022d0a0e2aac239708d706ae10
      https://github.com/llvm/llvm-project/commit/49b77e3b45555b022d0a0e2aac239708d706ae10
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll

  Log Message:
  -----------
  [VectorCombine] Fold sign-bit check for multiple vectors (#182911)

## Alive2 proofs

| Reduction | Shift | Cmp      | Sources | Proof |
|-----------|-------|----------|---------|-------|
| add | lshr | == 0 | 2 | [proof](https://alive2.llvm.org/ce/z/f44vco) |
| add | lshr | == 8 | 2 | [proof](https://alive2.llvm.org/ce/z/Ks_nea) |
| add | ashr | == 0 | 2 | [proof](https://alive2.llvm.org/ce/z/ZsXJ5k) |
| add | ashr | == -8 | 2 | [proof](https://alive2.llvm.org/ce/z/HZfans)
|
| add | lshr | == 0 | 3 | [proof](https://alive2.llvm.org/ce/z/x-dEdz) |
| add | lshr | == 12 | 3 | [proof](https://alive2.llvm.org/ce/z/sfNvhr)
|

These proofs are not very exhaustive, but somewhat show that it works
for addition. Apart from the fact that we use multiple vectors, the
proofs from the previous changes generally apply here as well because we
effectively match on reductions of size M x N.


  Commit: a6e7c38ea6310ef8d8e6ba0d8158d7d1f4e28f5b
      https://github.com/llvm/llvm-project/commit/a6e7c38ea6310ef8d8e6ba0d8158d7d1f4e28f5b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/revec-select-scalar-vector-cond.ll

  Log Message:
  -----------
  [SLP]Do not vectorize select nodes with scalar and vector conditions

If the select nodes contains selects with mixed scalar/vector
conditions, such nodes should not be revectorized.

Fixes #170836


  Commit: 7b26069828aa88064b92f73f764b708754e441ec
      https://github.com/llvm/llvm-project/commit/7b26069828aa88064b92f73f764b708754e441ec
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll

  Log Message:
  -----------
  [VPlan] Pass ForceTargetInstructionCost insted of NumOccurences.

Update code incorrectly passing
ForceTargetInstructionCost.getNumOccurrences().

Fixes a cost-divergence with legacy cost model.


  Commit: 9730d3128435350c5ef90c198979df25004ccc1f
      https://github.com/llvm/llvm-project/commit/9730d3128435350c5ef90c198979df25004ccc1f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/revec-reductions.ll

  Log Message:
  -----------
  [SLP]Fix types for reductions in revec

Need to consider vector inputs, when building casts for the reduced
values

Fixes #170828


  Commit: 320220e48b8f1054ce7a37c8b2a528315080e29c
      https://github.com/llvm/llvm-project/commit/320220e48b8f1054ce7a37c8b2a528315080e29c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
    M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
    M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll

  Log Message:
  -----------
  [VPlan] Support arbitrary predicated early exits. (#182396)

This removes the restriction requiring a single predicated early exit.
Using MaskedCond, we only combine early-exit conditions with block
masks from non-exiting control flow.

This means we have to ensure that we check the early exit conditions in
program order, to make sure we take the first exit in program order that
exits at the first lane for the combined exit condition.

To do so, sort the exits by their reverse post-order numbers.

Depends on https://github.com/llvm/llvm-project/pull/182395

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


  Commit: ae7916539918544655bd92b7f9a05b48563483b4
      https://github.com/llvm/llvm-project/commit/ae7916539918544655bd92b7f9a05b48563483b4
  Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftCXXABI.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/test/CodeGenObjC/aarch64-sve-types.m

  Log Message:
  -----------
  [clang][NFC][diagnostics] Remove several uses of `getCustomDiagID()` (#172532)

This change converts all existing uses of `getCustomDiagID()` within the
`clang/AST` library into regular diagnostics defined in
`DiagnosticASTKinds.td`.

This is mostly just cleanup, but it will also help with future changes
to the diagnostic system by letting us focus on the custom diagnostic
scenarios that _don't_ fit into the usual pre-declared diagnostic
scenario.


  Commit: 02c7a6cd7f35a9ad5d1c650b4f56593db1210641
      https://github.com/llvm/llvm-project/commit/02c7a6cd7f35a9ad5d1c650b4f56593db1210641
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll

  Log Message:
  -----------
  [SLP][NFC]Add tests for bitcasts/bswaps with large target type


  Commit: 451529778d428ee691ce699c5ae8acfa9b9ea6c4
      https://github.com/llvm/llvm-project/commit/451529778d428ee691ce699c5ae8acfa9b9ea6c4
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/Sema/sugar-common-types.c

  Log Message:
  -----------
  [clang] fix common type calculation for l-values of 'void' type (#183972)

Fixes #111300


  Commit: e4301c48fdd95f43644d84868f560b291d46bc60
      https://github.com/llvm/llvm-project/commit/e4301c48fdd95f43644d84868f560b291d46bc60
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

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

  Log Message:
  -----------
  [bazel] Fix windows stack space on llvm driver link (#182998)

Bazel was missing this logic from cmake:
https://github.com/llvm/llvm-project/blob/cd200c8dfae0de1602b59011381377d147a86bdb/llvm/cmake/modules/HandleLLVMOptions.cmake#L567-L580


  Commit: 3041c90718df44617382af80c3b1fc8d68ce9f2c
      https://github.com/llvm/llvm-project/commit/3041c90718df44617382af80c3b1fc8d68ce9f2c
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Tensor/fold-constant-extract-slice.mlir

  Log Message:
  -----------
  [mlir][tensor] Remove hard-coded types from `ConstantOpExtractSliceFolder` (#184013)

Use the `Attribute` API, which works with arbitrary element types.


  Commit: a13afe84bb4240608b9ce822918c43e689d63b47
      https://github.com/llvm/llvm-project/commit/a13afe84bb4240608b9ce822918c43e689d63b47
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll

  Log Message:
  -----------
  [SLP][NFC]Add more bitcast/bswap tests with immediate loads, NFC


  Commit: 48209b6777be924b4384f2fc3148d713ac3f411c
      https://github.com/llvm/llvm-project/commit/48209b6777be924b4384f2fc3148d713ac3f411c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

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

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - add ISD::EXTRACT_VECTOR_ELT handling (#183924)

Initialize DemandedElts mask when the index is constant and inbounds, otherwise check all elements.


  Commit: 1dc85c60410f8366e59fd518afa1d9cf22a909e6
      https://github.com/llvm/llvm-project/commit/1dc85c60410f8366e59fd518afa1d9cf22a909e6
  Author: Daniil Dudkin <unterumarmung at yandex.ru>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.h
    M clang-tools-extra/unittests/clang-tidy/LexerUtilsTest.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Add `getCommentsInRange` utility (#183940)


  Commit: 3cf53f684d511c5e31b27ab40397f24efaba1866
      https://github.com/llvm/llvm-project/commit/3cf53f684d511c5e31b27ab40397f24efaba1866
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/iv-live-outs.ll

  Log Message:
  -----------
  [LV] Handle sunk reverse VPInstruction in planContainsAdditionalSimps.

Licm can now sink reverse VPInstructions outside the loop region; they
won't be considered when computing costs. Account for that in
planContainsAdditionalSimplifications.

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


  Commit: f62adea305d6e0a9307fa69943c625f407a73688
      https://github.com/llvm/llvm-project/commit/f62adea305d6e0a9307fa69943c625f407a73688
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

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

  Log Message:
  -----------
  [ProfCheck] Exclude new GVN test

Added in a recent PR. We still have not gotten through GVN, so this is
likely caused by existing code. Exclude it to keep the bot green.


  Commit: dddd06be8c3ed10eaef4f986ec4ceb828be7e789
      https://github.com/llvm/llvm-project/commit/dddd06be8c3ed10eaef4f986ec4ceb828be7e789
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl

  Log Message:
  -----------
  [NFC][Clang] Auto generate check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl` (#183926)


  Commit: d1d2a1ed76a687ae0dea54b6925bd8c104341d4a
      https://github.com/llvm/llvm-project/commit/d1d2a1ed76a687ae0dea54b6925bd8c104341d4a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the incorrect compare, extracted from the transformed vector


  Commit: cf1e76835febe1e6f1bcd5c3ebf4178b4c92dbe7
      https://github.com/llvm/llvm-project/commit/cf1e76835febe1e6f1bcd5c3ebf4178b4c92dbe7
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.h
    M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h

  Log Message:
  -----------
  [clang-tidy][NFC] Don't call `getLangOpts` in `isLanguageVersionSupported` (#184029)

This is just a little inconsistency I noticed. Basically all checks
inspect the `LangOpts` parameter, but these two ignore the parameter and
call `getLangOpts` instead.


  Commit: 789bf51f0ce64c541ab0ca81d43c912cf0731628
      https://github.com/llvm/llvm-project/commit/789bf51f0ce64c541ab0ca81d43c912cf0731628
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll

  Log Message:
  -----------
  [SLP]Do not consider condition with multiple uses and negate predicate as a candidate for inversed select

If the select/zext comparison has negate predicate and is used in
several places, it should not be considered as a candidate for inversed
zext/select pattern, it will be replaced by a negate vector predicate,
leading to an incorrect codegen for other uses


  Commit: d9ca61b6e7b9aa94d244b831a3cb6274d3839d1c
      https://github.com/llvm/llvm-project/commit/d9ca61b6e7b9aa94d244b831a3cb6274d3839d1c
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl

  Log Message:
  -----------
  Revert "[NFC][Clang] Auto generate check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl`" (#184035)

Reverts llvm/llvm-project#183926 because of some BB failures.


  Commit: e2ef93fc5750e1d5bd15cfbac49996c8b9b5e8ff
      https://github.com/llvm/llvm-project/commit/e2ef93fc5750e1d5bd15cfbac49996c8b9b5e8ff
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    R clang/test/CodeGenOpenCL/.gdb_history

  Log Message:
  -----------
  [NFC] Remove `clang/test/CodeGenOpenCL/.gdb_history` (#184038)


  Commit: f05d2e8a39987b8d87e0a7d6ef887749b5b1700e
      https://github.com/llvm/llvm-project/commit/f05d2e8a39987b8d87e0a7d6ef887749b5b1700e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
    M clang/test/OpenMP/amdgcn-attributes.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
    A llvm/test/Bitcode/upgrade-uniform-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
    M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    M llvm/test/CodeGen/AMDGPU/inlineasm-sgmask.ll
    M llvm/test/CodeGen/AMDGPU/invalid-hidden-kernarg-in-kernel-signature.ll
    M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/si-opt-vgpr-liverange-bug-deadlanes.mir
    M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.mir
    M llvm/test/CodeGen/AMDGPU/swdev-549940.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_12.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_20.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_spirv.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll.bak
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [AMDGPU] Make uniform-work-group-size a valueless attribute (#183925)

The "uniform-work-group-size" function attribute previously took a
string value of "true" or "false". Since presence alone can convey the
"true" semantics and absence can convey "false", the value is
unnecessary.

This patch converts it to a valueless string attribute: presence
indicates true, absence indicates false. For backward compatibility,
auto-upgrade logic is added in both UpgradeAttributes (bitcode) and
UpgradeFunctionAttributes: if the old value is "true", the attribute is
kept without a value; if "false", the attribute is removed.


  Commit: d947f8f699eb7d14c883f180f72329cae3a23fd3
      https://github.com/llvm/llvm-project/commit/d947f8f699eb7d14c883f180f72329cae3a23fd3
  Author: Serosh <janmejayapanda400 at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaCXX/builtin_templates_invalid_parameters.cpp

  Log Message:
  -----------
  [clang][Sema] fix crash on __type_pack_element with dependent packs (GH180307) (#180407)

dependent pack expansions in __type_pack_element can result in
single-element template argument lists. When performing semantic
analysis for these builtins, the compiler needs to account for the
dependent expansions and handle them without triggering strict size
assertions. The patch adds this analysis and ensures we either defer
evaluation for dependent cases or report clear out-of-bounds diagnostics
instead of crashing
Ai was used for test generation and CI debugging 
fixes #180307


  Commit: e6aafae828e0c6f7045cdc17253b42b844f52098
      https://github.com/llvm/llvm-project/commit/e6aafae828e0c6f7045cdc17253b42b844f52098
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M polly/lib/External/isl/GIT_HEAD_ID
    M polly/lib/External/isl/isl_ast_build_expr.c
    A polly/lib/External/isl/test_inputs/codegen/polly3.c
    A polly/lib/External/isl/test_inputs/codegen/polly3.st

  Log Message:
  -----------
  [Polly] Update isl to isl-0.27-86-gcf471c16 (#184044)

Update isl to include
https://repo.or.cz/isl.git/commit/d1b49851aca59c1edd01cb1dc97674e6d79d07af
which fixes #180958

Closes #180958

Thanks @skimo-openhub for the fix and @thapgua for the bugreport.


  Commit: 81872e7049ea9b19d91bb01da92869060edbf2a3
      https://github.com/llvm/llvm-project/commit/81872e7049ea9b19d91bb01da92869060edbf2a3
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl

  Log Message:
  -----------
  [NFC] Fix check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl` on Darwin (#184042)


  Commit: 8774da8f2f4d28e1b806da38af8732603dc63530
      https://github.com/llvm/llvm-project/commit/8774da8f2f4d28e1b806da38af8732603dc63530
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Preserve anchor layouts in recoverTemporaryLayout (#182186)


  Commit: e95dabef96f481d78f2b4da9d6f8b5d27195c2b2
      https://github.com/llvm/llvm-project/commit/e95dabef96f481d78f2b4da9d6f8b5d27195c2b2
  Author: Twice <twice at apache.org>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Support attribute definitions in Python-defined dialects (#183907)

This PR is quite similiar to
https://github.com/llvm/llvm-project/pull/182805.

We added basic support of attribute definitions in Python-defined
dialects, including:

- IRDL codegen for attribute definitions
- Attr builders like `MyAttr.get(..)` and attr parameter accessors (e.g.
`my_attr.param1`)
- Use Python-defined attrs in Python-defined operations

Assisted by GitHub Copilot.


  Commit: 686987a540bc176bceaad43ffe530cb3e88796d5
      https://github.com/llvm/llvm-project/commit/686987a540bc176bceaad43ffe530cb3e88796d5
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
    A llvm/test/Transforms/InstCombine/AMDGPU/canonicalize-add-to-gep.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.wave.shuffle.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/mbcnt.ll

  Log Message:
  -----------
  ValueTracking/AMDGPU: handle mbcnt in computeKnownBitsFromOperator (#183229)

This helps canonicalize some address calculation. This would further
help immediate folding into memory load instructions in the backend.

The order changes to v_mad_u32_u24 is just because
@llvm.amdgcn.mul.u24.i32 was used in codegen prepare after this change.
It does not really change anything important.


  Commit: 8fff1c042d14d903ad8bcd1b169e06f0ba04882d
      https://github.com/llvm/llvm-project/commit/8fff1c042d14d903ad8bcd1b169e06f0ba04882d
  Author: Mend Renovate <bot at renovateapp.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  Update actions/attest-build-provenance action to v4 (#184051)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/attest-build-provenance](https://redirect.github.com/actions/attest-build-provenance)
| action | major | `v3.1.0` → `v4.1.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/160328) for more information.

---

### Release Notes

<details>
<summary>actions/attest-build-provenance
(actions/attest-build-provenance)</summary>

###
[`v4.1.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v4.1.0)

[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v4.0.0...v4.1.0)

> \[!NOTE]
> As of version 4, `actions/attest-build-provenance` is simply a wrapper
on top of
[`actions/attest`](https://redirect.github.com/actions/attest).
>
> Existing applications may continue to use the
`attest-build-provenance` action, but new implementations should use
`actions/attest` instead.

#### What's Changed

- Update RELEASE.md docs by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[#​836](https://redirect.github.com/actions/attest-build-provenance/pull/836)
- Bump `actions/attest` from 4.0.0 to 4.1.0 by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[#​838](https://redirect.github.com/actions/attest-build-provenance/pull/838)
- Bump `@actions/attest` from 3.0.0 to 3.1.0 by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#362](https://redirect.github.com/actions/attest/pull/362)
- Bump `@actions/attest` from 3.1.0 to 3.2.0 by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#365](https://redirect.github.com/actions/attest/pull/365)
- Add new `subject-version` input for inclusion in storage record by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#364](https://redirect.github.com/actions/attest/pull/364)
- Add storage record content to README by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#366](https://redirect.github.com/actions/attest/pull/366)

**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v4.0.0...v4.1.0>

###
[`v4.0.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v4.0.0)

[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v3.2.0...v4.0.0)

> \[!NOTE]
> As of version 4, `actions/attest-build-provenance` is simply a wrapper
on top of
[`actions/attest`](https://redirect.github.com/actions/attest).
>
> Existing applications may continue to use the
`attest-build-provenance` action, but new implementations should use
`actions/attest` instead.

#### What's Changed

- Prepare v4 release by
[@​bdehamer](https://redirect.github.com/bdehamer) in
[#​835](https://redirect.github.com/actions/attest-build-provenance/pull/835)

**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v3.2.0...v4.0.0>

###
[`v3.2.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v3.2.0)

[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v3.1.0...v3.2.0)

#### What's Changed

- Bump [@​actions/core](https://redirect.github.com/actions/core)
from 1.11.1 to 2.0.1 by
[@​dependabot](https://redirect.github.com/dependabot)\[bot] in
[#​776](https://redirect.github.com/actions/attest-build-provenance/pull/776)
- Add more documentation on Artifact Metadata Storage Records by
[@​malancas](https://redirect.github.com/malancas) in
[#​797](https://redirect.github.com/actions/attest-build-provenance/pull/797)
- Update actions/attest to latest version v3.2.0 by
[@​malancas](https://redirect.github.com/malancas) in
[#​812](https://redirect.github.com/actions/attest-build-provenance/pull/812)

**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v3.1.0...v3.2.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Between 12:00 AM and 12:59 AM, only on
Monday ( * 0 * * 1 ) (UTC), Automerge - At any time (no schedule
defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/llvm/llvm-project).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My40My4yIiwidXBkYXRlZEluVmVyIjoiNDMuNDMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->


  Commit: 52a9eb37db83e1891b20c8d9cf0d03559bb4b2ca
      https://github.com/llvm/llvm-project/commit/52a9eb37db83e1891b20c8d9cf0d03559bb4b2ca
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  [Github] Add TODO around actions/attest


  Commit: ab1d59e72524c0fbb77b614c46d67265f1f6a47d
      https://github.com/llvm/llvm-project/commit/ab1d59e72524c0fbb77b614c46d67265f1f6a47d
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/unittests/Format/ConfigParseTest.cpp

  Log Message:
  -----------
  [clang-format] Allow InheritParentConfig to accept a directory (#182791)

Add support for `BasedOnStyle: InheritParentConfig=<directory-path>` in
config files to redirect inheritance to the `.clang-format` or
`_clang-format` file in the `<directory_path>` directory.

Closes #107808


  Commit: f1620e44412fd01a453f6f36d561bb395e1c0627
      https://github.com/llvm/llvm-project/commit/f1620e44412fd01a453f6f36d561bb395e1c0627
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/nvptx.languageOptsOpenCL.cl

  Log Message:
  -----------
  [OpenCL] Enable __cl_clang_function_scope_local_variables for AMDGPU and NVPTX targets (#183892)

I'd like to use this extension in our downstream SYCL compiler to
implement the __clc__group_scratch helper function, allowing us to
replace .ll files with .cl files for the two targets:
https://github.com/intel/llvm/blob/sycl/libclc/libspirv/lib/amdgcn-amdhsa/group/collectives_helpers.ll
https://github.com/intel/llvm/blob/sycl/libclc/libspirv/lib/ptx-nvidiacl/group/collectives_helpers.ll


  Commit: 6d82f143dee1add67f64ceca89a7bce7bcf2277a
      https://github.com/llvm/llvm-project/commit/6d82f143dee1add67f64ceca89a7bce7bcf2277a
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
    A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
    A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/performance/use-std-move.rst
    A clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp

  Log Message:
  -----------
  [clang-tidy] New performance linter: performance-use-std-move (#179467)

This linter suggests calls to ``std::move`` when a costly copy would
happen otherwise. It does not try to suggest ``std::move`` when they are
valid but obviously not profitable (e.g. for trivially movable types)

This is a very simple version that only considers terminating basic
blocks. Further work will extend the approach through the control flow
graph.

It has already been used successfully on llvm/lib to submit bugs
#178174,
 #178169, #178176, #178172, #178175, #178180, #178178, #178177, #178179,
 #178173 and #178167, and on the firefox codebase to submit most of the
dependencies of bug https://bugzilla.mozilla.org/show_bug.cgi?id=2012658


  Commit: b8d0bb2ddc77c6f9a856ae90fd1329778c070823
      https://github.com/llvm/llvm-project/commit/b8d0bb2ddc77c6f9a856ae90fd1329778c070823
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [WebKit checkers] Trivial function analysis ignores some nodelete annotation (#183970)

This PR fixes the bug that TrivialFunctionAnalysis can ignore nodelete
annotation set on some but not all function declarations because it does
not check the annotation on prior declarations unlike
alpha.webkit.NoDeleteChecker which checks it on any declaration by
replacing isNoDeleteFunction with NoDeleteChecker's
hasNoDeleteAnnotation.


  Commit: 3270bbf04cbae1d11b6a2283056974b10047094b
      https://github.com/llvm/llvm-project/commit/3270bbf04cbae1d11b6a2283056974b10047094b
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M bolt/runtime/instr.cpp

  Log Message:
  -----------
  [BOLT][instr] Make instrumentation counter reset thread safe (#183186)

Use `GlobalWriteProfileMutex` to synchronize between data reset and
dump. Between static counter reset and increment, we use atomic store
in counter reset - the counter increment sequence inserted within user
code already takes care of thread safety, so we just need to make sure
the counter reset code is also thread safe (no torn write to counter).


  Commit: b4b32e88dde64ffc97fc0265e356c8743695fe0c
      https://github.com/llvm/llvm-project/commit/b4b32e88dde64ffc97fc0265e356c8743695fe0c
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M bolt/runtime/common.h
    M bolt/runtime/instr.cpp

  Log Message:
  -----------
  [BOLT][instr] Disable stderr diagnostic output when targeting Android (#183185)

Disable all stderr diagnostic output on Android since there is typically
no terminal to read diagnostic message. The `noinline`annotation is to
keep same inline decision before and after this change. On AArch64
the `.text` section in instr runtime library is now ~4.8 KB smaller.


  Commit: 14bcb1a0095408cbf04bad4cea984eb9f448de23
      https://github.com/llvm/llvm-project/commit/14bcb1a0095408cbf04bad4cea984eb9f448de23
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryFunction.cpp

  Log Message:
  -----------
  [BOLT] Make sure IOAddressMap exist before lookup (NFC) (#183184)

`BinaryFunction::translateInputToOutputAddress()` contains fallback
logic in case that querying `IOAddressMap` doesn't yield an output
address. Because this function could be called in scenarios where
`IOAddressMap` won't be set up, we should check if the map actually
exists before lookup.


  Commit: 1c3327561977a77aea21956c084d63e0e4fd2860
      https://github.com/llvm/llvm-project/commit/1c3327561977a77aea21956c084d63e0e4fd2860
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td

  Log Message:
  -----------
  [mlir][spirv] Introduce a base class for spirv.TOSA convolution ops (#183751)

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: 265c1f483398e2b8dbbd193258570a16fc4c5e09
      https://github.com/llvm/llvm-project/commit/265c1f483398e2b8dbbd193258570a16fc4c5e09
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/max-interleave-factor-debug.ll

  Log Message:
  -----------
  [LV] Add debug print for TTI.MaxInterleaveFactor (NFC) (#183309)

As its not currently visible in the debug output.

---------

Co-authored-by: Sander de Smalen <sander.desmalen at arm.com>


  Commit: f7b1107bf5641b199340d08f96980cd228755da7
      https://github.com/llvm/llvm-project/commit/f7b1107bf5641b199340d08f96980cd228755da7
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
    M llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
    M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
    M llvm/test/Transforms/LoopVectorize/minmax_reduction.ll

  Log Message:
  -----------
  [IVDescriptors] Remove function FMF attribute check for FP min/max reduction (#183523)

Remove the use of function attributes no-nans-fp-math and
no-signed-zeros-fp-math in FP min/max reduction detection. The required
fast-math flags nnan and nsz should be present on the intrinsic calls,
fcmp and select instructions themselves.


  Commit: ba2e9fbba069bb1a695d545114b193c8367b0546
      https://github.com/llvm/llvm-project/commit/ba2e9fbba069bb1a695d545114b193c8367b0546
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml
    A .github/workflows/lldb-pylint-action.yml
    M .github/workflows/prune-unused-branches.py
    M .github/workflows/upload-release-artifact/action.yml
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/runtime/common.h
    M bolt/runtime/instr.cpp
    A bolt/test/AArch64/bti-long-jmp-ignored-nop.s
    M bolt/test/AArch64/bti-long-jmp-ignored.s
    M bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
    A bolt/test/X86/phdr-load-order.test
    M bolt/test/merge-fdata-bat-no-lbr.test
    M bolt/test/merge-fdata-mixed-bat-no-lbr.test
    M bolt/test/merge-fdata-mixed-mode.test
    M bolt/test/merge-fdata-no-lbr-mode.test
    A bolt/test/merge-fdata-skip-truncated.test
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/MDGenerator.cpp
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/enum-template.mustache
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
    M clang-tools-extra/clang-tidy/abseil/UncheckedStatusOrAccessCheck.cpp
    M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
    M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StdNamespaceModificationCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
    M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
    M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
    M clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
    A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.h
    M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStaticCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
    M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.h
    M clang-tools-extra/clang-tidy/utils/Matchers.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/fold-init-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/redundant-void-arg.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/faster-string-find.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/string-view-conversions.rst
    A clang-tools-extra/docs/clang-tidy/checks/performance/use-std-move.rst
    M clang-tools-extra/include-cleaner/tool/CMakeLists.txt
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/initializer_list
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/memory
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/vector
    M clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp
    M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/casting-through-void.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/fold-init-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-module.cpp
    R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/smart-ptr/initializer_list.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique-default-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.c
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-random-shuffle.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/shrink-to-fit.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace-ignore-implicit-constructors.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-delete.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp
    A clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
    M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
    M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-tidy/LexerUtilsTest.cpp
    A clang/.clang-format-ignore
    M clang/AreaTeamMembers.txt
    M clang/cmake/modules/AddClang.cmake
    M clang/docs/APINotes.rst
    M clang/docs/AddressSanitizer.rst
    M clang/docs/CMakeLists.txt
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ClangIRCleanupAndEHDesign.md
    M clang/docs/LanguageExtensions.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/index.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTDumperUtils.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/NestedNameSpecifierBase.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/CFG.h
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/EntityLinker.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/EntitySummaryEncoding.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/LUSummary.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/Analysis/Scalable/EntityLinker/TUSummaryEncoding.h
    M clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    M clang/include/clang/Analysis/Scalable/Model/EntityId.h
    M clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Model/EntityName.h
    M clang/include/clang/Analysis/Scalable/Model/PrivateFieldNames.def
    M clang/include/clang/Analysis/Scalable/Model/SummaryName.h
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    A clang/include/clang/Analysis/Scalable/Support/ErrorBuilder.h
    A clang/include/clang/Analysis/Scalable/Support/FormatProviders.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    A clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticCommentKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/OffloadArch.h
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    A clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/DependencyScanning/InProcessModuleCache.h
    M clang/include/clang/DependencyScanning/ModuleDepCollector.h
    M clang/include/clang/Driver/Job.h
    A clang/include/clang/Driver/ModulesDriver.h
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/HeaderSearchOptions.h
    M clang/include/clang/Lex/ModuleMap.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    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/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Record.cpp
    M clang/lib/AST/ByteCode/Record.h
    M clang/lib/AST/CommentSema.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/InferAlloc.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftCXXABI.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NestedNameSpecifier.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/EntityLinker/EntityLinker.cpp
    M clang/lib/Analysis/Scalable/Model/BuildNamespace.cpp
    A clang/lib/Analysis/Scalable/Model/EntityId.cpp
    A clang/lib/Analysis/Scalable/Model/EntityLinkage.cpp
    M clang/lib/Analysis/Scalable/Model/EntityName.cpp
    A clang/lib/Analysis/Scalable/Model/SummaryName.cpp
    A clang/lib/Analysis/Scalable/ModelStringConversions.h
    R clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummary.cpp
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummaryEncoding.cpp
    A clang/lib/Analysis/Scalable/Support/ErrorBuilder.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/Hexagon.cpp
    M clang/lib/Basic/Targets/Hexagon.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.cpp
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    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/CIRGenCUDANV.cpp
    M clang/lib/CIR/CodeGen/CIRGenCUDARuntime.cpp
    M clang/lib/CIR/CodeGen/CIRGenCUDARuntime.h
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/lib/CIR/CodeGen/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/lib/CIR/Dialect/Transforms/IdiomRecognizer.cpp
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenCLRuntime.cpp
    M clang/lib/CodeGen/CGOpenCLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/DependencyScanning/InProcessModuleCache.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/CMakeLists.txt
    M clang/lib/Driver/Driver.cpp
    A clang/lib/Driver/ModulesDriver.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Interpreter/IncrementalParser.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/Pragma.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/test/APINotes/Inputs/Headers/Fields.apinotes
    M clang/test/APINotes/Inputs/Headers/Fields.h
    M clang/test/APINotes/fields.cpp
    M clang/test/AST/ByteCode/codegen-constexpr-unknown.cpp
    M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
    M clang/test/AST/HLSL/WaveSize.hlsl
    M clang/test/AST/HLSL/matrix-member-access-scalar.hlsl
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/auto-obj-dtors-cfg-output.cpp
    A clang/test/Analysis/exprwithcleanups-lifetime-marker-cfg.cpp
    M clang/test/Analysis/malloc-annotations.c
    M clang/test/Analysis/misc-ps-region-store.cpp
    A clang/test/Analysis/unconditional-va_arg.c
    M clang/test/Analysis/z3-unarysymexpr.c
    R clang/test/CIR/CodeGen/address-of.cpp
    M clang/test/CIR/CodeGen/address-space.c
    M clang/test/CIR/CodeGen/alloc-size.c
    A clang/test/CIR/CodeGen/arg-attrs.cpp
    M clang/test/CIR/CodeGen/array-ctor.cpp
    M clang/test/CIR/CodeGen/array-dtor.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/asm-label-inline-builtins.c
    M clang/test/CIR/CodeGen/assign-operator.cpp
    A clang/test/CIR/CodeGen/assume-attr.cpp
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/base-to-derived.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/binop.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    R clang/test/CIR/CodeGen/builtin-bit-cast.cpp
    R clang/test/CIR/CodeGen/builtin-floating-point.c
    R clang/test/CIR/CodeGen/builtin-memchr.c
    R clang/test/CIR/CodeGen/builtins-elementwise.c
    A clang/test/CIR/CodeGen/call-no-decl.c
    M clang/test/CIR/CodeGen/call-via-class-member-funcptr.cpp
    M clang/test/CIR/CodeGen/call.c
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    A clang/test/CIR/CodeGen/cleanup-scope-tmp-with-exception.cpp
    A clang/test/CIR/CodeGen/cleanup-scope-tmp.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/cmp.cpp
    M clang/test/CIR/CodeGen/complex.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/ctor-alias.cpp
    M clang/test/CIR/CodeGen/ctor.cpp
    M clang/test/CIR/CodeGen/cxx-conversion-operators.cpp
    M clang/test/CIR/CodeGen/cxx-default-init.cpp
    M clang/test/CIR/CodeGen/cxx-rewritten-binary-operator.cpp
    M clang/test/CIR/CodeGen/cxx-special-member-attr.cpp
    M clang/test/CIR/CodeGen/defaultarg.cpp
    M clang/test/CIR/CodeGen/delegating-ctor.cpp
    M clang/test/CIR/CodeGen/delete.cpp
    M clang/test/CIR/CodeGen/derived-to-base.cpp
    M clang/test/CIR/CodeGen/destructors.cpp
    M clang/test/CIR/CodeGen/dtor-alias.cpp
    M clang/test/CIR/CodeGen/dtors.cpp
    M clang/test/CIR/CodeGen/forrange.cpp
    M clang/test/CIR/CodeGen/function-to-pointer-decay.c
    M clang/test/CIR/CodeGen/global-array-dtor.cpp
    M clang/test/CIR/CodeGen/global-constant-storage.cpp
    M clang/test/CIR/CodeGen/global-init.cpp
    M clang/test/CIR/CodeGen/goto.cpp
    M clang/test/CIR/CodeGen/if.cpp
    A clang/test/CIR/CodeGen/implicit-value-init-expr.cpp
    M clang/test/CIR/CodeGen/inline-cxx-func.cpp
    M clang/test/CIR/CodeGen/kr-func-promote.c
    M clang/test/CIR/CodeGen/label-values.c
    M clang/test/CIR/CodeGen/label.c
    M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/member-functions.cpp
    M clang/test/CIR/CodeGen/multi-vtable.cpp
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/no-prototype.c
    M clang/test/CIR/CodeGen/nrvo.cpp
    R clang/test/CIR/CodeGen/object-size.c
    R clang/test/CIR/CodeGen/object-size.cpp
    R clang/test/CIR/CodeGen/offset-of.cpp
    M clang/test/CIR/CodeGen/pack-indexing.cpp
    M clang/test/CIR/CodeGen/placement-new.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    R clang/test/CIR/CodeGen/pred-info-builtins.c
    M clang/test/CIR/CodeGen/size-of-vla.cpp
    M clang/test/CIR/CodeGen/static-local.cpp
    M clang/test/CIR/CodeGen/stmt-expr.cpp
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.c
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/ternary.cpp
    M clang/test/CIR/CodeGen/trivial-ctor-const-init.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp
    M clang/test/CIR/CodeGen/vbase.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp
    M clang/test/CIR/CodeGen/virtual-destructor-calls.cpp
    M clang/test/CIR/CodeGen/virtual-function-calls.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGen/vtt.cpp
    M clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceIntrin.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceMinMaxIntrin.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512fp16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vbmi2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlbf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlfp16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c
    A clang/test/CIR/CodeGenBuiltins/builtin-address-of.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-bit-cast.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-bit.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-call.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
    M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
    A clang/test/CIR/CodeGenBuiltins/builtin-inline.c
    A clang/test/CIR/CodeGenBuiltins/builtin-memchr.c
    A clang/test/CIR/CodeGenBuiltins/builtin-new-delete.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-object-size.c
    A clang/test/CIR/CodeGenBuiltins/builtin-object-size.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-offset-of.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-prefetch.c
    A clang/test/CIR/CodeGenBuiltins/builtin-printf.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_bit.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_inline.c
    R clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
    R clang/test/CIR/CodeGenBuiltins/builtin_prefetch.c
    R clang/test/CIR/CodeGenBuiltins/builtin_printf.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    M clang/test/CIR/CodeGenBuiltins/builtins-floating-point.c
    A clang/test/CIR/CodeGenBuiltins/builtins-pred-info.c
    M clang/test/CIR/CodeGenCUDA/kernel-call.cu
    M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
    A clang/test/CIR/CodeGenCXX/global-refs.cpp
    A clang/test/CIR/CodeGenCXX/lvalue-nttp.cpp
    A clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp
    A clang/test/CIR/CodeGenCXX/sizeof-pack.cpp
    M clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl
    M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceptr.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
    M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
    M clang/test/CIR/CodeGenOpenMP/parallel.c
    A clang/test/CIR/IR/address-space.cir
    M clang/test/CIR/IR/catch-param.cir
    M clang/test/CIR/IR/global-var-linkage.cir
    M clang/test/CIR/IR/invalid-addrspace.cir
    M clang/test/CIR/IR/invalid-eh-flat.cir
    A clang/test/CIR/IR/invalid-linkage.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/try-catch.cir
    M clang/test/CIR/Lowering/array.cpp
    M clang/test/CIR/Lowering/basic.cpp
    A clang/test/CIR/Lowering/global-var-linkage.cir
    A clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir
    A clang/test/CIR/Transforms/flatten-try-op.cir
    A clang/test/CIR/Transforms/idiom-recognizer.cpp
    M clang/test/CXX/drs/cwg2947.cpp
    M clang/test/CXX/drs/cwg29xx.cpp
    A clang/test/ClangScanDeps/modules-cycle-deadlock.c
    A clang/test/ClangScanDeps/modules-symlink-dir-from-module-incremental.c
    M clang/test/CodeCompletion/included-files.cpp
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4us_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vv.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vx.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4us_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/non-overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/non-policy/overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/non-overloaded/vqdotus_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdot_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdot_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotsu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotsu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotu_vv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotu_vx.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvqdotq/policy/overloaded/vqdotus_vx.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/aix-builtin-cpu-supports.c
    M clang/test/CodeGen/alloc-token-lower.c
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    M clang/test/CodeGen/attr-counted-by-pr88931.c
    M clang/test/CodeGen/builtin-counted-by-ref.c
    M clang/test/CodeGen/builtins-reduction-math.c
    A clang/test/CodeGen/c23-constexpr-member-access.c
    A clang/test/CodeGen/cfi-icall-with-abi-tag.cpp
    M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
    M clang/test/CodeGen/distributed-thin-lto/cfi.ll
    A clang/test/CodeGen/prefalign.c
    M clang/test/CodeGen/thinlto-funcattr-prop.ll
    M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
    M clang/test/CodeGenCUDA/const-var.cu
    M clang/test/CodeGenCUDA/constexpr-variables.cu
    A clang/test/CodeGenCUDA/device-const-var-linkage.cu
    M clang/test/CodeGenCUDA/host-used-device-var.cu
    M clang/test/CodeGenCXX/alloc-token-pointer.cpp
    M clang/test/CodeGenCXX/mangle-lambdas.cpp
    M clang/test/CodeGenCXX/member-alignment.cpp
    M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
    M clang/test/CodeGenCXX/vtable-assume-load.cpp
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-cvt-f16.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-wmma-f16.hip
    A clang/test/CodeGenHIP/debug-info-language-hip.hip
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenObjC/aarch64-sve-types.m
    A clang/test/CodeGenObjC/block-layout-section.m
    R clang/test/CodeGenOpenCL/.gdb_history
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-tensor-load-store.cl
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
    A clang/test/DebugInfo/CXX/callsite-base.cpp
    A clang/test/DebugInfo/CXX/callsite-derived.cpp
    A clang/test/DebugInfo/CXX/callsite-edges.cpp
    M clang/test/DebugInfo/CXX/fn-template.cpp
    A clang/test/DebugInfo/CXX/ptrauth-member-function-pointer-debuglocs.cpp
    M clang/test/DebugInfo/CXX/vtable-external.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
    M clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp
    A clang/test/Driver/HLSL/conversion-warning-flags.hlsl
    R clang/test/Driver/HLSL/wconversion.hlsl
    R clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/asanrtl.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/hip.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/ockl.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_abi_version_600.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_isa_version_900.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_wavefrontsize64_off.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/oclc_wavefrontsize64_on.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/ocml.bc
    A clang/test/Driver/Inputs/rocm-no-math-opt-libs/amdgcn/bitcode/opencl.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/baremetal.cpp
    M clang/test/Driver/cl-offload.cu
    M clang/test/Driver/cl-options.c
    A clang/test/Driver/crash-report-no-integrated-cc1.c
    M clang/test/Driver/cuda-arch-translation.cu
    M clang/test/Driver/darwin-header-search-libcxx-2.cpp
    M clang/test/Driver/debug-options.c
    M clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip
    M clang/test/Driver/fsanitize-minimal-runtime.c
    M clang/test/Driver/hip-code-object-version.hip
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/hip-gz-options.hip
    M clang/test/Driver/hip-macros.hip
    M clang/test/Driver/hip-offload-arch.hip
    M clang/test/Driver/hip-options.hip
    M clang/test/Driver/hip-sanitize-options.hip
    M clang/test/Driver/hip-save-temps.hip
    M clang/test/Driver/hip-temps-linux.hip
    M clang/test/Driver/hip-temps-windows.hip
    M clang/test/Driver/hip-thinlto.hip
    M clang/test/Driver/hip-toolchain-device-only.hip
    M clang/test/Driver/hip-toolchain-mllvm.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hip-toolchain-opt.hip
    A clang/test/Driver/modules-driver-malformed-manifest.cpp
    A clang/test/Driver/modules-driver-manifest-input-args.cpp
    A clang/test/Driver/modules-driver-manifest-not-found.cpp
    M clang/test/Driver/no-gpu-bundle-respected.hip
    A clang/test/Driver/prefalign.c
    A clang/test/Driver/print-enabled-extensions/riscv-xt-c910v2.c
    A clang/test/Driver/print-enabled-extensions/riscv-xt-c920v2.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    A clang/test/Driver/reloc-section-sym.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Driver/rocm-detect-lib-llvm.hip
    M clang/test/Driver/rocm-device-libs.cl
    A clang/test/Driver/spirv-lto.c
    M clang/test/Driver/spirv-openmp-toolchain.c
    A clang/test/Driver/sycl-offload-jit-xarch.cpp
    M clang/test/FixIt/fixit-pragma-attribute.cpp
    A clang/test/Index/cxx17-switch-with-initializer.cpp
    A clang/test/Index/index-auto.cpp
    A clang/test/Interpreter/incremental-c-implicit-error.c
    A clang/test/Interpreter/incremental-c-implicit-undo.c
    A clang/test/Layout/ms-x86-bitfields-overflow.c
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    A clang/test/Misc/cc1as-reloc-section-sym.s
    M clang/test/Misc/nvptx.languageOptsOpenCL.cl
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    A clang/test/Modules/implicit-cycle-deadlock.c
    A clang/test/Modules/lazy-by-header-extern.c
    A clang/test/Modules/lazy-by-header-lookup.c
    A clang/test/Modules/lazy-by-header-nested.c
    A clang/test/Modules/lazy-by-header-private.c
    A clang/test/Modules/lazy-by-header-umbrella-dir.c
    A clang/test/Modules/lazy-by-header-umbrella-header.c
    M clang/test/Modules/lazy-by-name-lookup.c
    A clang/test/Modules/pr178893.cppm
    M clang/test/OpenMP/amdgcn-attributes.cpp
    M clang/test/OpenMP/cancel_codegen.cpp
    M clang/test/OpenMP/irbuilder_nested_openmp_parallel_empty.c
    M clang/test/OpenMP/irbuilder_nested_parallel_for.c
    M clang/test/OpenMP/nested_loop_codegen.cpp
    A clang/test/OpenMP/num_teams_clause_ast.cpp
    M clang/test/OpenMP/parallel_codegen.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    A clang/test/OpenMP/target_update_strided_ptr_variable_count_and_stride_messages.c
    A clang/test/OpenMP/target_update_strided_ptr_variable_count_messages.c
    A clang/test/OpenMP/target_update_strided_ptr_variable_stride_messages.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_multiple_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_multiple_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_partial_messages_from.c
    A clang/test/OpenMP/target_update_strided_struct_ptr_partial_messages_to.c
    A clang/test/OpenMP/target_update_strided_struct_variable_count_and_stride_messages.c
    A clang/test/OpenMP/target_update_variable_count_and_stride_messages.c
    M clang/test/OpenMP/taskgroup_codegen.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp
    M clang/test/Parser/pragma-attribute.cpp
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/ParserOpenACC/parse-constructs.cpp
    M clang/test/Preprocessor/arm64e.c
    M clang/test/Preprocessor/hexagon-predefines.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/attr-overflow-behavior-format-strings.c
    M clang/test/Sema/attr-overflow-behavior-templates.cpp
    M clang/test/Sema/attr-overflow-behavior.c
    M clang/test/Sema/attr-overflow-behavior.cpp
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/builtins-reduction-math.c
    A clang/test/Sema/constexpr-member-access.c
    M clang/test/Sema/format-strings.c
    M clang/test/Sema/nonnull.c
    M clang/test/Sema/sugar-common-types.c
    A clang/test/Sema/type-dependent-attrs.cpp
    M clang/test/Sema/unroll-template-value-crash.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-invalidations.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    A clang/test/SemaCXX/GH175783.cpp
    A clang/test/SemaCXX/builtin_templates_invalid_parameters.cpp
    M clang/test/SemaCXX/builtins-elementwise-math.cpp
    M clang/test/SemaCXX/constexpr-x86-avx-builtins.cpp
    M clang/test/SemaCXX/constexpr-x86-avx512f-builtins.cpp
    A clang/test/SemaCXX/constexpr-x86-avx512fp16-builtins.cpp
    M clang/test/SemaCXX/constexpr-x86-sse2-builtins.cpp
    A clang/test/SemaCXX/coroutine-inherited-allocator.cpp
    A clang/test/SemaCXX/gh183505.cpp
    M clang/test/SemaCXX/init-priority-attr.cpp
    M clang/test/SemaCXX/return-noreturn.cpp
    A clang/test/SemaCXX/typeid-incomplete-local-crash.cpp
    M clang/test/SemaCXX/vector.cpp
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
    M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
    M clang/test/SemaHLSL/Language/ImpCastAddrSpace.hlsl
    M clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitLists.hlsl
    A clang/test/SemaHLSL/Language/MatrixSplatCasts.hlsl
    M clang/test/SemaHLSL/Language/OutputParameters.hlsl
    M clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
    M clang/test/SemaHLSL/MatrixElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/ScalarOverloadResolution.hlsl
    M clang/test/SemaHLSL/SplatOverloadResolution.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes_no_16bit.hlsl
    M clang/test/SemaHLSL/VectorElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/matrix-member-access-errors.hlsl
    A clang/test/SemaHLSL/no-conversion-warnings.hlsl
    M clang/test/SemaHLSL/parameter_modifiers.hlsl
    M clang/test/SemaHLSL/standard_conversion_sequences.hlsl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
    M clang/test/SemaOpenCL/extension-version.cl
    A clang/test/SemaTemplate/GH181062.cpp
    A clang/test/SemaTemplate/GH183075.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx11.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    A clang/test/TableGen/builtin-docs.td
    A clang/test/Tooling/serialize-diagnostics.cpp
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/tools/driver/driver.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.h
    A clang/unittests/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
    M clang/unittests/Analysis/Scalable/BuildNamespaceTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    M clang/unittests/Analysis/Scalable/EntityIdTest.cpp
    M clang/unittests/Analysis/Scalable/EntityLinkageTest.cpp
    A clang/unittests/Analysis/Scalable/EntityLinkerTest.cpp
    M clang/unittests/Analysis/Scalable/EntityNameTest.cpp
    A clang/unittests/Analysis/Scalable/ErrorBuilderTest.cpp
    A clang/unittests/Analysis/Scalable/ModelStringConversionsTest.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
    R clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
    M clang/unittests/Analysis/Scalable/SummaryNameTest.cpp
    M clang/unittests/Analysis/Scalable/TestFixture.cpp
    M clang/unittests/Analysis/Scalable/TestFixture.h
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Tooling/ToolingTest.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/asan/asan_rtl_x86_64.S
    M compiler-rt/lib/gwp_asan/CMakeLists.txt
    M compiler-rt/lib/msan/tests/CMakeLists.txt
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cpp
    M compiler-rt/lib/sanitizer_common/weak_symbols.txt
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/report.cpp
    M compiler-rt/lib/scudo/standalone/report.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    M compiler-rt/lib/scudo/standalone/wrappers_c_checks.h
    M compiler-rt/lib/tsan/go/buildgo.sh
    M compiler-rt/lib/ubsan/ubsan_diag.h
    M compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
    M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
    M compiler-rt/test/builtins/CMakeLists.txt
    M compiler-rt/test/builtins/Unit/divsf3_test.c
    M compiler-rt/test/builtins/Unit/mulsf3_test.c
    M compiler-rt/test/fuzzer/reduce_inputs.test
    M compiler-rt/test/safestack/overflow.c
    A cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-crash.cpp
    A cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-dwarf.cpp
    M flang-rt/CMakeLists.txt
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/include/flang-rt/runtime/environment.h
    M flang-rt/include/flang-rt/runtime/lock.h
    M flang-rt/include/flang-rt/runtime/memory.h
    M flang-rt/include/flang-rt/runtime/tools.h
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/stream.cpp
    M flang-rt/lib/runtime/CMakeLists.txt
    A flang-rt/lib/runtime/array.h
    M flang-rt/lib/runtime/character.cpp
    M flang-rt/lib/runtime/descriptor-io.cpp
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/environment.cpp
    A flang-rt/lib/runtime/io-api-gpu.cpp
    A flang-rt/lib/runtime/io-api-gpu.h
    A flang-rt/lib/runtime/io-api-server.cpp
    M flang-rt/lib/runtime/io-api.cpp
    M flang-rt/lib/runtime/iostat.cpp
    M flang-rt/lib/runtime/stop.cpp
    M flang-rt/lib/runtime/terminator.cpp
    M flang-rt/lib/runtime/transformational.cpp
    M flang-rt/lib/runtime/unit.cpp
    M flang-rt/lib/runtime/unit.h
    M flang-rt/test/Driver/exec.f90
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/CharacterTest.cpp
    M flang/docs/Extensions.md
    M flang/docs/GettingInvolved.md
    M flang/docs/Intrinsics.md
    A flang/docs/MeetingNotes/2026/2026-02-25.md
    M flang/docs/OpenMP-declare-target.md
    M flang/docs/RuntimeEnvironment.md
    M flang/include/flang/Common/api-attrs.h
    M flang/include/flang/Common/format.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Lower/CUDA.h
    M flang/include/flang/Lower/OpenMP/Clauses.h
    M flang/include/flang/Optimizer/Builder/CUDAIntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Character.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/CUFDialect.td
    M flang/include/flang/Optimizer/Dialect/FIRAttr.td
    M flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.td
    M flang/include/flang/Optimizer/Dialect/FIRDialect.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/include/flang/Optimizer/Passes/Pipelines.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/CUDA/stream.h
    M flang/include/flang/Runtime/character.h
    M flang/include/flang/Runtime/io-api.h
    M flang/include/flang/Runtime/iostat-consts.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CUDA.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/Support/Utils.cpp
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Character.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-io.h
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/module/cuda_runtime_api.f90
    A flang/test/Driver/grecord-command-line.f90
    M flang/test/Driver/intrinsic-module-path.f90
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Fir/mem2reg.mlir
    M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    M flang/test/Lower/CUDA/cuda-default-stream.cuf
    M flang/test/Lower/HLFIR/goto-do-body.f90
    A flang/test/Lower/HLFIR/recursive-user-procedure.f90
    M flang/test/Lower/Intrinsics/abs.f90
    M flang/test/Lower/Intrinsics/achar.f90
    M flang/test/Lower/Intrinsics/acospi.f90
    M flang/test/Lower/Intrinsics/adjustl.f90
    A flang/test/Lower/Intrinsics/rtc.f90
    A flang/test/Lower/Intrinsics/tokenize.f90
    A flang/test/Lower/OpenMP/Todo/depth-clause.f90
    A flang/test/Lower/OpenMP/block-use-predetermined-privatization.f90
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    A flang/test/Lower/OpenMP/declare-reduction-intrinsic-op.f90
    M flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/OpenMP/declare-target-func-and-subr.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap-enter.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-tarop-cap.f90
    A flang/test/Lower/OpenMP/ordered-simd.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/wsloop-linear.f90
    M flang/test/Lower/forall/forall-allocatable-2.f90
    M flang/test/Lower/forall/forall-allocatable.f90
    M flang/test/Lower/forall/forall-array.f90
    M flang/test/Lower/forall/forall-construct-2.f90
    M flang/test/Lower/forall/forall-construct-3.f90
    M flang/test/Lower/forall/forall-construct-4.f90
    M flang/test/Lower/forall/forall-construct.f90
    M flang/test/Lower/forall/forall-ranked.f90
    M flang/test/Lower/forall/forall-slice.f90
    M flang/test/Lower/forall/forall-stmt.f90
    M flang/test/Lower/forall/forall-where-2.f90
    M flang/test/Lower/forall/forall-where.f90
    M flang/test/Lower/forall/test9.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated-globals.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/identical-block-merge-disable.f90
    M flang/test/Lower/implicit-call-mismatch.f90
    M flang/test/Lower/implicit-interface.f90
    M flang/test/Lower/integer-operations.f90
    M flang/test/Lower/intentout-deallocate.f90
    M flang/test/Lower/volatile3.f90
    A flang/test/Parser/OpenMP/depth-clause.f90
    A flang/test/Parser/bug2280.f90
    A flang/test/Semantics/Inputs/modfile83.mod
    A flang/test/Semantics/OpenMP/depth-clause.f90
    M flang/test/Semantics/associated.f90
    A flang/test/Semantics/bug2273.f90
    A flang/test/Semantics/bug2292.f90
    A flang/test/Semantics/bug2295.f90
    M flang/test/Semantics/call01.f90
    M flang/test/Semantics/call03.f90
    M flang/test/Semantics/io08.f90
    A flang/test/Semantics/io16.f90
    A flang/test/Semantics/modfile83.f90
    A flang/test/Semantics/tokenize-errors.f90
    A flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
    M flang/test/Transforms/FIRToMemRef/no-declare.mlir
    A flang/test/Transforms/debug-dwarf-debug-flags.fir
    A flang/test/Transforms/debug-fn-attr.fir
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    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/gpu/amdgpu/entrypoints.txt
    M libc/config/gpu/nvptx/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/config/windows/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/hdr/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/include/llvm-libc-macros/float16-macros.h
    M libc/include/llvm-libc-types/struct_stat.h
    M libc/shared/math.h
    A libc/shared/math/acospif.h
    M libc/shared/math/asinf16.h
    M libc/shared/math/asinhf16.h
    A libc/shared/math/asinpif.h
    A libc/shared/math/asinpif16.h
    M libc/shared/math/atanf16.h
    M libc/shared/math/atanhf16.h
    A libc/shared/math/bf16addl.h
    A libc/shared/math/bf16fmaf128.h
    A libc/shared/math/bf16mul.h
    A libc/shared/math/bf16mulf.h
    A libc/shared/math/bf16mulf128.h
    A libc/shared/math/bf16mull.h
    A libc/shared/math/bf16sub.h
    A libc/shared/math/bf16subf.h
    A libc/shared/math/bf16subf128.h
    M libc/shared/math/ceil.h
    M libc/shared/math/ceilbf16.h
    M libc/shared/math/ceilf.h
    M libc/shared/math/ceilf128.h
    M libc/shared/math/ceilf16.h
    M libc/shared/math/ceill.h
    M libc/shared/math/cosf16.h
    M libc/shared/math/coshf16.h
    M libc/shared/math/cospif16.h
    M libc/shared/math/dfmal.h
    M libc/shared/math/exp10f16.h
    M libc/shared/math/exp10m1f16.h
    M libc/shared/math/exp2f16.h
    M libc/shared/math/exp2m1f16.h
    M libc/shared/math/expf16.h
    M libc/shared/math/expm1f16.h
    A libc/shared/math/f16div.h
    A libc/shared/math/f16divf.h
    A libc/shared/math/f16divf128.h
    A libc/shared/math/f16divl.h
    M libc/shared/math/f16fma.h
    M libc/shared/math/f16fmaf.h
    M libc/shared/math/f16fmaf128.h
    M libc/shared/math/f16fmal.h
    A libc/shared/math/f16mul.h
    A libc/shared/math/f16mulf.h
    A libc/shared/math/f16mulf128.h
    A libc/shared/math/f16mull.h
    A libc/shared/math/f16sqrtf128.h
    M libc/shared/math/f16sqrtl.h
    A libc/shared/math/f16sub.h
    A libc/shared/math/f16subf.h
    A libc/shared/math/f16subf128.h
    A libc/shared/math/f16subl.h
    M libc/shared/math/fadd.h
    M libc/shared/math/faddf128.h
    M libc/shared/math/faddl.h
    A libc/shared/math/fdim.h
    A libc/shared/math/fdimbf16.h
    A libc/shared/math/fdimf.h
    A libc/shared/math/fdimf128.h
    A libc/shared/math/fdimf16.h
    A libc/shared/math/fdiml.h
    A libc/shared/math/floor.h
    A libc/shared/math/floorbf16.h
    A libc/shared/math/floorf.h
    A libc/shared/math/floorf128.h
    A libc/shared/math/floorf16.h
    A libc/shared/math/floorl.h
    M libc/shared/math/fmax.h
    M libc/shared/math/fmaxbf16.h
    M libc/shared/math/fmaxf.h
    M libc/shared/math/fmaxf128.h
    M libc/shared/math/fmaxf16.h
    M libc/shared/math/fmaxl.h
    M libc/shared/math/frexpf16.h
    M libc/shared/math/fsqrtf128.h
    A libc/shared/math/getpayload.h
    A libc/shared/math/getpayloadbf16.h
    A libc/shared/math/getpayloadf.h
    A libc/shared/math/getpayloadf128.h
    A libc/shared/math/getpayloadf16.h
    A libc/shared/math/getpayloadl.h
    M libc/shared/math/hypotf.h
    M libc/shared/math/hypotf16.h
    M libc/shared/math/ilogbf.h
    M libc/shared/math/ilogbf16.h
    M libc/shared/math/ldexpf16.h
    M libc/shared/math/log.h
    M libc/shared/math/log10.h
    M libc/shared/math/log1p.h
    M libc/shared/math/log2.h
    M libc/shared/math/logb.h
    M libc/shared/math/logbf.h
    M libc/shared/math/logbf128.h
    M libc/shared/math/logbf16.h
    M libc/shared/math/logf16.h
    A libc/shared/math/nextafter.h
    A libc/shared/math/nextafterbf16.h
    A libc/shared/math/nextafterf.h
    A libc/shared/math/nextafterf128.h
    A libc/shared/math/nextafterf16.h
    A libc/shared/math/nextafterl.h
    A libc/shared/math/nextdown.h
    A libc/shared/math/nextdownbf16.h
    A libc/shared/math/nextdownf.h
    A libc/shared/math/nextdownf128.h
    A libc/shared/math/nextdownf16.h
    A libc/shared/math/nextdownl.h
    A libc/shared/math/nexttoward.h
    A libc/shared/math/nexttowardbf16.h
    A libc/shared/math/nexttowardf.h
    A libc/shared/math/nexttowardf16.h
    A libc/shared/math/nexttowardl.h
    A libc/shared/math/nextup.h
    A libc/shared/math/nextupbf16.h
    A libc/shared/math/nextupf.h
    A libc/shared/math/nextupf128.h
    A libc/shared/math/nextupf16.h
    A libc/shared/math/nextupl.h
    A libc/shared/math/setpayload.h
    A libc/shared/math/setpayloadbf16.h
    A libc/shared/math/setpayloadf.h
    A libc/shared/math/setpayloadf128.h
    A libc/shared/math/setpayloadf16.h
    A libc/shared/math/setpayloadl.h
    A libc/shared/math/setpayloadsig.h
    A libc/shared/math/setpayloadsigbf16.h
    A libc/shared/math/setpayloadsigf.h
    A libc/shared/math/setpayloadsigf128.h
    A libc/shared/math/setpayloadsigf16.h
    A libc/shared/math/setpayloadsigl.h
    M libc/shared/math/sinhf16.h
    A libc/shared/math/tanpif16.h
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_util.h
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/FPUtil/bfloat16.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/RPC/rpc_server.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/acospif.h
    A libc/src/__support/math/asinpif.h
    A libc/src/__support/math/asinpif16.h
    M libc/src/__support/math/atan2f128.h
    A libc/src/__support/math/bf16addl.h
    A libc/src/__support/math/bf16fmaf128.h
    A libc/src/__support/math/bf16mul.h
    A libc/src/__support/math/bf16mulf.h
    A libc/src/__support/math/bf16mulf128.h
    A libc/src/__support/math/bf16mull.h
    A libc/src/__support/math/bf16sub.h
    A libc/src/__support/math/bf16subf.h
    A libc/src/__support/math/bf16subf128.h
    A libc/src/__support/math/f16div.h
    A libc/src/__support/math/f16divf.h
    A libc/src/__support/math/f16divf128.h
    A libc/src/__support/math/f16divl.h
    A libc/src/__support/math/f16mul.h
    A libc/src/__support/math/f16mulf.h
    A libc/src/__support/math/f16mulf128.h
    A libc/src/__support/math/f16mull.h
    A libc/src/__support/math/f16sqrtf128.h
    A libc/src/__support/math/f16sub.h
    A libc/src/__support/math/f16subf.h
    A libc/src/__support/math/f16subf128.h
    A libc/src/__support/math/f16subl.h
    A libc/src/__support/math/fdim.h
    A libc/src/__support/math/fdimbf16.h
    A libc/src/__support/math/fdimf.h
    A libc/src/__support/math/fdimf128.h
    A libc/src/__support/math/fdimf16.h
    A libc/src/__support/math/fdiml.h
    A libc/src/__support/math/floor.h
    A libc/src/__support/math/floorbf16.h
    A libc/src/__support/math/floorf.h
    A libc/src/__support/math/floorf128.h
    A libc/src/__support/math/floorf16.h
    A libc/src/__support/math/floorl.h
    A libc/src/__support/math/getpayload.h
    A libc/src/__support/math/getpayloadbf16.h
    A libc/src/__support/math/getpayloadf.h
    A libc/src/__support/math/getpayloadf128.h
    A libc/src/__support/math/getpayloadf16.h
    A libc/src/__support/math/getpayloadl.h
    M libc/src/__support/math/inv_trigf_utils.h
    A libc/src/__support/math/nextafter.h
    A libc/src/__support/math/nextafterbf16.h
    A libc/src/__support/math/nextafterf.h
    A libc/src/__support/math/nextafterf128.h
    A libc/src/__support/math/nextafterf16.h
    A libc/src/__support/math/nextafterl.h
    A libc/src/__support/math/nextdown.h
    A libc/src/__support/math/nextdownbf16.h
    A libc/src/__support/math/nextdownf.h
    A libc/src/__support/math/nextdownf128.h
    A libc/src/__support/math/nextdownf16.h
    A libc/src/__support/math/nextdownl.h
    A libc/src/__support/math/nexttoward.h
    A libc/src/__support/math/nexttowardbf16.h
    A libc/src/__support/math/nexttowardf.h
    A libc/src/__support/math/nexttowardf16.h
    A libc/src/__support/math/nexttowardl.h
    A libc/src/__support/math/nextup.h
    A libc/src/__support/math/nextupbf16.h
    A libc/src/__support/math/nextupf.h
    A libc/src/__support/math/nextupf128.h
    A libc/src/__support/math/nextupf16.h
    A libc/src/__support/math/nextupl.h
    A libc/src/__support/math/setpayload.h
    A libc/src/__support/math/setpayloadbf16.h
    A libc/src/__support/math/setpayloadf.h
    A libc/src/__support/math/setpayloadf128.h
    A libc/src/__support/math/setpayloadf16.h
    A libc/src/__support/math/setpayloadl.h
    A libc/src/__support/math/setpayloadsig.h
    A libc/src/__support/math/setpayloadsigbf16.h
    A libc/src/__support/math/setpayloadsigf.h
    A libc/src/__support/math/setpayloadsigf128.h
    A libc/src/__support/math/setpayloadsigf16.h
    A libc/src/__support/math/setpayloadsigl.h
    A libc/src/__support/math/tanpif16.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/acospif.h
    A libc/src/math/asinpif.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/acospif.cpp
    A libc/src/math/generic/asinpif.cpp
    M libc/src/math/generic/asinpif16.cpp
    M libc/src/math/generic/atan2l.cpp
    M libc/src/math/generic/bf16addl.cpp
    M libc/src/math/generic/bf16fmaf128.cpp
    M libc/src/math/generic/bf16mul.cpp
    M libc/src/math/generic/bf16mulf.cpp
    M libc/src/math/generic/bf16mulf128.cpp
    M libc/src/math/generic/bf16mull.cpp
    M libc/src/math/generic/bf16sub.cpp
    M libc/src/math/generic/bf16subf.cpp
    M libc/src/math/generic/bf16subf128.cpp
    M libc/src/math/generic/f16div.cpp
    M libc/src/math/generic/f16divf.cpp
    M libc/src/math/generic/f16divf128.cpp
    M libc/src/math/generic/f16divl.cpp
    M libc/src/math/generic/f16mul.cpp
    M libc/src/math/generic/f16mulf.cpp
    M libc/src/math/generic/f16mulf128.cpp
    M libc/src/math/generic/f16mull.cpp
    M libc/src/math/generic/f16sqrtf128.cpp
    M libc/src/math/generic/f16sub.cpp
    M libc/src/math/generic/f16subf.cpp
    M libc/src/math/generic/f16subf128.cpp
    M libc/src/math/generic/f16subl.cpp
    M libc/src/math/generic/fdim.cpp
    M libc/src/math/generic/fdimbf16.cpp
    M libc/src/math/generic/fdimf.cpp
    M libc/src/math/generic/fdimf128.cpp
    M libc/src/math/generic/fdimf16.cpp
    M libc/src/math/generic/fdiml.cpp
    M libc/src/math/generic/floor.cpp
    M libc/src/math/generic/floorbf16.cpp
    M libc/src/math/generic/floorf.cpp
    M libc/src/math/generic/floorf128.cpp
    M libc/src/math/generic/floorf16.cpp
    M libc/src/math/generic/floorl.cpp
    M libc/src/math/generic/getpayload.cpp
    M libc/src/math/generic/getpayloadbf16.cpp
    M libc/src/math/generic/getpayloadf.cpp
    M libc/src/math/generic/getpayloadf128.cpp
    M libc/src/math/generic/getpayloadf16.cpp
    M libc/src/math/generic/getpayloadl.cpp
    M libc/src/math/generic/nextafter.cpp
    M libc/src/math/generic/nextafterbf16.cpp
    M libc/src/math/generic/nextafterf.cpp
    M libc/src/math/generic/nextafterf128.cpp
    M libc/src/math/generic/nextafterf16.cpp
    M libc/src/math/generic/nextafterl.cpp
    M libc/src/math/generic/nextdown.cpp
    M libc/src/math/generic/nextdownbf16.cpp
    M libc/src/math/generic/nextdownf.cpp
    M libc/src/math/generic/nextdownf128.cpp
    M libc/src/math/generic/nextdownf16.cpp
    M libc/src/math/generic/nextdownl.cpp
    M libc/src/math/generic/nexttoward.cpp
    M libc/src/math/generic/nexttowardbf16.cpp
    M libc/src/math/generic/nexttowardf.cpp
    M libc/src/math/generic/nexttowardf16.cpp
    M libc/src/math/generic/nexttowardl.cpp
    M libc/src/math/generic/nextup.cpp
    M libc/src/math/generic/nextupbf16.cpp
    M libc/src/math/generic/nextupf.cpp
    M libc/src/math/generic/nextupf128.cpp
    M libc/src/math/generic/nextupf16.cpp
    M libc/src/math/generic/nextupl.cpp
    M libc/src/math/generic/setpayload.cpp
    M libc/src/math/generic/setpayloadbf16.cpp
    M libc/src/math/generic/setpayloadf.cpp
    M libc/src/math/generic/setpayloadf128.cpp
    M libc/src/math/generic/setpayloadf16.cpp
    M libc/src/math/generic/setpayloadl.cpp
    M libc/src/math/generic/setpayloadsig.cpp
    M libc/src/math/generic/setpayloadsigbf16.cpp
    M libc/src/math/generic/setpayloadsigf.cpp
    M libc/src/math/generic/setpayloadsigf128.cpp
    M libc/src/math/generic/setpayloadsigf16.cpp
    M libc/src/math/generic/setpayloadsigl.cpp
    M libc/src/math/generic/tanpif16.cpp
    M libc/src/setjmp/arm/longjmp.cpp
    M libc/src/setjmp/arm/setjmp.cpp
    M libc/startup/gpu/CMakeLists.txt
    R libc/startup/gpu/amdgpu/CMakeLists.txt
    R libc/startup/gpu/amdgpu/start.cpp
    R libc/startup/gpu/nvptx/CMakeLists.txt
    R libc/startup/gpu/nvptx/start.cpp
    A libc/startup/gpu/start.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/aarch64/CMakeLists.txt
    A libc/startup/linux/aarch64/irelative.cpp
    M libc/startup/linux/do_start.cpp
    A libc/startup/linux/irelative.h
    M libc/startup/linux/riscv/CMakeLists.txt
    A libc/startup/linux/riscv/irelative.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    A libc/startup/linux/x86_64/irelative.cpp
    M libc/test/integration/startup/linux/CMakeLists.txt
    A libc/test/integration/startup/linux/irelative_no_ifunc_test.cpp
    A libc/test/integration/startup/linux/irelative_test.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/__support/FPUtil/bfloat16_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/acospif_test.cpp
    A libc/test/src/math/asinpif_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    A libc/test/src/math/exhaustive/acospif_test.cpp
    A libc/test/src/math/exhaustive/asinpif_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/acospif_test.cpp
    A libc/test/src/math/smoke/asinpif_test.cpp
    M libc/test/src/math/smoke/atan2f128_test.cpp
    A libc/test/src/math/smoke/atan2l_test.cpp
    M libc/test/src/sys/time/utimes_test.cpp
    M libc/utils/hdrgen/hdrgen/main.py
    M libclc/CMakeLists.txt
    M libclc/clc/lib/generic/math/clc_fdim.inc
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/lib/clspv/SOURCES
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_if.h
    M libcxx/include/__algorithm/find_if_not.h
    M libcxx/include/__algorithm/find_segment_if.h
    M libcxx/include/__algorithm/ranges_find_if.h
    M libcxx/include/__algorithm/ranges_find_if_not.h
    M libcxx/include/__algorithm/ranges_remove_if.h
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__iterator/ostreambuf_iterator.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/__locale_dir/pad_and_output.h
    M libcxx/include/__math/gamma.h
    M libcxx/include/__random/binomial_distribution.h
    M libcxx/include/__tree
    M libcxx/include/__utility/lazy_synth_three_way_comparator.h
    M libcxx/include/__vector/vector.h
    M libcxx/test/benchmarks/spec.gen.py
    A libcxx/test/benchmarks/streams/copy.bench.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/extern_c.pass.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/include_as_c.sh.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/stdint_h.xopen_source.compile.pass.cpp
    M libcxx/test/extensions/posix/xopen_source.gen.py
    M libcxx/test/libcxx-03/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx-03/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx-03/transitive_includes.gen.py
    M libcxx/test/libcxx-03/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_nontrivial.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_trivial.pass.cpp
    M libcxx/test/libcxx/algorithms/specialized_algorithms.compile.pass.cpp
    M libcxx/test/libcxx/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx/assertions/semantics/assertion_semantic_incorrect_value.sh.cpp
    A libcxx/test/libcxx/containers/associative/debug.non-strict-weak-ordering.pass.cpp
    A libcxx/test/libcxx/containers/associative/lower_upper_bound_non_strict_weak_order.pass.cpp
    M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
    M libcxx/test/libcxx/language.support/timespec_get.xopen.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/selftest/modules/std-module.sh.cpp
    M libcxx/test/selftest/modules/std.compat-module.sh.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ostreambuf.copy.pass.cpp
    A libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.segmented.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/append_range.pass.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/modules/std.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.integer.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.pointer.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.gps/gps_time.ostream.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.tai/tai_time.ostream.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.gps_time.pass.cpp
    M libcxx/test/support/stream_types.h
    M libcxx/utils/ci/lnt/run-benchmarks
    M libcxx/utils/libcxx/test/config.py
    M libcxx/utils/libcxx/test/dsl.py
    M libcxx/utils/libcxx/test/format.py
    M libcxx/utils/libcxx/test/modules.py
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/context.hpp
    M libsycl/include/sycl/__impl/device.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/CMakeLists.txt
    A libsycl/src/context.cpp
    A libsycl/src/detail/context_impl.cpp
    A libsycl/src/detail/context_impl.hpp
    M libsycl/src/detail/device_impl.cpp
    M libsycl/src/detail/device_impl.hpp
    M libsycl/src/detail/global_objects.cpp
    M libsycl/src/detail/global_objects.hpp
    M libsycl/src/detail/offload/offload_utils.hpp
    M libsycl/src/detail/platform_impl.cpp
    M libsycl/src/detail/platform_impl.hpp
    M libsycl/src/device.cpp
    M libsycl/src/platform.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Relocations.cpp
    M lld/MachO/LTO.cpp
    M lld/docs/WebAssembly.rst
    M lld/docs/index.rst
    R lld/test/ELF/Inputs/ztext.s
    M lld/test/ELF/aarch64-branch-to-branch.s
    M lld/test/ELF/aarch64-feature-bti.s
    M lld/test/ELF/aarch64-funcinit64-invalid.s
    M lld/test/ELF/aarch64-funcinit64.s
    M lld/test/ELF/aarch64-range-thunk-extension-plt32.s
    M lld/test/ELF/aarch64-reloc-gotpcrel32.s
    M lld/test/ELF/aarch64-reloc-plt32.s
    M lld/test/ELF/aarch64-undefined-weak.s
    M lld/test/ELF/lto/comdat-nodeduplicate.ll
    M lld/test/ELF/lto/linker-script-symbols-ipo.ll
    A lld/test/ELF/x86-x32-abs.s
    M lld/test/ELF/ztext.s
    A lld/test/MachO/lto-slp-vectorize-pm.ll
    M lld/test/wasm/call-indirect.s
    M lld/test/wasm/invalid-mvp-table-use.s
    A lld/test/wasm/large-debug-section.test
    A lld/test/wasm/large-section.test
    M lld/test/wasm/multi-table.s
    A lld/test/wasm/section-too-large.test
    M lld/test/wasm/tls-export.s
    M lld/tools/lld/CMakeLists.txt
    M lld/wasm/InputChunks.h
    M lld/wasm/OutputSections.cpp
    M lldb/bindings/CMakeLists.txt
    M lldb/bindings/lua/CMakeLists.txt
    M lldb/bindings/python/CMakeLists.txt
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/docs/conf.py
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/docs/index.rst
    M lldb/docs/use/variable.rst
    M lldb/examples/python/formatter_bytecode.py
    M lldb/include/lldb/Core/ThreadedCommunication.h
    M lldb/include/lldb/Expression/REPL.h
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/include/lldb/Host/HostInfoBase.h
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    M lldb/include/lldb/Host/aix/HostInfoAIX.h
    M lldb/include/lldb/Host/linux/HostInfoLinux.h
    M lldb/include/lldb/Host/linux/Ptrace.h
    A lldb/include/lldb/Host/windows/ConnectionConPTYWindows.h
    M lldb/include/lldb/Host/windows/ConnectionGenericFileWindows.h
    M lldb/include/lldb/Host/windows/HostInfoWindows.h
    M lldb/include/lldb/Host/windows/PseudoConsole.h
    M lldb/include/lldb/Initialization/SystemInitializerCommon.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Utility/AnsiTerminal.h
    M lldb/include/lldb/Utility/FileSpec.h
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/CMakeLists.txt
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/API/liblldb-private.exports
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Core/ThreadedCommunication.cpp
    M lldb/source/Expression/REPL.cpp
    M lldb/source/Host/CMakeLists.txt
    M lldb/source/Host/aix/HostInfoAIX.cpp
    M lldb/source/Host/common/HostInfoBase.cpp
    M lldb/source/Host/common/MonitoringProcessLauncher.cpp
    M lldb/source/Host/common/ProcessLaunchInfo.cpp
    M lldb/source/Host/linux/HostInfoLinux.cpp
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    A lldb/source/Host/windows/ConnectionConPTYWindows.cpp
    M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp
    M lldb/source/Host/windows/HostInfoWindows.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Initialization/SystemInitializerCommon.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
    M lldb/source/Plugins/ObjectContainer/Mach-O-Fileset/ObjectContainerMachOFileset.cpp
    M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
    M lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
    M lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
    M lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
    M lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
    M lldb/source/Plugins/Process/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCoreProperties.td
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_i386.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_i386.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_x86_64.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_x86_64.h
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
    A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.h
    R lldb/source/Plugins/Process/FreeBSDKernel/CMakeLists.txt
    R lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.h
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_x86_64.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_x86_64.h
    R lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.cpp
    R lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.h
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.cpp
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.h
    M lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/arm/RegisterContextWindows_arm.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/REPL/Clang/ClangREPL.cpp
    M lldb/source/Plugins/REPL/Clang/ClangREPL.h
    M lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Lua/Lua.cpp
    R lldb/source/Plugins/ScriptInterpreter/Lua/Lua.h
    A lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
    A lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.h
    M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
    M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.h
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.h
    M lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/source/Utility/ZipFile.cpp
    M lldb/source/ValueObject/DILAST.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/expression/import-std-module/iterator/TestIteratorFromStdModule.py
    M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
    M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/main.cpp
    M lldb/test/API/commands/help/TestHelp.py
    M lldb/test/API/commands/process/attach/TestProcessAttach.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/valarray/TestDataFormatterStdValarray.py
    M lldb/test/API/functionalities/dyld-launch-linux/TestDyldLaunchLinux.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/TestFreeBSDKernelLiveCore.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/TestFreeBSDKernelVMCore.py
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-amd64.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-arm64.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/kernel-i386.yaml
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-amd64-full.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-amd64-minidump.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-arm64-minidump.bz2
    A lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/vmcore-i386-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/TestFreeBSDKernelLive.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/TestFreeBSDKernelVMCore.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-amd64.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-arm64.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/kernel-i386.yaml
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/README.rst
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/copy-sparse.py
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/libfbsdvmcore-hacks.patch
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/lldb-minimize-processes.patch
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/tools/test.script
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-full.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-arm64-minidump.bz2
    R lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-i386-minidump.bz2
    M lldb/test/API/functionalities/tsan/cpp_global_location/TestTsanCPPGlobalLocation.py
    M lldb/test/API/functionalities/tsan/global_location/TestTsanGlobalLocation.py
    M lldb/test/API/functionalities/tsan/multiple/TestTsanMultiple.py
    M lldb/test/API/functionalities/tsan/thread_leak/TestTsanThreadLeak.py
    M lldb/test/API/functionalities/tsan/thread_numbers/TestTsanThreadNumbers.py
    M lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
    M lldb/test/API/lang/cpp/gmodules/basic/TestWithModuleDebugging.py
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
    M lldb/test/API/lang/objc/objc-ivar-stripped/TestObjCIvarStripped.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py
    A lldb/test/API/linux/arm/tls_register/Makefile
    A lldb/test/API/linux/arm/tls_register/TestArmLinuxTLSRegister.py
    A lldb/test/API/linux/arm/tls_register/main.c
    M lldb/test/API/macosx/add-dsym/TestAddDsymDownload.py
    M lldb/test/API/macosx/add-dsym/TestAddDsymMidExecutionCommand.py
    M lldb/test/API/macosx/delay-init-dependency/TestDelayInitDependency.py
    M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
    A lldb/test/API/tools/lldb-dap/cancel/busy_loop.py
    M lldb/test/API/tools/lldb-dap/stopped-events/TestDAP_stopped_events.py
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-dap/variables/children/TestDAP_variables_children.py
    M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
    M lldb/test/Shell/SymbolFile/DWARF/delayed-definition-die-searching.test
    M lldb/test/Shell/SymbolFile/NativePDB/inline_sites.test
    M lldb/test/Shell/SymbolFile/NativePDB/lookup-by-types.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/tag-types.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/ScopesRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/SBAPIExtras.h
    M lldb/tools/lldb-dap/Variables.cpp
    M lldb/tools/lldb-dap/Variables.h
    M lldb/tools/lldb-mcp/lldb-mcp.cpp
    M lldb/tools/lldb-server/SystemInitializerLLGS.h
    M lldb/tools/lldb-test/SystemInitializerTest.cpp
    M lldb/unittests/DAP/DAPTypesTest.cpp
    M lldb/unittests/DAP/Inputs/linux-x86_64.core.yaml
    M lldb/unittests/DAP/Inputs/linux-x86_64.out.yaml
    M lldb/unittests/DAP/ProtocolRequestsTest.cpp
    M lldb/unittests/DAP/VariablesTest.cpp
    M lldb/unittests/Host/common/CMakeLists.txt
    A lldb/unittests/Host/common/Inputs/zip-test-no-extras.zip
    M lldb/unittests/Host/common/ZipFileResolverTest.cpp
    M lldb/unittests/Language/CPlusPlus/LibStdcppTupleTest.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
    M lldb/unittests/ScriptInterpreter/Lua/LuaTests.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp
    M lldb/unittests/TestingSupport/Symbol/ClangTestUtils.h
    M lldb/unittests/Utility/AnsiTerminalTest.cpp
    M llvm/Maintainers.md
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/cmake/modules/LLVM-Config.cmake
    M llvm/cmake/modules/TableGen.cmake
    M llvm/docs/AMDGPUUsage.rst
    R llvm/docs/Bugpoint.rst
    R llvm/docs/CommandGuide/bugpoint.rst
    M llvm/docs/CommandGuide/index.rst
    M llvm/docs/CommandGuide/llvm-extract.rst
    M llvm/docs/HowToSetUpLLVMStyleRTTI.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/Passes.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/Reference.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/docs/TestSuiteGuide.md
    R llvm/docs/TestSuiteMakefileGuide.rst
    M llvm/docs/TestingGuide.rst
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/SmallString.h
    M llvm/include/llvm/ADT/StringRef.h
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/Analysis/ScopedNoAliasAA.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/CodeGen/SlotIndexes.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    A llvm/include/llvm/CodeGen/pch.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerCompileUnit.h
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
    M llvm/include/llvm/DebugInfo/CodeView/CodeViewTypes.def
    M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/IR/FMF.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/MDBuilder.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    A llvm/include/llvm/IR/pch.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCGOFFAttributes.h
    M llvm/include/llvm/MC/MCLFI.h
    M llvm/include/llvm/MC/MCLFIRewriter.h
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCSectionGOFF.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCSymbolGOFF.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Support/AdvisoryLock.h
    M llvm/include/llvm/Support/AutoConvert.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/JSON.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/include/llvm/Support/LockFileManager.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/include/llvm/Support/Path.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/TargetParser/TargetParser.h
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/CostModel.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InstCount.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/LoopInfo.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Analysis/MemorySSAUpdater.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ScopedNoAliasAA.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLLexer.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/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
    M llvm/lib/CodeGen/AsmPrinter/WinException.cpp
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/MachineLoopUtils.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/PostRAHazardRecognizer.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/SlotIndexes.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
    M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/CMakeLists.txt
    M llvm/lib/IR/MDBuilder.cpp
    M llvm/lib/IR/ModuleSummaryIndex.cpp
    M llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAsmInfo.cpp
    M llvm/lib/MC/MCAsmInfoGOFF.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCLFI.cpp
    M llvm/lib/MC/MCLFIRewriter.cpp
    M llvm/lib/MC/MCParser/LFIAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCSymbolGOFF.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/ObjectYAML/WasmEmitter.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/lib/SandboxIR/Region.cpp
    M llvm/lib/Support/AutoConvert.cpp
    M llvm/lib/Support/JSON.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Support/LockFileManager.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Support/Unix/Process.inc
    M llvm/lib/Support/VirtualOutputBackends.cpp
    M llvm/lib/Support/Windows/Process.inc
    M llvm/lib/Support/raw_ostream.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA320.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/AArch64SchedA55.td
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUFeatures.td
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
    M llvm/lib/Target/AMDGPU/GCNProcessors.td
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/R600Subtarget.cpp
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SISchedule.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrMVE.td
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
    M llvm/lib/Target/Hexagon/BitTracker.cpp
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    M llvm/lib/Target/Hexagon/Hexagon.h
    M llvm/lib/Target/Hexagon/Hexagon.td
    M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    A llvm/lib/Target/Hexagon/HexagonGlobalScheduler.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    M llvm/lib/Target/Hexagon/HexagonPseudo.td
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
    M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsInstrFPU.td
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
    M llvm/lib/Target/PowerPC/PPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrFuture.td
    M llvm/lib/Target/PowerPC/PPCOperands.td
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSpacemiT.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvabd.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvdot4a8i.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    R llvm/lib/Target/RISCV/RISCVInstrInfoZvqdotq.td
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
    M llvm/lib/Target/RISCV/RISCVSelectionDAGInfo.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizeZeroSizeArrays.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrAMX.td
    M llvm/lib/Target/X86/X86PreTileConfig.cpp
    M llvm/lib/Target/X86/X86TargetMachine.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/MetaRenamer.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AMDGPU/exp.ll
    M llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
    M llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
    M llvm/test/Analysis/CostModel/X86/clmul.ll
    M llvm/test/Analysis/DependenceAnalysis/ExactRDIV.ll
    A llvm/test/Analysis/DependenceAnalysis/exact-rdiv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/rdiv-minor-algebra.ll
    A llvm/test/Analysis/DependenceAnalysis/strong-siv-addrec-wrap.ll
    M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll
    A llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-addrec-wrap.ll
    A llvm/test/Analysis/FunctionPropertiesAnalysis/properties-stats.ll
    A llvm/test/Analysis/InstCount/instcount.ll
    M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
    A llvm/test/Assembler/prefalign-error1.ll
    A llvm/test/Assembler/prefalign-error2.ll
    A llvm/test/Assembler/prefalign-error3.ll
    A llvm/test/Assembler/prefalign-error4.ll
    M llvm/test/Assembler/thinlto-memprof-summary.ll
    M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
    M llvm/test/Assembler/thinlto-summary-visibility.ll
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Assembler/thinlto-vtable-summary.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
    M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    M llvm/test/Bitcode/thinlto-type-tests.ll
    M llvm/test/Bitcode/thinlto-type-vcalls.ll
    A llvm/test/Bitcode/upgrade-uniform-work-group-size.ll
    R llvm/test/BugPoint/attr-crash.ll
    R llvm/test/BugPoint/compile-custom.ll
    R llvm/test/BugPoint/compile-custom.ll.py
    R llvm/test/BugPoint/crash-narrowfunctiontest.ll
    R llvm/test/BugPoint/func-attrs-keyval.ll
    R llvm/test/BugPoint/func-attrs.ll
    R llvm/test/BugPoint/invalid-debuginfo.ll
    R llvm/test/BugPoint/metadata.ll
    R llvm/test/BugPoint/named-md.ll
    R llvm/test/BugPoint/remove_arguments_test.ll
    R llvm/test/BugPoint/replace-funcs-with-null.ll
    R llvm/test/BugPoint/retain-crashing-metadata.ll
    R llvm/test/BugPoint/unsymbolized.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-freeze.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/compute-known-bits-bitcast-assertion.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option-fastisel.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    A llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    A llvm/test/CodeGen/AArch64/aarch64-inline-asm-bitcast-crash.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    A llvm/test/CodeGen/AArch64/aarch64-scal-to-vec-bitcast-insert.ll
    A llvm/test/CodeGen/AArch64/aarch64-tensorflow-isel-regression.ll
    A llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi-strictfp.ll
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-simd-ldst-one.ll
    M llvm/test/CodeGen/AArch64/arm64-sli-sri-opt.ll
    M llvm/test/CodeGen/AArch64/arm64-tbl.ll
    M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    A llvm/test/CodeGen/AArch64/bitcnt-i256.ll
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll
    A llvm/test/CodeGen/AArch64/cmp-i256.ll
    M llvm/test/CodeGen/AArch64/combine-comparisons-by-cse.ll
    A llvm/test/CodeGen/AArch64/complex-deinterleaving-opt-crash-178671.ll
    A llvm/test/CodeGen/AArch64/const-vector-big-endian.ll
    M llvm/test/CodeGen/AArch64/constant-pool-partition.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    A llvm/test/CodeGen/AArch64/div-i256.ll
    M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
    A llvm/test/CodeGen/AArch64/faddv-fp16.ll
    A llvm/test/CodeGen/AArch64/faddv.ll
    A llvm/test/CodeGen/AArch64/fcvt-i256.ll
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fixed-length-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/fixed-vector-interleave.ll
    A llvm/test/CodeGen/AArch64/fminp-fmaxp.ll
    M llvm/test/CodeGen/AArch64/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    A llvm/test/CodeGen/AArch64/machine-outliner-bundle-debuginfo.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    A llvm/test/CodeGen/AArch64/mul-i256.ll
    M llvm/test/CodeGen/AArch64/neon-abd.ll
    A llvm/test/CodeGen/AArch64/neon-lowhalf128-optimisation.ll
    M llvm/test/CodeGen/AArch64/neon-mov.ll
    M llvm/test/CodeGen/AArch64/neon-stepvector.ll
    M llvm/test/CodeGen/AArch64/popcount_vmask.ll
    M llvm/test/CodeGen/AArch64/pr58350.ll
    M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/AArch64/qshrn.ll
    M llvm/test/CodeGen/AArch64/reduce-or.ll
    M llvm/test/CodeGen/AArch64/reduce-xor.ll
    M llvm/test/CodeGen/AArch64/rem-by-const.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/saturating-vec-smull.ll
    A llvm/test/CodeGen/AArch64/select-bitcast.ll
    A llvm/test/CodeGen/AArch64/shift-i256.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/shuffles.ll
    A llvm/test/CodeGen/AArch64/sminp-smaxp.ll
    M llvm/test/CodeGen/AArch64/srem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/stack-tagging.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-combines.ll
    M llvm/test/CodeGen/AArch64/sve-fptosi-sat.ll
    M llvm/test/CodeGen/AArch64/sve-fptoui-sat.ll
    A llvm/test/CodeGen/AArch64/uminp-umaxp.ll
    A llvm/test/CodeGen/AArch64/unsupported-fpext-x86-fp80.ll
    M llvm/test/CodeGen/AArch64/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/AArch64/urem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    A llvm/test/CodeGen/AArch64/veclib-llvm.pow.ll
    M llvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.cd.g16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-accesslist-offsetbins-out-of-sync.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-flat-scratch-init-asan.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-trap-leaf.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-chain-metadata.ll
    M llvm/test/CodeGen/AMDGPU/annotate-existing-abi-attributes.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i32.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-max-num-workgroups-propagate.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
    M llvm/test/CodeGen/AMDGPU/attributor-loop-issue-58639.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/bypass-div.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill-xfail.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/captured-frame-index.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    A llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes.ll
    A llvm/test/CodeGen/AMDGPU/convergent.mir
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/extload-private.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-sgpr32-to-vgpr16.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
    M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/fminnum.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines-gfx1200.ll
    M llvm/test/CodeGen/AMDGPU/fp-min-max-image-atomics.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/hazard-shift64.mir
    M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
    M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
    M llvm/test/CodeGen/AMDGPU/indirect-private-64.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    M llvm/test/CodeGen/AMDGPU/inlineasm-sgmask.ll
    M llvm/test/CodeGen/AMDGPU/insert_subreg.ll
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/invalid-hidden-kernarg-in-kernel-signature.ll
    M llvm/test/CodeGen/AMDGPU/invariant-image-load.ll
    M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/issue92561-restore-undef-scc-verifier-error.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.cluster.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.flt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sbfe.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
    A llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-hi16.ll
    M llvm/test/CodeGen/AMDGPU/load-lo16.ll
    A llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-slot-offset.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-debug.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
    M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    A llvm/test/CodeGen/AMDGPU/memcpy_const_compare.ll
    M llvm/test/CodeGen/AMDGPU/minimummaximum.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.ll
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
    M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/parallelandifcollapse.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-no-opts.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-stored-pointer-value.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-gep.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/propagate-amdgpu-cluster-dims.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/remat-sop.mir
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr.ll
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir
    A llvm/test/CodeGen/AMDGPU/setcc-select-hi32mask.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.ll
    M llvm/test/CodeGen/AMDGPU/si-opt-vgpr-liverange-bug-deadlanes.mir
    M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.mir
    M llvm/test/CodeGen/AMDGPU/si-pre-allocate-wwm-regs.mir
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
    M llvm/test/CodeGen/AMDGPU/split-vector-memoperand-offsets.ll
    M llvm/test/CodeGen/AMDGPU/srem.ll
    M llvm/test/CodeGen/AMDGPU/store-hi16.ll
    M llvm/test/CodeGen/AMDGPU/swdev-549940.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.error.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll
    M llvm/test/CodeGen/AMDGPU/target-cpu.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
    M llvm/test/CodeGen/AMDGPU/vector-alloca.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-debug-output-crash.ll
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.ll
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-pattern.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    R llvm/test/CodeGen/AMDGPU/wmma-coececution-valu-hazards.mir
    A llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir
    R llvm/test/CodeGen/AMDGPU/wmma-gfx12-convergent.mir
    M llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir
    M llvm/test/CodeGen/ARM/bfx.ll
    M llvm/test/CodeGen/ARM/extract-bits.ll
    M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/ARM/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/ARM/inline-asm-clobber.ll
    M llvm/test/CodeGen/ARM/shift-combine.ll
    M llvm/test/CodeGen/ARM/vector-DAGCombine.ll
    M llvm/test/CodeGen/ARM/vector-store.ll
    M llvm/test/CodeGen/ARM/vext.ll
    M llvm/test/CodeGen/ARM/vselect_imax.ll
    M llvm/test/CodeGen/ARM/vtrn.ll
    M llvm/test/CodeGen/AVR/cmp.ll
    R llvm/test/CodeGen/DirectX/issue-152348.ll
    R llvm/test/CodeGen/DirectX/phi-node-replacement.ll
    A llvm/test/CodeGen/Generic/shadow-stack-gc-lowering.ll
    M llvm/test/CodeGen/Hexagon/autohvx/hfsplat.ll
    A llvm/test/CodeGen/Hexagon/autohvx/isel-hvx-rescale-predicate.ll
    A llvm/test/CodeGen/Hexagon/avoid-debug-increment.mir
    M llvm/test/CodeGen/Hexagon/bfloat_vec.ll
    M llvm/test/CodeGen/Hexagon/cext-check.ll
    A llvm/test/CodeGen/Hexagon/constp-const32-signbit.mir
    M llvm/test/CodeGen/Hexagon/constp-extract.ll
    A llvm/test/CodeGen/Hexagon/dbg-label-pullup.ll
    A llvm/test/CodeGen/Hexagon/disable-packetizer-nvj.ll
    A llvm/test/CodeGen/Hexagon/extract-hvx-subvector-pred-small.ll
    A llvm/test/CodeGen/Hexagon/fptoi.sat.ll
    A llvm/test/CodeGen/Hexagon/frame-pointer-attr.ll
    A llvm/test/CodeGen/Hexagon/global-sched-iterator-invalidation.ll
    A llvm/test/CodeGen/Hexagon/global-sched-skip-vsub_fake.ll
    M llvm/test/CodeGen/Hexagon/hasfp-crash1.ll
    M llvm/test/CodeGen/Hexagon/isel/trunc-vNi1-HVX.ll
    A llvm/test/CodeGen/Hexagon/loop-idiom/pmpy-trunc.ll
    A llvm/test/CodeGen/Hexagon/pull-delayed-new.mir
    A llvm/test/CodeGen/Hexagon/pull-no-comp-code.ll
    A llvm/test/CodeGen/Hexagon/pull-up-dbg-label.mir
    A llvm/test/CodeGen/Hexagon/pull-up-slots.mir
    A llvm/test/CodeGen/Hexagon/pull-up.ll
    M llvm/test/CodeGen/Hexagon/readcyclecounter.ll
    M llvm/test/CodeGen/Hexagon/readsteadycounter.ll
    A llvm/test/CodeGen/Hexagon/swp-peel-prolog-crash.mir
    A llvm/test/CodeGen/Hexagon/v81-early-arch-features.ll
    A llvm/test/CodeGen/Hexagon/vgather-memvt.ll
    M llvm/test/CodeGen/LoongArch/lasx/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/lasx/vxi1-masks.ll
    M llvm/test/CodeGen/LoongArch/lsx/rotl-rotr.ll
    M llvm/test/CodeGen/M68k/pipeline.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    A llvm/test/CodeGen/MIR/Generic/expected-unsigned.mir
    M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/Mips/fabs.ll
    M llvm/test/CodeGen/Mips/fmadd1.ll
    M llvm/test/CodeGen/Mips/llvm-ir/nan-fp-attr.ll
    M llvm/test/CodeGen/NVPTX/bug21465.ll
    M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/lower-args-alignment.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    A llvm/test/CodeGen/NVPTX/reserved-smem-offset.ll
    A llvm/test/CodeGen/NVPTX/scalarize-non-coalescable-v2f32.ll
    A llvm/test/CodeGen/NVPTX/wmma-ptx91-sm120a.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx91-sm120f.py
    M llvm/test/CodeGen/NVPTX/wmma.py
    M llvm/test/CodeGen/PowerPC/Frames-dyn-alloca.ll
    M llvm/test/CodeGen/PowerPC/alloca-crspill.ll
    M llvm/test/CodeGen/PowerPC/asm-dialect.ll
    A llvm/test/CodeGen/PowerPC/bit_floor.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll
    M llvm/test/CodeGen/PowerPC/ppc64-blnop.ll
    M llvm/test/CodeGen/PowerPC/ppc_test_data_class.ll
    M llvm/test/CodeGen/PowerPC/pr25080.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    M llvm/test/CodeGen/RISCV/bswap-bitreverse.ll
    M llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
    M llvm/test/CodeGen/RISCV/clmul.ll
    A llvm/test/CodeGen/RISCV/clmulh.ll
    A llvm/test/CodeGen/RISCV/clmulr.ll
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/div_minsize.ll
    M llvm/test/CodeGen/RISCV/double-imm.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/double-select-icmp.ll
    M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore-zilsd.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zdinx-constraint-r.ll
    A llvm/test/CodeGen/RISCV/opt-w-instrs-p-ext.mir
    M llvm/test/CodeGen/RISCV/pr148084.ll
    A llvm/test/CodeGen/RISCV/rv32-merge-non-arg-reg.mir
    A llvm/test/CodeGen/RISCV/rv32-move-merge.ll
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
    M llvm/test/CodeGen/RISCV/rvp-unaligned-load-store.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-cmp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvdot4a8i.ll
    R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4su.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4u.ll
    A llvm/test/CodeGen/RISCV/rvv/vdota4us.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
    R llvm/test/CodeGen/RISCV/rvv/vqdot.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotsu.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotu.ll
    R llvm/test/CodeGen/RISCV/rvv/vqdotus.ll
    A llvm/test/CodeGen/RISCV/rvv/zvdot4a8i-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
    M llvm/test/CodeGen/RISCV/select.ll
    A llvm/test/CodeGen/RISCV/xqcisls-merge-base-offset-shladd.ll
    M llvm/test/CodeGen/RISCV/zicond-fp-select-zfinx.ll
    A llvm/test/CodeGen/SPARC/stack-slot-coloring.mir
    M llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_relaxed_printf_string_address_space/non-constant-printf.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_12.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_20.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_spirv.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
    R llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/disabled-on-amd.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/vk-ext-builtin-input.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather-errors-1.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather-errors-2.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Gather.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/NonUniformIdx/RWStructuredBufferNonUniformIdx.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array-minimal.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-simple.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-struct.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/issue-146942-ptr-cast.ll
    M llvm/test/CodeGen/SPIRV/legalization/load-store-global.ll
    M llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-extern.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll.bak
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/exp10-glsl.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/exp10-opencl.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/lifetime.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/logical-memcpy.ll
    M llvm/test/CodeGen/SPIRV/pointers/array-skips-gep.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/pointer-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/ptrcast-bitcast.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-dynamic-index.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-nested-struct-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-runtime-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-access.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-vector-access.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.ps.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.vs.ll
    M llvm/test/CodeGen/SPIRV/semantics/target.ps.ll
    M llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/return-early.ll
    M llvm/test/CodeGen/SystemZ/fmuladd-soft-float.ll
    A llvm/test/CodeGen/SystemZ/foldmemop-global.mir
    M llvm/test/CodeGen/SystemZ/remat.ll
    M llvm/test/CodeGen/SystemZ/zos-ada-relocations.ll
    M llvm/test/CodeGen/Thumb/pr35836.ll
    M llvm/test/CodeGen/Thumb/pr35836_2.ll
    M llvm/test/CodeGen/Thumb/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-ind8-unscaled.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-scatter-ind8-unscaled.ll
    A llvm/test/CodeGen/Thumb2/mve-sli-sri.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-addpred.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-mlapred.ll
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll
    M llvm/test/CodeGen/WebAssembly/load-ext.ll
    M llvm/test/CodeGen/WebAssembly/offset-fastisel.ll
    M llvm/test/CodeGen/WebAssembly/simd-extadd.ll
    M llvm/test/CodeGen/X86/GlobalISel/sub-scalar.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512vl-vec-masked-cmp.ll
    M llvm/test/CodeGen/X86/bitcast-and-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-512.ll
    M llvm/test/CodeGen/X86/bitcast-vector-bool.ll
    M llvm/test/CodeGen/X86/bitcnt-big-integer.ll
    M llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
    M llvm/test/CodeGen/X86/clmul.ll
    M llvm/test/CodeGen/X86/cmov-fp.ll
    A llvm/test/CodeGen/X86/code_placement_ext_tsp_size_and_perf.ll
    M llvm/test/CodeGen/X86/combine-multiplies.ll
    M llvm/test/CodeGen/X86/combine-or.ll
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/combine-rotates.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/combine-shl.ll
    M llvm/test/CodeGen/X86/combine-sra.ll
    M llvm/test/CodeGen/X86/combine-storetomstore.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/combine-vpmadd52.ll
    M llvm/test/CodeGen/X86/dagcombine-select.ll
    M llvm/test/CodeGen/X86/dagcombine-shifts.ll
    M llvm/test/CodeGen/X86/div_i129_v_pow2k.ll
    M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/fdiv-combine.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fnabs.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fp128-select.ll
    M llvm/test/CodeGen/X86/fpclamptosat.ll
    M llvm/test/CodeGen/X86/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/X86/fptosi-sat-vector-128.ll
    M llvm/test/CodeGen/X86/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/X86/fptoui-sat-vector-128.ll
    A llvm/test/CodeGen/X86/funnel-shift-i512.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/gfni-xor-fold-avx512.ll
    M llvm/test/CodeGen/X86/gfni-xor-fold.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/i128-sdiv.ll
    M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/test/CodeGen/X86/known-signbits-shl.ll
    M llvm/test/CodeGen/X86/known-signbits-vector.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
    M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
    M llvm/test/CodeGen/X86/midpoint-int-vec-512.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/mulvi32.ll
    A llvm/test/CodeGen/X86/npm-asmprint.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/pmul.ll
    M llvm/test/CodeGen/X86/pmulh.ll
    M llvm/test/CodeGen/X86/pr107423.ll
    M llvm/test/CodeGen/X86/pr161013.ll
    M llvm/test/CodeGen/X86/pr173794.ll
    M llvm/test/CodeGen/X86/pr179489.ll
    M llvm/test/CodeGen/X86/pr35918.ll
    M llvm/test/CodeGen/X86/pr41619.ll
    M llvm/test/CodeGen/X86/pr42727.ll
    M llvm/test/CodeGen/X86/pr45563-2.ll
    M llvm/test/CodeGen/X86/pr45833.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    A llvm/test/CodeGen/X86/prefalign.ll
    M llvm/test/CodeGen/X86/promote-cmp.ll
    M llvm/test/CodeGen/X86/promote-vec3.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/rotate-extract-vector.ll
    M llvm/test/CodeGen/X86/sadd_sat_vec.ll
    M llvm/test/CodeGen/X86/sat-add.ll
    M llvm/test/CodeGen/X86/sdiv-exact.ll
    M llvm/test/CodeGen/X86/select_const.ll
    A llvm/test/CodeGen/X86/selectiondag-dbgvalue-null-crash.ll
    M llvm/test/CodeGen/X86/shift-i512.ll
    M llvm/test/CodeGen/X86/shrink_vmul.ll
    M llvm/test/CodeGen/X86/single_elt_vector_memory_operation.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/sse-load-ret.ll
    M llvm/test/CodeGen/X86/sshl_sat_vec.ll
    M llvm/test/CodeGen/X86/ssub_sat_vec.ll
    M llvm/test/CodeGen/X86/stack-align.ll
    M llvm/test/CodeGen/X86/statepoint-live-in.ll
    M llvm/test/CodeGen/X86/statepoint-regs.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv-exact.ll
    M llvm/test/CodeGen/X86/undo-mul-and.ll
    M llvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-splat.ll
    M llvm/test/CodeGen/X86/ushl_sat_vec.ll
    M llvm/test/CodeGen/X86/vec-copysign-avx512.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
    M llvm/test/CodeGen/X86/vec_fcopysign.ll
    M llvm/test/CodeGen/X86/vec_int_to_fp.ll
    M llvm/test/CodeGen/X86/vec_minmax_sint.ll
    M llvm/test/CodeGen/X86/vec_minmax_uint.ll
    M llvm/test/CodeGen/X86/vec_smulo.ll
    M llvm/test/CodeGen/X86/vec_umulo.ll
    M llvm/test/CodeGen/X86/vector-compare-all_of.ll
    M llvm/test/CodeGen/X86/vector-compare-any_of.ll
    M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/X86/vector-fshl-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-256.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-mul.ll
    M llvm/test/CodeGen/X86/vector-pcmp.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/CodeGen/X86/vector-reduce-smax.ll
    M llvm/test/CodeGen/X86/vector-reduce-smin.ll
    M llvm/test/CodeGen/X86/vector-reduce-umax.ll
    M llvm/test/CodeGen/X86/vector-reduce-umin.ll
    M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
    M llvm/test/CodeGen/X86/vector-rotate-128.ll
    M llvm/test/CodeGen/X86/vector-rotate-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vector-shuffle-concatenation.ll
    M llvm/test/CodeGen/X86/vector-trunc-math.ll
    M llvm/test/CodeGen/X86/vector-trunc-packus.ll
    M llvm/test/CodeGen/X86/vector-trunc-ssat.ll
    M llvm/test/CodeGen/X86/vector-trunc-usat.ll
    M llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
    M llvm/test/CodeGen/X86/vselect.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    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/RISCV/relax_dwo_ranges.ll
    M llvm/test/ExecutionEngine/Interpreter/test-interp-vec-insertelement.ll
    A llvm/test/Instrumentation/AddressSanitizer/fuchsia.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
    M llvm/test/MC/AArch64/data-directive-specifier.s
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_aliases.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_dpp8.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_err.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_t16_err.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop2_t16_promote.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop2_dpp8.s
    R llvm/test/Other/functionpropertiesanalysis.ll
    R llvm/test/Other/instcount.ll

  Log Message:
  -----------
  Merge remote-tracking branch 'external-upstream/main' into users/mariusz-sikora-at-amd/gfx13/add-vinterp


Compare: https://github.com/llvm/llvm-project/compare/18c0aae62eee...ba2e9fbba069

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