[all-commits] [llvm/llvm-project] 313a38: AArch64: Add TBZ/TBNZ matcher for x & (1 << y).

Peter Collingbourne via All-commits all-commits at lists.llvm.org
Tue Jan 20 12:07:34 PST 2026


  Branch: refs/heads/users/pcc/spr/mc-add-elf-section-and-directive-for-specifying-a-sections-preferred-alignment
  Home:   https://github.com/llvm/llvm-project
  Commit: 313a382161a9a3ed349e465ad5866dabaf4aadf6
      https://github.com/llvm/llvm-project/commit/313a382161a9a3ed349e465ad5866dabaf4aadf6
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/bit-test.ll
    M llvm/test/CodeGen/AArch64/switch-cases-to-branch-and.ll

  Log Message:
  -----------
  AArch64: Add TBZ/TBNZ matcher for x & (1 << y).

x & (1 << y) is InstCombine's canonical form of a bit test which is
currently code generated literally, missing an opportunity to use TBZ/TBNZ
on bit 0 of x >> y, which generally results in an instruction sequence
that is shorter by 2 instructions. Implement this optimization. On my
machine this results in a 0.05% reduction in clang binary size and a 0.25%
reduction in dynamic instruction count compiling AArch64ISelLowering.cpp.

Reviewers: davemgreen, fhahn

Reviewed By: davemgreen

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


  Commit: 7b699cc5de6561895f8ba3e5326ded8d301c7251
      https://github.com/llvm/llvm-project/commit/7b699cc5de6561895f8ba3e5326ded8d301c7251
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    R llvm/test/CodeGen/AMDGPU/machine-scheduler-rematerialization-scoring.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
    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/mfma-loop.ll

  Log Message:
  -----------
  Revert "[AMDGPU][Scheduler] Scoring system for rematerializations (#175050)" (#175813)

This reverts 8ab79377740789f6a34fc6f04ee321a39ab73724 and
f21e3593371c049380f056a539a1601a843df558 which are causing a HIP failure
in a Blender test.


  Commit: 049413243d7547c4789185b7849bce4838c998fc
      https://github.com/llvm/llvm-project/commit/049413243d7547c4789185b7849bce4838c998fc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add isCommutable to more P extension instructions. (#175722)


  Commit: c620b477512ad566e687024d25b703ba0f99cec2
      https://github.com/llvm/llvm-project/commit/c620b477512ad566e687024d25b703ba0f99cec2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
    M llvm/test/Transforms/Attributor/nofpclass-select.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  ValueTracking: Account for undef in adjustKnownFPClassForSelectArm (#175372)

This needs to consider undef like the KnownBits case does.


  Commit: bf5ee0678e39560148a3ce658d7b34a09b7971fb
      https://github.com/llvm/llvm-project/commit/bf5ee0678e39560148a3ce658d7b34a09b7971fb
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/lib/IR/Remarks.cpp

  Log Message:
  -----------
  [mlir] Use bind_front in RemarkEngine. NFC. (#175818)

Switch from C++11 `std::bind` to C++26 `bind_front` backported in
https://github.com/llvm/llvm-project/pull/175056.

The former is an old design that predates lambdas and uses explicit
placeholders. `bind_front` should produce a much smaller object (we only
need one pointer).


  Commit: 50703faab8a466adfea961636d439a61e5d26007
      https://github.com/llvm/llvm-project/commit/50703faab8a466adfea961636d439a61e5d26007
  Author: Grigor Nikolov <40071481+grigornik at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll

  Log Message:
  -----------
  [AMDGPU][Test][AIX] use tr instead of sed for line split (#175557)

Test case is using sed command `sed 's/,/,\n/g'` to split a line.
On AIX that is not working with the AIX system's `sed`

AIX external BB fails from
https://lab.llvm.org/buildbot/#/builders/64/builds/6911

Here substitute:
`sed 's/,/,\n/g'`
with:
`tr ',' '\n'`
but because `tr` does not keeps the comma, also needed to change looked
for texts i.e. to remove the comma `,` from them since it is not needed
for the correctness.

Co-authored-by: Daniel Chen <cdchen at ca.ibm.com>


  Commit: d27d75ee945943698b247393a7f7449f76efafe4
      https://github.com/llvm/llvm-project/commit/d27d75ee945943698b247393a7f7449f76efafe4
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp

  Log Message:
  -----------
  [VPlan] Use createHeaderPHIRecipes in native path (NFCI).

Simplify tryToBuildVPlan by using createHeaderPHIRecipes in the native
path as well.


  Commit: 4a807e8dd97421acd26143f8c186f6e0a602e2f1
      https://github.com/llvm/llvm-project/commit/4a807e8dd97421acd26143f8c186f6e0a602e2f1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/docs/Vectorizers.rst
    M llvm/docs/vplan-early-exit-lowered.dot
    M llvm/docs/vplan-early-exit-lowered.png
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll

  Log Message:
  -----------
  [VPlan] Optimize BranchOnTwoConds to chain of 2 simple branches. (#174016)

This patch improves the lowering for BranchOnTwoConds added in
https://github.com/llvm/llvm-project/pull/172750 by replacing the branch
on OR with a chain of 2 branches.

On Apple M cores, the new lowering is ~8-10% faster for std::find-like
loops. It also makes it easier to determine the early exits in VPlan. I
am also planning on extensions to support loops with multiple early
exits and early-exits at different positions, which should also be
slightly easier to do with the new representation.


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


  Commit: bdb50b08a2ebfee8f0ee0d8fbc46357d5359647c
      https://github.com/llvm/llvm-project/commit/bdb50b08a2ebfee8f0ee0d8fbc46357d5359647c
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Support/ThreadPool.cpp

  Log Message:
  -----------
  [llvm] Fix comment references deprecated make_scope_exit (#175820)

After #173131 and #174030, make_scope_exit is no longer used in
ThreadPool. Fix comment that references old APIs and references the new
API instead.


  Commit: 51ec8b1b662c0708b0a21c4b41303bc5b01ba046
      https://github.com/llvm/llvm-project/commit/51ec8b1b662c0708b0a21c4b41303bc5b01ba046
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  ADT: Add utility functions for comparing FPClassTest (#175380)

Add utility functions for checking if less and greater queries
are known to not evaluate to true. This will permit more precise
folding of min/max intrinsics. The test is kind of a mess.


  Commit: d73cd7146291b1356cc9e4f079785ee26ee1a887
      https://github.com/llvm/llvm-project/commit/d73cd7146291b1356cc9e4f079785ee26ee1a887
  Author: Abel Bernabeu <abel.bernabeu at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    A llvm/lib/Target/RISCV/RISCVInstrFormatsXAIF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoXAIF.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/MC/RISCV/xaifet-amo-valid.s
    A llvm/test/MC/RISCV/xaifet-simd-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] AI Foundry ET extensions for RISC-V (#174571)

This patch is part of an ongoing effort for upstreaming the AI Foundry
ET
extensions for RISC-V, formerly known as the ET-SoC-1 Minion extensions
by
Esperanto Technologies.

Changes
=======

The changes in this patch are:

- Defining the XAIFET feature as an "umbrella" extension under which
  all the vendor extensions from ET-SoC-1 are included.

- Defining Esperanto Technologies's ET-SoC-1 Minion processor (et-soc1).

- Defining Ainekko's Erbium Minion processor (an-erbium), using the same
  ISA.

- Adding the XAIFET vector register and mask register classes.

- Adding all the custsom machine instructions

Reference manual
================

Full documentation for these extensions is publicly available at the
following URL:


https://github.com/aifoundry-org/et-man/blob/main/ET%20Programmer's%20Reference%20Manual.pdf

Note on gather/scatter syntax
=============================

The assembly syntax for gather/scatter instructions used by Esperanto
Technologies used a complex source operand consisting on two registers.
For example, consider the syntax that the manual proposed for
`fg32w.ps`:

 fg32w.ps	fd, fs1(rs1)

Note that the second operand (the source) is composed of two register
names.

While Esperanto Technologies fork of LLVM 11 supported this syntax,
it is easier to fit on the existing RISCV infrastructure if a comma is
inserted between the two source register names:

 fg32w.ps	fd, fs1, (rs1)

That way is as clear as the proposal from the manual and does not
require defining a complex operand consisting on two registers.

This subject was discussed on the #et-platform Discord channel, with
enough agreement on streamlining the syntax as proposed here for
llvm/clang.

Note on instruction prefixes
============================

The `aif.` prefix has been added to all the instructions under these
extensions, in line with the RISC-V toolchain practices, so an
instruction from the manual like `fadd.pi` becomes `aif.fadd.pi`
with the upstream toolchain.

The same goes for CSRs, so `fcc` becomes `aif.fcc`.

Authors
=======

This patch contains code rebased from the LLVM 11 fork by Esperanto
Technologies as published at the following URL:

  https://github.com/aifoundry-org/llvm/tree/et

The list of authors that contributed to that fork follow:

- Abel Bernabeu <abel.bernabeu at esperantotech.com>, maintainer.
- David Callahan <callahan at reservoir.com>, project founder.
- Josep M. Perez <josep.m.perez at esperantotech.com>, contributor.
- Muhammad Kamran <muhammad.kamran at esperantotech.com>, contributor.
- Pere Munt <pere.munt at esperantotech.com>, contributor.
- Rafael Jimenez <rafael.jimenez at esperantotech.com>, contributor.
- Stefan Freudenberger <stefan at reservoir.com>, contributor.


  Commit: bd2cfc52e4c6f627bacc53c7d38c6e0d02976bf0
      https://github.com/llvm/llvm-project/commit/bd2cfc52e4c6f627bacc53c7d38c6e0d02976bf0
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h

  Log Message:
  -----------
  [PatternMatch] Implement match_fn using bind_back (NFC) (#175811)

Use llvm::bind_back landed in d2a521750 ([ADT] Introduce
bind_{front,back}, [not_]equal_to, #175056) to simplify implementations
of match_fn in PatternMatch and VPlanPatternMatch.


  Commit: 4958c4c1c3f698d60be54d04e67503e9f9c32b6d
      https://github.com/llvm/llvm-project/commit/4958c4c1c3f698d60be54d04e67503e9f9c32b6d
  Author: Anshul Nigham <nigham at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [NewPM] Extract logic for X86 SLH into a separate class (#175718)

This will enable easier migration to NewPM


  Commit: 74f023d757eefe72e29797028d7b7f190690075d
      https://github.com/llvm/llvm-project/commit/74f023d757eefe72e29797028d7b7f190690075d
  Author: Dean Frampton <dean at deanframpton.co.nz>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-cov/branch-templates.test
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-cov/CoverageViewOptions.h

  Log Message:
  -----------
  [llvm-cov] Add show-function-summary option in coverage report (#172980)

Adds a command line argument to llvm-cov to optionally disable the
function summary in the coverage report (but maintaining existing
behavior by keeping it enabled by default).


  Commit: ecf8211fda3ec81a2ac89f805cb915a3ac352aec
      https://github.com/llvm/llvm-project/commit/ecf8211fda3ec81a2ac89f805cb915a3ac352aec
  Author: Prathamesh Tagore <63031630+meshtag at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td

  Log Message:
  -----------
  [mlir][gpu] Guard negative workgroup_attributions in GPU ops (#174409)


  Commit: d69335bac9d218ed5dadeebed66b600347d5db8e
      https://github.com/llvm/llvm-project/commit/d69335bac9d218ed5dadeebed66b600347d5db8e
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/ProfDataUtils.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/Scalar/GVNHoist.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp

  Log Message:
  -----------
  [LLVM] Clean up code using [not_]equal_to (NFC) (#175824)

Use llvm::[not_]equal_to landed in d2a521750 ([ADT] Introduce
bind_{front,back}, [not_]equal_to, #175056) across LLVM for cleaner
code.


  Commit: 6e0ef1cf74559023eb420624f280c52572e196d3
      https://github.com/llvm/llvm-project/commit/6e0ef1cf74559023eb420624f280c52572e196d3
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/source/DataFormatters/TypeSynthetic.cpp

  Log Message:
  -----------
  [lldb] Rename AutoPointer typedef to UniquePointer (NFC) (#175806)


  Commit: 94d0ab0b1dead21cb777865daaccdd847f935c87
      https://github.com/llvm/llvm-project/commit/94d0ab0b1dead21cb777865daaccdd847f935c87
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td

  Log Message:
  -----------
  AMDGPU: Enable selection of strict_fp16_to_fp (#175834)

This avoids regressions when softPromoteHalfType is switched on.


  Commit: 870ffbd9ed566079227f24606c88c5d9276378ea
      https://github.com/llvm/llvm-project/commit/870ffbd9ed566079227f24606c88c5d9276378ea
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile

  Log Message:
  -----------
  [Github] Bump CI Container LLVM Version to 21.1.8

Update to the last release of v21.1.x to keep things up to date.


  Commit: d11ef6a2b86a70ac7f20c7b164fbe6faab0dd8a1
      https://github.com/llvm/llvm-project/commit/d11ef6a2b86a70ac7f20c7b164fbe6faab0dd8a1
  Author: Eric Feng <55723758+efric at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/test/Conversion/MemRefToSPIRV/alloc.mlir

  Log Message:
  -----------
  [mlir][spirv] Allow complex element types in memref allocation checks (#175836)

Support for complex types in SPIR-V was introduced in
97f3bb73a29a566e99e33ae4338c2c3d9957e561, and memref type conversion was
updated accordingly to include them. However, the element type precheck
used during memref alloc/dealloc pattern matching in the SPIR-V lowering
was not updated to recognize complex element types. This patch resolves
this inconsistency.

Fixes: https://github.com/iree-org/iree/issues/23117

---------

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


  Commit: 35a20d7e92f689d9c026452e82d47ca130a9c024
      https://github.com/llvm/llvm-project/commit/35a20d7e92f689d9c026452e82d47ca130a9c024
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/externally-initialized.ll

  Log Message:
  -----------
  [SPIRV] Handle `externally_initialized` for AMDGCN flavoured SPIRV (#175277)

SPIR-V doesn't currently have a way to encode the `externally_initialized` LLVM concept. Unfortunately, certain HIP constructs (e.g. `__managed__` or `__constant__` variables) rely on it. Hence, this patch allows AMDGCN flavoured SPIR-V to encode `externally_initialized` via the `HostAccessINTEL` decoration, which approximates some of the semantics; the decoration is handled during reverse translation. It also appears that we never fully implemented the decoration, which I intend to handle in a subsequent, independent patch.


  Commit: ac15ac90e3ad3606b0a24de4c866b537fe41ceb7
      https://github.com/llvm/llvm-project/commit/ac15ac90e3ad3606b0a24de4c866b537fe41ceb7
  Author: keinflue <keinflue at posteo.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/test/Sema/scope-check.c

  Log Message:
  -----------
  [clang] Restore diagnostic for certain jumps into VLA(ish) scopes. (#175833)

Commit 543f112e148a enabled diagnostics for C++ compatibility for jumps
over initialization of variables. However, inadvertently this may cause
a prior diagnostic for jumps into scopes of variables with variably
modified types to be replaced with the less severe C++ compatibility
warning, resulting in impossible codegen.

This skips the check for the C++ compatibility warning if there is
already another diagnostic planned for the scope.

Fixes #175540


  Commit: 1327c50ef199b481f5326cf6ca3710fc111b70b1
      https://github.com/llvm/llvm-project/commit/1327c50ef199b481f5326cf6ca3710fc111b70b1
  Author: Shubh Pachchigar <33875085+shubhe25p at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/config/config.json
    A libc/config/windows/config.json
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/char_converter.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/linux/error_mapper.h
    M libc/src/stdio/printf_core/parser.h
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] Support %lc in printf (#169983)

Add support for %lc in printf by calling internal wcrtomb function and
relevant end-to-end sprintf test. Additionally, modified printf parser
for recognizing length modifier and added two internal error codes. Also
added a flag to disable wchar support on windows platform. Resolves
#166598

Co-authored-by: shubh at DOE <shubhp at mbm3a24.local>


  Commit: 0133247567a2e69e107bcdd4b1d72fe93b7f93f9
      https://github.com/llvm/llvm-project/commit/0133247567a2e69e107bcdd4b1d72fe93b7f93f9
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvtn.ll
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sme-pstate-sm-changing-call-disable-coalescing.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-add-sub-za16.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvtn.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-faminmax.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fmlas.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4-lane-x4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlall.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlals.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4-fp8.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x1.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x2.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-rshl.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-select-sme-tileslice.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sqdmulh.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sub.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-tmop.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-uclamp.ll
    M llvm/test/CodeGen/AArch64/sme2p2-intrinsics-fmul.ll
    M llvm/test/CodeGen/AArch64/streaming-compatible-memory-ops.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-fmsub.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-contiguous-prefetches.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ldN-sret-reg+imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqdec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqinc.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-reg-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-and-combine.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bitselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-build-vector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-concat.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-log.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mul.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ld2-alloca.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-limit-duplane.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-log-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-gather-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ptest.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-vector-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
    M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-luti.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve2p1-dots-partial-reduction.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-crypto.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pp.ll

  Log Message:
  -----------
  [AArch64] Enable subreg liveness tracking for streaming functions. (#174189)

Most use of subreg liveness tracking will be for streaming SME2
functions where it can use the strided- and contiguous form of the
multi-vector LD1, see #123081 for details.

Any regressions come from disabling coalescing of SUBREG_TO_REG when
sub-reg liveness tracking is enabled, which may introduce some scalar
`mov`s and may limit some peephole optimizations from the load-store
optimizer, but the impact of disabling coalescing seems limited in
practice (empirically from trying this on workloads) and we think the
regressions are offset by improvements to the handling of multi-vector
instructions (tuple registers) in SME2.

PR #174188 addresses these issues in a separate PR.


  Commit: 9fc7c429752ed87a36f383ee47bad575fea7702a
      https://github.com/llvm/llvm-project/commit/9fc7c429752ed87a36f383ee47bad575fea7702a
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/ldst-implicitop.mir

  Log Message:
  -----------
  [AArch64] Let LoadStoreOptimizer handle renamable implicit-defs. (#174186)

The LoadStoreOptimizer is very conservative with handling instructions
that have implicit-def operands and only support them for 2
instructions. However, they can be considered when a MachineOperand is
marked explicitly as 'renamable'.


  Commit: b2c7e734cbd7a00d1c72f1e6fcef8ee04dfd92c6
      https://github.com/llvm/llvm-project/commit/b2c7e734cbd7a00d1c72f1e6fcef8ee04dfd92c6
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLForwardCompat.h
    M llvm/include/llvm/Support/Compiler.h

  Log Message:
  -----------
  [ADT] Hide no_unique_address behind a macro (#175841)

This attribute was introduced in C++20 and not available across all compilers.


  Commit: feeb934a3c4d825cd673f01416c39ca73ede170f
      https://github.com/llvm/llvm-project/commit/feeb934a3c4d825cd673f01416c39ca73ede170f
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang-tools-extra/Maintainers.rst

  Log Message:
  -----------
  [clang-tools-extra] Update Maintainers for Clang-Doc (#175822)

Currently, Erick Velez has been doing the bulk of clang-doc development.
We're also moving one of the old maintainers that hasn't participated in
almost a year to inactive.


  Commit: 64430b4f099a96aa9e60752860a3179da57bd20a
      https://github.com/llvm/llvm-project/commit/64430b4f099a96aa9e60752860a3179da57bd20a
  Author: Bruno De Fraine <brunodf at synopsys.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    M clang/test/CodeGenCXX/pragma-unroll.cpp

  Log Message:
  -----------
  [clang][CodeGenCXX] Fix pragma unroll test patterns (NFC) (#175860)

These tests were not testing the loop metadata that they suggest to be
testing. They would define FileCheck variables such as `UNROLL_8` for
metadata nodes and then later redefine instead of use them (redefinition
always succeeds and thus checks nothing). The error was likely
introduced because the earlier loop metadata nodes, which must define
the variables at the first occurrence, were copy-pasted for later loop
metadata nodes, without realizing that the variable definitions in the
FileCheck pattern must be changed to uses to match later occurrences of
the same metadata node. By matching the metadata section with a block of
DAG patterns, we can define variables such as `UNROLL_8` with a pattern
that matches at the metadata node definition, even if it occurs later,
and the loop metadata nodes can be matched with uniform patterns. This
system is also used in the `pragma-loop.cpp` test.


  Commit: 4a8ecccd70177bff1674ac543ff8645827c82356
      https://github.com/llvm/llvm-project/commit/4a8ecccd70177bff1674ac543ff8645827c82356
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
    M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Pass inst_data for blocking create/constant Mask and Step op (#175456)


  Commit: 02984cf61b71eba87752fcc9b0abe511eeb7dd1b
      https://github.com/llvm/llvm-project/commit/02984cf61b71eba87752fcc9b0abe511eeb7dd1b
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/test/CIR/CodeGen/binassign.c
    A clang/test/CIR/CodeGen/fold-during-cg.c
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/placement-new.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c

  Log Message:
  -----------
  [CIR] Attempt to fold casts and unary ops during codegen (#175675)

This change introduces basic folding of casts and unary ops as they are
created this is needed in order to allow later codegen pieces, such as
builtin handlers, to more easily identify and examine constant operands.
For example, many X86 builtin functions use a default mask operand of
-1, which was previously generated as a constant 1 and a unary minus.

In some cases, the folding process leaves behind unused constant
operations, so I am also added a simple change to the canonicalize pass
to remove unused constants. We had other places where unused constants
were being generated already, and this change cleans those up too.


  Commit: 8fa680b9d94ad3f3f04d9c0e60485ed546463c94
      https://github.com/llvm/llvm-project/commit/8fa680b9d94ad3f3f04d9c0e60485ed546463c94
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/test/CodeGen/AArch64/win-import-call-optimization.ll

  Log Message:
  -----------
  [win][aarch64] Called globals must match for instructions to be considered identical (#175798)

When trying to enable AArch64 Import Call Optimization for Windows, we
noticed an issue where a call to an incorrect function was happening
after the loader replaced a branch instruction. The root cause of this
was that LLVM had decided to fold two branch instructions into one as
they were both branches to the same register, however the value of the
register would be different in either path as they were branches for
different imported functions.

This change updates `MachineInstr::isIdenticalTo` to also consider any
"called global" that is attached to the instruction, and will consider
two instructions as "not the same" if the globals differ.

Also fixed a possible source of non-determinism: switched from using a
`DenseMap` to using a `vector` for mapping sections to lists of called
globals (we don't expect many sections, so no need to use a map) and
sort the map by section name before emitting.


  Commit: 0f24d0fb6cb08a9eb0ae80a1da6cba5b5910fa7c
      https://github.com/llvm/llvm-project/commit/0f24d0fb6cb08a9eb0ae80a1da6cba5b5910fa7c
  Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/unittests/Language/CPlusPlus/CMakeLists.txt
    A lldb/unittests/Language/CPlusPlus/LibStdcppTupleTest.cpp

  Log Message:
  -----------
  [lldb] Fix null pointer crash in LibStdcppTupleSyntheticFrontEnd::Update (#175700)

When displaying a backtrace with std::tuple function arguments,
GetChildAtIndex() can return a null ValueObjectSP. The code was
dereferencing this pointer without checking for null, causing a SIGSEGV
crash when LLDB tried to pretty-print function arguments containing
tuples.


This PR fix the crash and add unit test which would crash before this PR
and only pass after this PR.

---------

Co-authored-by: George Hu <georgehuyubo at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 9f7af289728002487b032a8278bc2c540a02ff59
      https://github.com/llvm/llvm-project/commit/9f7af289728002487b032a8278bc2c540a02ff59
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchOptWInstrs.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/test/CodeGen/LoongArch/expand-call.ll
    M llvm/test/MC/LoongArch/Macros/macros-call.s

  Log Message:
  -----------
  [llvm][LoongArch] Add call and tail macro instruction support (#175357)

Link:
https://sourceware.org/pipermail/binutils/2025-December/146091.html


  Commit: fb0653c36b84d5d53180e2374f52e72035944c41
      https://github.com/llvm/llvm-project/commit/fb0653c36b84d5d53180e2374f52e72035944c41
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py

  Log Message:
  -----------
  [lldb] Change po fallback messaging (#175847)

When an object description expression fails, instead of emitting an error, mark it as a
warning instead. Additionally, send the more low level details of the failure to the
`expr` log, and show a more user friendly message:

> `po` was unsuccessful, running `p` instead

rdar://165190497


  Commit: 386d9399731d28532e38b9820f3a44a9cfbead77
      https://github.com/llvm/llvm-project/commit/386d9399731d28532e38b9820f3a44a9cfbead77
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl

  Log Message:
  -----------
  [OpenCL] Set KHR extensions minimum version to OpenCL 1.0 (#175120)

Motivation is similar to 25cfdaa4e9dc. Their spec don't specify a
required OpenCL version. Targets may expose them before OpenCL 1.2.
Set KHR extensions (depth images, mipmaps, subgroups, kernel clock, dot
product, ext_float_atomics, extended_bit_ops, cles_khr_int64) to
availability 1.0.
Changes to opencl-c.h:
* Relax header and test guards to allow extension macros whenever any
OpenCL C version is defined.
* Relax cl_khr_depth_images guard to allow cl_khr_depth_images, OpenCL
C++, or OpenCL C 2.0+, since image2d_depth_t and image2d_array_depth_t
types require that coverage.
* Guard image1d_t, image1d_array_t and image2d_array_t types with OpenCL
C++ or OpenCL C 1.2+ to match with OpenCL C spec.

Relates to https://github.com/KhronosGroup/OpenCL-CTS/pull/2376.


  Commit: 7584c280631a90d72e49e3ec5b9f4f1d3609bd98
      https://github.com/llvm/llvm-project/commit/7584c280631a90d72e49e3ec5b9f4f1d3609bd98
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    A clang/test/CIR/IR/method-attr.cir

  Log Message:
  -----------
  [CIR] Upstream CIR method attribute handling (#174640)

This adds code for generating cir.method attributes and lowering them to
LLVM IR to implement support the C++ method pointer variables.


  Commit: 0b783f5a76c76efcde1272ae3692fbfa45f9fdcc
      https://github.com/llvm/llvm-project/commit/0b783f5a76c76efcde1272ae3692fbfa45f9fdcc
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [MC/DC] Refactor MCDCCoverageBuilder. NFC. (#125409)

- Get rid of the old `DecisionStack` and dissolve it into push/pop
`CurCondIDs` in `VisitBin`, since `VisitBin` is recursive.

- Introduce the new `DecisionStack` with `DecisionState` to handle the
current `Decision` in nested `Decision`s.
  - The stack has the sentinel that has `DecisionExpr = nullptr`.
- Split out `checkDecisionRootOrPush` from `pushAndAssignIDs` for
non-BinOp. It assigns `CondID` to `E` (instead of assignment LHS in
`pushAndAssignIDs`).
  - The stack is manupilated at the top Decision operator in `VisitBin`.
- The stack grows at the entrance of the Decision with the initial
state.
- In the same level in `VisitBin`, the stack is popped and the
`Decision` record is emitted.
- Introduce `DecisionEndToSince` to sweep `MCDCBranch`es partially in
`cancelDecision`.


  Commit: b1e4f269287cf981c1fcb8267c5f0e6678c2311e
      https://github.com/llvm/llvm-project/commit/b1e4f269287cf981c1fcb8267c5f0e6678c2311e
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M bolt/test/AArch64/epilogue-determination.s

  Log Message:
  -----------
  [BOLT][AArch64] Fix epilogue-determination test (#175668)

Define jump table for each function, for conformance and better clarity.


  Commit: 95da1354d03bf66594d0bd1763b9c9c5fbcf8843
      https://github.com/llvm/llvm-project/commit/95da1354d03bf66594d0bd1763b9c9c5fbcf8843
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/config/config.json
    R libc/config/windows/config.json
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/char_converter.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/linux/error_mapper.h
    M libc/src/stdio/printf_core/parser.h
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  Revert "[libc] Support %lc in printf (#169983)"

This reverts commit 1327c50ef199b481f5326cf6ca3710fc111b70b1.

The printf headers are intended to be header-only, this introduces
external symbol dependencies.


  Commit: c0edf7894eb9ef09baaf94510441f93c4bbaaaa8
      https://github.com/llvm/llvm-project/commit/c0edf7894eb9ef09baaf94510441f93c4bbaaaa8
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .github/workflows/containers/github-action-ci-tooling/Dockerfile

  Log Message:
  -----------
  [Github] Bump clang-format version to 21.1.8 for formatting job (#175850)

In line with the current de-facto support policy of bumping to the
first/last versions of a release.


  Commit: be8924740325ba74232ba083cd86f940c01b354c
      https://github.com/llvm/llvm-project/commit/be8924740325ba74232ba083cd86f940c01b354c
  Author: Liu Ke <liuke.gehry at bytedance.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/test/DebugInfo/CXX/simple-template-names.cpp

  Log Message:
  -----------
  [DebugInfo] Set the DI flag for the simplified name of a template function/type (2/3). (#175708)

Set the `NameIsSimplified` flag for a template function/type that is
treated as having simplified names. Previous patch: #175130 .
Based on:
[RFC](https://discourse.llvm.org/t/rfc-debuginfo-selectively-generate-template-parameters-in-the-skeleton-cu/89395).


  Commit: c560f1cf03aa06c0bdd00c5a9b558c16d882af6f
      https://github.com/llvm/llvm-project/commit/c560f1cf03aa06c0bdd00c5a9b558c16d882af6f
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/Modules/pr149404-02.cppm
    A clang/test/Modules/pr172241.cppm

  Log Message:
  -----------
  [Serialization] Stop demote var definition as declaration (#172430)

Close https://github.com/llvm/llvm-project/issues/172241
Close https://github.com/llvm/llvm-project/issues/64034
Close https://github.com/llvm/llvm-project/issues/149404
Close https://github.com/llvm/llvm-project/issues/174858

After this patch, we (the clang dev) no longer assumes there are at
most one definition in a redeclaration chain.

See

https://discourse.llvm.org/t/rfc-clang-not-assuming-there-is-at-most-one-definition-in-a-redeclaration-chain/89360
for details.


  Commit: 309ca6dd4775368e5810b3f3b41f3c0b9c489343
      https://github.com/llvm/llvm-project/commit/309ca6dd4775368e5810b3f3b41f3c0b9c489343
  Author: Victor Mustya <victor.mustya at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Headers/opencl-c.h

  Log Message:
  -----------
  [Clang][OpenCL] Add cl_intel_split_work_group_barrier extension (#175878)

The extension adds support for split work group barriers in OpenCL C.
The spec is available at:

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


  Commit: f7b943e4ed5c46a340f16bda42e20b9d43f52fef
      https://github.com/llvm/llvm-project/commit/f7b943e4ed5c46a340f16bda42e20b9d43f52fef
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/ranges/range.adaptors/range.join.with/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/deref.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/iter_move.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.sentinel/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/base.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/begin.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/end.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges][NFC] Merge  `join_with_view`s `[[nodiscard]]` tests (#175734)

This just merges all tests in a single `nodiscard.verify.cpp` as is the
common practice.


  Commit: 6e62d40b7c65a67ac0e5c6e0f462ce2663db98b9
      https://github.com/llvm/llvm-project/commit/6e62d40b7c65a67ac0e5c6e0f462ce2663db98b9
  Author: Krish Gupta <krishom70 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/test/Semantics/OpenMP/linear-clause01.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix LINEAR clause validation and test expectations (#175707)

Fixes #175688

After #175383 was merged, the test
`Semantics/OpenMP/linear-clause01.f90` was failing because it had an
early return that prevented multiple errors from being reported.

This PR fixes two issues:

1. **Removes the early return** after detecting a modifier error on
DO/SIMD directives. Previously, when a modifier error was found, the
function would return immediately without checking other restrictions
like the scalar requirement. Now all applicable errors are reported.

2. **Updates test expectations** to expect both the modifier error AND
the scalar error for Case 1, where `arg(:)` is an array used with `uval`
modifier on a DO directive.

Thanks to @NimishMishra for catching this during review - arrays should
always be rejected in LINEAR clauses (except for `declare simd` with
`ref` modifier), regardless of whether there are other errors.


  Commit: 7cc013af9c8070a11821faa7e3ac00bf531c4829
      https://github.com/llvm/llvm-project/commit/7cc013af9c8070a11821faa7e3ac00bf531c4829
  Author: Teja Alaghari <teja.alaghari at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/lib/CodeGen/RegisterUsageInfo.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll

  Log Message:
  -----------
  [CodeGen][NPM] Add support for -print-regusage in New Pass Manager (#169761)

Support `-print-regusage` flag in NPM for printing register usage information


  Commit: 0e6ef95f5e46cb9e75fe87a242ac845890e6f10d
      https://github.com/llvm/llvm-project/commit/0e6ef95f5e46cb9e75fe87a242ac845890e6f10d
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass.ll
    M llvm/test/CodeGen/RISCV/rvv/vfclass-sdnode.ll

  Log Message:
  -----------
  [RISCV][llvm] Support IS_FPCLASS codegen for zvfbfa (#175758)


  Commit: 2f2ec93a83f91e182d7d17761a334acb34874bb0
      https://github.com/llvm/llvm-project/commit/2f2ec93a83f91e182d7d17761a334acb34874bb0
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support vselect codegen for P extension (#175744)

The only difference between vselect vs. select is condition value(a.k.a.
mask), we can select by using bitwise operation:
vselect(mask, true, false) = (mask & true) | (~mask & false)


  Commit: c7e4350cdc7772c045016769c99c4f60de745805
      https://github.com/llvm/llvm-project/commit/c7e4350cdc7772c045016769c99c4f60de745805
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support select codegen for P extension (#175741)

This is scalar condition with fixed vector true/false value, we can just
handle it same as scalars.


  Commit: 84c19e7cf303a0525fd6c7bf5d03053714402c91
      https://github.com/llvm/llvm-project/commit/84c19e7cf303a0525fd6c7bf5d03053714402c91
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Interpreter/IncrementalExecutor.cpp

  Log Message:
  -----------
  [clang-repl] Use more precise search to find the orc runtime. (#175805)

The new mechanism relies on the path in the toolchain which should be
the autoritative answer. This patch tweaks the discovery of the orc
runtime from unittests where the resource directory is hard to deduce.

Should address the issue raised in #175435 and #175322


  Commit: d186277e6b5f051262422165fac2885ad925cca5
      https://github.com/llvm/llvm-project/commit/d186277e6b5f051262422165fac2885ad925cca5
  Author: Batzorig Zorigoo <batzorig1691 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/test/Dialect/Bufferization/canonicalize.mlir
    M mlir/test/Dialect/SparseTensor/fuse_sparse_pad_with_consumer.mlir
    M mlir/test/Dialect/SparseTensor/sparse_conv_2d_slice_based.mlir
    M mlir/test/Dialect/SparseTensor/sparse_pack.mlir
    M mlir/test/Dialect/SparseTensor/sparse_perm_lower.mlir

  Log Message:
  -----------
  [MLIR][Bufferization] Fold LoadOp only when the buffer is read only (#172595)

When we `memref.load` from a buffer, it folded to `tensor.extract` even
when the buffer was writable, causing unexpected results. For example:

```mlir
func.func @load_after_write_from_buffer_cast(%arg0: index, %arg1: index,
                            %arg2: tensor<?x?xf32>) -> f32 {
  %0 = bufferization.to_buffer %arg2 : tensor<?x?xf32> to memref<?x?xf32>
  linalg.ceil ins(%0 : memref<?x?xf32>) outs(%0 : memref<?x?xf32>)
  %1 = memref.load %0[%arg0, %arg1] : memref<?x?xf32>
  return %1 : f32
}
```
would fold into
```mlir
module {
  func.func @load_after_write_from_buffer_cast(%arg0: index, %arg1: index, %arg2: tensor<?x?xf32>) -> f32 {
    %0 = bufferization.to_buffer %arg2 : tensor<?x?xf32> to memref<?x?xf32>
    linalg.ceil ins(%0 : memref<?x?xf32>) outs(%0 : memref<?x?xf32>)
    %extracted = tensor.extract %arg2[%arg0, %arg1] : tensor<?x?xf32>
    return %extracted : f32
  }
}
```


  Commit: fc81a665133fe757741d68f07245d5f696a65346
      https://github.com/llvm/llvm-project/commit/fc81a665133fe757741d68f07245d5f696a65346
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp

  Log Message:
  -----------
  [NFC][Linalg] Add `matchConvolutionOpOfType` API and make `isaConvolutionOpOfType` API a wrapper (#174722)

-- This commit involves the following updates pertaining to
`isaConvolutionOpOfType` API :-
1. We don't want dilations/strides of convolution op to be returned as
pointer arguments to the API function - to tackle this we create a new
API `matchConvolutionOpOfType` which would return an optional struct of
dilations/stride.
2. To not break the original API's use case as a simple querying
functionality with true/false return - we keep `isaConvolutionOpOfType`
as a wrapper API which will invoke `matchConvolutionOpOfType` API and
return true/false depending on whether `matchConvolutionOpOfType` API
returned any value or not.
3. Dilations/strides of named convolution op are also populated now (it
was missed in the previous PRs while creating `isaConvolutionOpOfType`).
4. [Max/Min]UnsignedPool ops' body matcher now only matches unsigned int
ops (refer: https://github.com/llvm/llvm-project/pull/166070)

-- No tests are being added as all the above are NFC changes around the
API which already is being tested via Specialize.cpp.

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


  Commit: 0ae23ca9e69f8afc59900b93304809db78fdb832
      https://github.com/llvm/llvm-project/commit/0ae23ca9e69f8afc59900b93304809db78fdb832
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Split out optimizeEVLMasks. NFC (#174925)

Addresses part of #153144 and splits off part of #166164

There are two parts to the EVL transform:

1) Convert the loop so the number of elements processed each iteration
is EVL, not VF. The IV and header mask are replaced with EVL-based
variants.
2) Optimize users of the EVL based header mask to VP intrinsic based
recipes.

(1) changes the semantics of the vector loop region, whereas (2) needs
to preserve them. This splits (2) out so we don't mix the two up, and
allows us to move (1) earlier in the pipeline in a future PR.


  Commit: 6ddab42952eeccf7aedefade42611a272ba72745
      https://github.com/llvm/llvm-project/commit/6ddab42952eeccf7aedefade42611a272ba72745
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [clang-tidy] Fix false positive from `readability-redundant-typename` on partially specialized variables (#175473)

Fixes #174827.


  Commit: f51eca20cf5ff825edc8f2d3eb51b80af5e5794b
      https://github.com/llvm/llvm-project/commit/f51eca20cf5ff825edc8f2d3eb51b80af5e5794b
  Author: Wei Wang <apollo.mobility at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/test/Transforms/PGOProfile/indirect_call_promotion_unique.ll

  Log Message:
  -----------
  [IndirectCallPromotion] Proper canonicalize coroutine function (#175606)

Fix an issue where coroutine function and its await suspend wrappers are
all canonicalized to the same name. This creates duplicate entries in
`MD5FuncMap` (a sorted vector) and may return an incorrect GUID that
mismatches the one from prof metadata and miss ICP. For example, coro
function `foo` and its wrappers `foo.__await_suspend_wrapper__init`,
`foo.__await_suspend_wrapper__final` are all canonicalized to `foo`.
During GUID lookup, any of them can be returned due to unstable sort.
This is more of the reliability issue (the indeterminism) than a
performance issue because hot indirect calls should've been promoted in
sample loader pass.

This also fixes the same naming issue in `CGProfile` where symtab is
created. By the time the pass is run, wrapper functions should already
be inlined but naming collision can happen to the coro function and its
post-split clones (`foo.resume`, `foo.cleanup`).

This change
* Unifies `InstrProfSymtab::getCanonicalName` with
`FunctionSamples::getCanonicalFnName` by providing a customized list of
suffixes to remove instead of removing everything after the first dot
(.) except ".__uniq.". This also addresses the "FIXME" comment.
* Uses stable sort when storing `MD5FuncMap` which avoids indeterminism
during GUID lookup. `MD5FuncMap` can still contain duplicate entries
even with this change, because no check is done before insertion. Making
entries unique needs some additional work.
* Checks for same PGO names before calling the second `addFuncWithName`,
which does nothing in case of name match.


  Commit: 48ce7bb0388e26eeae149ee23db2308dcc1e3c4a
      https://github.com/llvm/llvm-project/commit/48ce7bb0388e26eeae149ee23db2308dcc1e3c4a
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/multiple-result-intrinsics.ll

  Log Message:
  -----------
  [LV] Fix bug in setVectorizedCallDecision (#175742)

There is a bug in this logic:

```
   InstructionCost Cost = ScalarCost;
   InstWidening Decision = CM_Scalarize;

   if (VectorCost <= Cost) {
     Cost = VectorCost;
     Decision = CM_VectorCall;
   }

   if (IntrinsicCost <= Cost) {
     Cost = IntrinsicCost;
     Decision = CM_IntrinsicCall;
   }
```

because it assumes that the comparisons behave sensibly in the face of
invalid costs. Unfortunately, PR #174835 exposes an issue when
attempting to vectorise the new test
uadd_with_overflow_i32 for AArch64 targets. Specifically, there are
situations where all costs are invalid (e.g. VF=vscale x 1), but some
costs are more invalid than others. For example, when querying the
intrinsic cost via the TTI hook we get an invalid cost with a non-zero
value, whereas the vector cost is invalid with a zero value. That leads
to us erroneously choosing CM_VectorCall as the call widening decision,
despite the lack of a vector math variant. Inevitably this causes
crashes because we create a VPCallWidenRecipe without a variant
function.

Fix this by only performing comparisons if the costs are valid. It now
leads to us choosing CM_Scalarize more often, but it's a toin coss
anyway between CM_Scalarize and CM_IntrinsicCall when both strategies
are invalid. Potentially we could also create a new strategy called
CM_Invalid, and avoid the creation of VPlans entirely.


  Commit: d5c11b9a24c84f1afe0eb911420d654e711de568
      https://github.com/llvm/llvm-project/commit/d5c11b9a24c84f1afe0eb911420d654e711de568
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 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/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll

  Log Message:
  -----------
  [VPlan] Replace PhiR operand of ComputeRdxResult with VPIRFlags. (#174026)

Remove the artificial PhiR operand of ComputeReductionResult, which was
only used to look up recurrence kind, in-loop and ordered properties.

Instead, encode them as VPIRFlags as suggested by @ayalz in
https://github.com/llvm/llvm-project/pull/170223.

This addresses a TODO to make codegen for ComputeReductionResult
independent of looking up information from other recipes.

This is NFC w.r.t. codegen, the printing has been improved to include
the reduction type, and whether it is in-loop/ordered.

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


  Commit: ef44d25971cc5cf0a4f0488aacadb0709e164ed7
      https://github.com/llvm/llvm-project/commit/ef44d25971cc5cf0a4f0488aacadb0709e164ed7
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/builtin-bit-cast.cpp
    M clang/test/AST/ByteCode/functions.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/SemaCXX/builtin-is-within-lifetime.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp

  Log Message:
  -----------
  [clang][ExprConst] Diagnose out-of-lifetime access consistently (#175562)

Previously, we had two very similar diagnostics, "read of object outside
its lifetime" and "read of variable whose lifetime has ended".
The difference, as far as I can tell, is that the latter was used when
the variable was created in a function frame that has since vanished,
i.e. in this case:
```c++
constexpr const int& return_local() { return 5; }
static_assert(return_local() == 5);
```
so the output used to be:
```console
array.cpp:602:15: error: static assertion expression is not an integral constant expression
  602 | static_assert(return_local() == 5);
      |               ^~~~~~~~~~~~~~~~~~~
array.cpp:602:15: note: read of temporary whose lifetime has ended
array.cpp:601:46: note: temporary created here
  601 | constexpr const int& return_local() { return 5; }
      |                                              ^
```

But then this scenario gets the other diagnostic:
```c++
constexpr int b = b;
```
```console
array.cpp:603:15: error: constexpr variable 'b' must be initialized by a constant expression
  603 | constexpr int b = b;
      |               ^   ~
array.cpp:603:19: note: read of object outside its lifetime is not allowed in a constant expression
  603 | constexpr int b = b;
      |                   ^
```

With this patch, we diagnose both cases similarly:
```c++
constexpr const int& return_local() { return 5; }
static_assert(return_local() == 5);
constexpr int b = b;
```
```console
array.cpp:602:15: error: static assertion expression is not an integral constant expression
  602 | static_assert(return_local() == 5);
      |               ^~~~~~~~~~~~~~~~~~~
array.cpp:602:15: note: read of object outside its lifetime is not allowed in a constant expression
  602 | static_assert(return_local() == 5);
      |               ^~~~~~~~~~~~~~
array.cpp:601:46: note: temporary created here
  601 | constexpr const int& return_local() { return 5; }
      |                                              ^
array.cpp:603:15: error: constexpr variable 'b' must be initialized by a constant expression
  603 | constexpr int b = b;
      |               ^   ~
array.cpp:603:19: note: read of object outside its lifetime is not allowed in a constant expression
  603 | constexpr int b = b;
      |                   ^
```

We do lose the "object" vs. "temporary" distinction in the note and only
mention it in the "created here" note. That can be added back if it's
important enough. I wasn't sure.


  Commit: 71cc38736c4d28ba262c6c27eb83461ad2ee7c7c
      https://github.com/llvm/llvm-project/commit/71cc38736c4d28ba262c6c27eb83461ad2ee7c7c
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll

  Log Message:
  -----------
  [InferAddressSpaces] Handle unconverted ptrmask (#140802)

In case a ptrmask cannot be converted to the new address space due to an
unknown mask value, this needs to be detcted and an addrspacecast is
needed to not hinder a future use of the unconverted return value of
ptrmask. Otherwise, users of this value will become invalid by receiving
a nullptr as an operand.

This LLVM defect was identified via the AMD Fuzzing project.

(See https://reviews.llvm.org/D80129 for an explanation of why some
ptrmasks are impossible to convert to other addrspaces.)


  Commit: c9cc782e0b5fddd22114cdf3c510ddea4959447f
      https://github.com/llvm/llvm-project/commit/c9cc782e0b5fddd22114cdf3c510ddea4959447f
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
    M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/test/CodeGen/LoongArch/block-address.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation-spill-32.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/LoongArch/code-models.ll
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/double-imm.ll
    M llvm/test/CodeGen/LoongArch/float-imm.ll
    M llvm/test/CodeGen/LoongArch/global-address.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-f.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-m.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll
    M llvm/test/CodeGen/LoongArch/musttail.ll
    M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
    M llvm/test/CodeGen/LoongArch/stack-protector-target.ll
    M llvm/test/CodeGen/LoongArch/tls-models.ll
    M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_reloc_addsub.s
    M llvm/test/MC/LoongArch/Basic/Integer/invalid.s
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected

  Log Message:
  -----------
  [llvm][LoongArch] Add PC-relative address materialization using pcadd instructions (#175358)

This patch adds support for PC-relative address materialization using
pcadd-class relocations, covering the HI20/LO12 pair and their GOT and
TLS variants (IE, LD, GD, and DESC).

Link:
https://gcc.gnu.org/pipermail/gcc-patches/2025-December/703312.html


  Commit: c705003e8c36c481b8ecfe2af38f03c4fbfa0e0c
      https://github.com/llvm/llvm-project/commit/c705003e8c36c481b8ecfe2af38f03c4fbfa0e0c
  Author: willmafh <willmafh at hotmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Format/WhitespaceManager.h
    M libcxxabi/src/cxa_personality.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestXMLRegisterFlags.py
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/utils/TableGen/Basic/TableGen.cpp
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.h

  Log Message:
  -----------
  [NFC] Exactly one kind typo fixes, change defintions to definitions. (#174333)


  Commit: 17aa32c243e7fad164a5b626d174646e0fb87adb
      https://github.com/llvm/llvm-project/commit/17aa32c243e7fad164a5b626d174646e0fb87adb
  Author: Subash B <subash.boopathi at multicorewareinc.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll

  Log Message:
  -----------
  [SPIRV]  Added support for the constrained arithmetic(Fmuladd) intrinsic  (#170270)

Added SPIR-V support for constrained arithmetic intrinsic fmuladd,
lowered as a sequence of OpFMul and OpFAdd with roundingmode, consistent
with the SPIR-V translator.


  Commit: aaa99a3e9acc3cf5c8c839df6c63b203341174b0
      https://github.com/llvm/llvm-project/commit/aaa99a3e9acc3cf5c8c839df6c63b203341174b0
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [clang-tidy] Fix false negatives around static data members in `readability-redundant-typename` (#175477)

Fixes #175475.


  Commit: 075e4672a69a90409af72aac1aa48859720a4d93
      https://github.com/llvm/llvm-project/commit/075e4672a69a90409af72aac1aa48859720a4d93
  Author: Subash B <subash.boopathi at multicorewareinc.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll

  Log Message:
  -----------
  [SPIRV] Added Support for the SPV_ALTERA_arbitrary_precision_floating_point Extension (#160054)

Added support for the SPV_ALTERA_arbitrary_precision_floating_point
extension, enabling all the arbitrary precision floating-point
operations with instruction definitions and test files.


  Commit: 1e96ee67a13b7fadbc0db12e4b8e33943281bbdd
      https://github.com/llvm/llvm-project/commit/1e96ee67a13b7fadbc0db12e4b8e33943281bbdd
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A llvm/test/Analysis/Delinearization/global_array_bounds.ll

  Log Message:
  -----------
  [Delinearization] Precommit global decl test. NFC. (#175173)

This precommits a test that should demonstrate that Delinearization can
succeed when we analyse the size of the global variable definition.


  Commit: 7db584562d04eae78c1aa99bcbfaaa96e9aec5b7
      https://github.com/llvm/llvm-project/commit/7db584562d04eae78c1aa99bcbfaaa96e9aec5b7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/Type.h
    M llvm/include/llvm/IR/User.h

  Log Message:
  -----------
  [IR] Add some missing LLVM_ABI

To fix the ids errors from #175875.


  Commit: a70f534abc0a8f551f24cc6a4256fa706e62704c
      https://github.com/llvm/llvm-project/commit/a70f534abc0a8f551f24cc6a4256fa706e62704c
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  Revert "[LifetimeSafety] Merge lifetimebound attribute on implicit 'this' across method redeclarations (#172146)"

This caused assertion failures, see comment on the PR:

  clang/lib/Sema/TypeLocBuilder.cpp:89:
  TypeLoc clang::TypeLocBuilder::pushImpl(QualType, size_t, unsigned int):
  Assertion `TLast == LastTy && "mismatch between last type and new type's inner type"' failed.

> Followup on https://github.com/llvm/llvm-project/pull/107627
> Fixes https://github.com/llvm/llvm-project/issues/62072
> Fixes https://github.com/llvm/llvm-project/issues/172013
> Fixes https://github.com/llvm/llvm-project/issues/175391
>
> This PR adds support for merging the `lifetimebound` attribute on the implicit `this` parameter when merging method declarations. Previously, if a method was declared with `lifetimebound` on its function type (which represents the implicit `this` parameter), this attribute would not be propagated to the method definition, causing lifetime safety warnings to be missed.
>
> The implementation adds helper functions to extract the `lifetimebound` attribute from a function type and to merge this attribute from an old method declaration to a new one when appropriate.

This reverts commit ef90ba684d012790c86ac1b5e7c6b325abe78803.


  Commit: a24784ce113decc5dae1b390c6c9d67e976dd6d3
      https://github.com/llvm/llvm-project/commit/a24784ce113decc5dae1b390c6c9d67e976dd6d3
  Author: Yao Hwang <95354972+yaohwang99 at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [ADT][NFC] Expose fltSemantics struct (#175676)

This patch moves the `fltSemantics` struct definition (along with
`fltNonfiniteBehavior`
and `fltNanEncoding` enums) from APFloat.cpp to APFloat.h, making them
part of the
public API.

Currently, downstream projects cannot define custom floating-point
semantics because
`fltSemantics` is an opaque forward declaration in the header. This
forces projects
with specialized float formats to either patch LLVM locally or request
new formats be added upstream for each variant. By exposing the struct,
downstream users can define their own semantics.


  Commit: f4e74b6e4eb14dbdb77035a65768f0f99e9d1106
      https://github.com/llvm/llvm-project/commit/f4e74b6e4eb14dbdb77035a65768f0f99e9d1106
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/test/Semantics/OpenMP/linear-clause01.f90

  Log Message:
  -----------
  Revert "[flang][OpenMP] Fix LINEAR clause validation and test expectations (#175707)"

This reverts commit 6e62d40b7c65a67ac0e5c6e0f462ce2663db98b9.

The change causes test failures clause-validity01.f90 on multiple
builders (links below):

https://lab.llvm.org/buildbot/#/builders/207/builds/12198
https://lab.llvm.org/buildbot/#/builders/140/builds/36994
https://lab.llvm.org/buildbot/#/builders/50/builds/19637
https://lab.llvm.org/buildbot/#/builders/172/builds/18946
https://lab.llvm.org/buildbot/#/builders/29/builds/20278
https://lab.llvm.org/buildbot/#/builders/80/builds/19622


  Commit: 75c597aa502f2caf6bb0be730d73411c92e79f54
      https://github.com/llvm/llvm-project/commit/75c597aa502f2caf6bb0be730d73411c92e79f54
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/Error.h
    M llvm/lib/Support/Error.cpp

  Log Message:
  -----------
  [llvm][Support] Remove unnecessary allocations when creating StringEr… (#175863)

…rors

The String Error class has three constructors .
StringError::StringError(const Twine &S, std::error_code EC)
StringError::StringError(std::error_code EC, const Twine &S) 
StringError::StringError(std::string &&S, std::error_code EC, bool
PrintMsgOnly)

When we use the `createStringError(std::error_code, char const *, ... )`
it ends up using twine variant and ends up creating a new string twice


  Commit: f51fdff835f27577928a370ff8f3838f3bd37fdf
      https://github.com/llvm/llvm-project/commit/f51fdff835f27577928a370ff8f3838f3bd37fdf
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M bolt/utils/docker-tests/Dockerfile

  Log Message:
  -----------
  [BOLT] Add Arm's large-bolt-tests in docker-tests (#174961)

docker-tests now runs out-of-tree tests from:
- https://github.com/arm/large-bolt-tests


  Commit: e4a75419508076a947da5e6184e69fbb447f7388
      https://github.com/llvm/llvm-project/commit/e4a75419508076a947da5e6184e69fbb447f7388
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/Delinearization.cpp
    M llvm/test/Analysis/Delinearization/fixed_size_array.ll
    M llvm/test/Analysis/Delinearization/validation_large_size.ll

  Log Message:
  -----------
  [Delinearization] Enable `delinearize-use-fixed-size-array-heuristic` (#175770)

It's time to enable this option so we can take the next steps,
see also the discussion in #175173. I.e., this is required to see
if we can take advantage of the size of statically declared
arrays during delinearization.


  Commit: 3c6502933ecfe4a5e23ada7079d232ffc07958dc
      https://github.com/llvm/llvm-project/commit/3c6502933ecfe4a5e23ada7079d232ffc07958dc
  Author: Dmitry Nechitaev <nechda6 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    A llvm/test/tools/llvm-objcopy/ELF/update-section-not-in-segment.test

  Log Message:
  -----------
  [ELF][Objcopy] Dont corrupt symbol table when `--update-section` is called for ELF files (#170462)

Fixes #168060


  Commit: 2fe39f24b2899cc71aabfad1dc8558f0754b5480
      https://github.com/llvm/llvm-project/commit/2fe39f24b2899cc71aabfad1dc8558f0754b5480
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/test/Transforms/AggressiveInstCombine/memchr.ll

  Log Message:
  -----------
  [AggressiveInstCombine] Avoid implicit truncation

Cast char to unsigned char to match the unsigned ConstantInt
constructor.


  Commit: bc010989719d11847ad6e608db5f1e7e11c8696a
      https://github.com/llvm/llvm-project/commit/bc010989719d11847ad6e608db5f1e7e11c8696a
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-valid.mlir

  Log Message:
  -----------
  [mlir][tosa] Shape operation level checks limited to MAX_SHAPE_LEN (#175020)

As a result of a recent specification change:
https://github.com/arm/tosa-specification/pull/29, the level checks for
TOSA shape operations are limited to MAX_SHAPE_LEN as opposed to
MAX_RANK. The reason for doing so is detailed in the specification
commit message.

This change also removes prior code which incorrectly checked all
`shapeTypes`, rather than checking the `shapeType` levels of just shape
operations, further aligning with the specification.


  Commit: 5f3b40ec7afa40da628edcfd85e934aa0e627718
      https://github.com/llvm/llvm-project/commit/5f3b40ec7afa40da628edcfd85e934aa0e627718
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Async/IR/Async.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp

  Log Message:
  -----------
  [mlir][Interfaces][NFC] Simplify and align `RegionSuccessor` design / API (#174945)

Simplify the design of `RegionSuccessor`. There is no need to store the
`Operation *` pointer when branching out of the region branch op (to the
parent). There is no API to even access the `Operation *` pointer.

Add a new helper function `RegionSuccessor::parent` to construct a
region successor that points to the parent. This aligns the
`RegionSuccessor` design and API with `RegionBranchPoint`:
* Both classes now have a `parent()` helper function.
`ClassName::parent()` can be used in documentation to precisely describe
the source/target of a region branch.
* Both classes now use `nullptr` internally to represent "parent".

This API change also protects against incorrect API usage: users can no
longer pass an incorrect parent op. If a region successor is not a
region of the region branch op, it *must* branch out of region branch op
itself ("parent"). However, the previous API allowed passing other
operations. There was one such API violation in a [test
case](https://github.com/llvm/llvm-project/pull/174945/files#diff-d5717e4a8d7344b2ff77762b8fa480bcfec0eeee97a86195c787d791a6217e13L71).

Also clean up the documentation to use the correct terminology (such as
"successor operands", "successor inputs") consistently.

Note: This PR effectively rolls back some changes from #161575. That PR
introduced `llvm::PointerUnion<Region *, Operation *>
successor{nullptr};`. It is unclear from the commit message why that
change was made.

Note for LLVM integration: You may have to slightly modify
`getSuccessorRegion` implementations: Replace
`RegionSuccessor(getOperation(), getOperation()->getResults())` with
`RegionSuccessor::parent(getResults())`.


  Commit: 9c7904bac281caf68be377daa4366c1f166c39f2
      https://github.com/llvm/llvm-project/commit/9c7904bac281caf68be377daa4366c1f166c39f2
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
    M llvm/lib/ExecutionEngine/JITLink/loongarch.cpp
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s

  Log Message:
  -----------
  [JITLink][LoongArch] Add reloc types for LA32R/LA32S (#175353)


  Commit: 776c09c212e945fdceeae240b42c38df3dd34727
      https://github.com/llvm/llvm-project/commit/776c09c212e945fdceeae240b42c38df3dd34727
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/find_if.h
    R libcxx/include/__memory/valid_range.h
    M libcxx/include/__utility/is_pointer_in_range.h
    A libcxx/include/__utility/is_valid_range.h
    M libcxx/include/module.modulemap.in
    M libcxx/include/streambuf
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/libcxx/utilities/is_valid_range.pass.cpp

  Log Message:
  -----------
  Revert "[libc++] Optimize std::find_if" (#175903)

`__builtin_assume_dereferenceable` currently implies that the pointer
given to it is non-null, even if the size is zero. This causes
miscompilations, since we consider [nullptr, nullptr) to be a valid
range.

Reverts llvm/llvm-project#167697


  Commit: c6f6efba3b692974d85ac0fb7a6f1cfe85d9b5cf
      https://github.com/llvm/llvm-project/commit/c6f6efba3b692974d85ac0fb7a6f1cfe85d9b5cf
  Author: Henry <33919933+sfu2 at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/TextAPI/TextStubV5.cpp
    M llvm/lib/Transforms/IPO/BlockExtractor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp

  Log Message:
  -----------
  [NFC] Implicit container copy cleanup (#174702)

A set of cleanup for redundant implicit container copies. Fixed with
const reference or move semantics.

e8996cb24 [AMDGPU] replace copy with const reference (NFC)
25ceecee8 [-Wunsafe-buffer-usage] Replace vector copy with reference
(NFC)
e1f5254e0 [AMDGPU] Replace copy with move semantics (NFC)
8261250d7 [InstCombine] Replace vector copy with move semantic (NFC)
749bb21de [CommandLine] Avoid vector copy for const argument (NFC)
b89526f90 [LoongArch] Remove unnecessary vector copy (NFC)
6b22bcf56 [TextAPI] Replace map copy with const reference (NFC)
a121519d8 [BlockExtract] Avoid copy semantic for ctor (NFC)
3034d3063 [LifetimeSafety] Avoid map copy for dump methods (NFC)

---------

Co-authored-by: sfu <afwbu8tp6 at mozmail.com>


  Commit: a8511fc31819510a11c04b9968cab7ccb9d62a86
      https://github.com/llvm/llvm-project/commit/a8511fc31819510a11c04b9968cab7ccb9d62a86
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-add-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_deinterleaved_loads.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_interleaved_stores.ll
    M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll

  Log Message:
  -----------
  [AArch64] Improve ISel for interleave2 of unpacked types (#175585)

This applies to predicate types and scalable FP/BFP vectors.


  Commit: c173281cdc046bdc4281118f75ca584f223646eb
      https://github.com/llvm/llvm-project/commit/c173281cdc046bdc4281118f75ca584f223646eb
  Author: Mészáros Gergely <gergely.meszaros at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/lib/CodeGen/MachineInstr.cpp

  Log Message:
  -----------
  [MachineInst] Increase LLVM_MI_FLAGS_BITS to 32 bits (NFCI) (#175542)

We have hit the limit of 24 bits for LLVM_MI_FLAGS_BITS in upstream. In
our downstream target we are using additional bits, so we're hitting the
"Flag is out of range" assertions in get/setFlag functions.

Increase LLVM_MI_FLAGS_BITS to 32 bits, and reorder the fields of
MachineInstr to avoid extra padding and the subsequent increase in size.
Since the alignment of the class is 8 and the last member was 16-bit
before this change we can get more bits by moving things around.


  Commit: 2f43659011be6287bb57f2c43f988727c100ccc2
      https://github.com/llvm/llvm-project/commit/2f43659011be6287bb57f2c43f988727c100ccc2
  Author: David Green <david.green at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/neon-dot-product.ll

  Log Message:
  -----------
  [ARM] Add tablegen patterns for vsdot and vudot high index. (#174728)

The index on a vsdot and vudot instruction can be 0/1 from a D-reg, not 0/1/2/3
from a Q reg as would be expected. Add a pattern to allow extracting from the
high half of the input vector.

Fixes #174688


  Commit: 7f2ee745186770b8a017bf46156af51d2f69bce1
      https://github.com/llvm/llvm-project/commit/7f2ee745186770b8a017bf46156af51d2f69bce1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/utils/git/ids-check-helper.py

  Log Message:
  -----------
  [ci] Fix header paths in ids workflow (#175905)

Includes should not be prefixed with `include/llvm`.


  Commit: 75ea5f2a97570e1e884bc137fda40e15a532b6d1
      https://github.com/llvm/llvm-project/commit/75ea5f2a97570e1e884bc137fda40e15a532b6d1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 776c09c212e9


  Commit: 3836d498b664d67ac8ad2e3b8ada5dc07c7ca889
      https://github.com/llvm/llvm-project/commit/3836d498b664d67ac8ad2e3b8ada5dc07c7ca889
  Author: Bruno De Fraine <brunodf at synopsys.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CodeGenCXX/pragma-unroll.cpp
    M clang/test/Sema/unroll-template-value-crash.cpp

  Log Message:
  -----------
  [clang] Fix TemplateInstantiator crash transforming loop hint argument (#172289)

A generic lambda inside a generic function is (currently) instantiated twice. Thus the argument expression of a loop hint inside such a lambda may still be value dependent after the first instantiation and we must protect against this in `TransformLoopHintAttr`. We also fix a bug in this function where the special handling of an unroll(0|1) hint could be applied to *other* loop hints, if they receive an argument 1 after instantiation.


  Commit: 91b3fe03155eb078046d5237b03dbc2ffc5732e7
      https://github.com/llvm/llvm-project/commit/91b3fe03155eb078046d5237b03dbc2ffc5732e7
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang-rt/cmake/modules/GetToolchainDirs.cmake

  Log Message:
  -----------
  [Flang-RT][CMake] Remove redundant code. NFC. (#175917)

Two methods to extract the same data. Remove the one that is overwritten
later anyway.


  Commit: 18b004d39ba6b44d18c55acd1c2717a406417562
      https://github.com/llvm/llvm-project/commit/18b004d39ba6b44d18c55acd1c2717a406417562
  Author: Icaro <55800516+Icaro-Nunes at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] SDPatternMatch - Implement m_IntrinsicWOChain matchers (#175626)

Resolve #174436

Implemented matchers for intrinsics.

The usage looks something like:

```cpp
sd_match(N , m_IntrinsicWOChain<Intrinsic::${INTRINSIC_ID}>(/* match possible operands of the intrinsic */));
```


  Commit: e2cbb0266b02777d4f510b0e2a5f41b0760b9850
      https://github.com/llvm/llvm-project/commit/e2cbb0266b02777d4f510b0e2a5f41b0760b9850
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/test/Lower/block.f90
    M flang/test/Lower/call-copy-in-out.f90
    M flang/test/Lower/call-implicit.f90
    M flang/test/Lower/call.f90
    M flang/test/Lower/character-compare.f90

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

Tests converted from test/Lower: block.f90, call-copy-in-out.f90,
call-implicit.f90, call.f90, character-compare.f90


  Commit: bd65ec198d429be1a304ac8c7b048fbab7f302b8
      https://github.com/llvm/llvm-project/commit/bd65ec198d429be1a304ac8c7b048fbab7f302b8
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll

  Log Message:
  -----------
  [AArch64] Add lowering for NEON saturating shift intrinsics (#171485)

This patch extends on the work done in #161840 and adds lowering with
bitcasts for saturating shift intrinsics.


  Commit: 0b7d14e9a8bbf874cae1251c3762a85d1afda0d7
      https://github.com/llvm/llvm-project/commit/0b7d14e9a8bbf874cae1251c3762a85d1afda0d7
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUOptimizeBlockLoads.cpp
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    R mlir/test/Dialect/XeGPU/optimize-transpose.mlir
    A mlir/test/Dialect/XeGPU/peephole-optimize.mlir
    M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add 2D `vector.multi_reduction` optimization (#171154)


  Commit: efa32e36323e0c92b33c34aea61009026c164686
      https://github.com/llvm/llvm-project/commit/efa32e36323e0c92b33c34aea61009026c164686
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/test/Analysis/call-invalidation.cpp

  Log Message:
  -----------
  [analyzer] Invalidate the object in opaque ctor calls regardless if an arg refers to it (#170887)

The conservative call invalidation logic is a bit complicated, and would
deserve some refactoring.

When a call has some arguments, we escape them. Except, if its a pointer
to constant storage - because we assume that the program honors
const-correctness.

In that case, it puts it in the "Preserved" list to keep its contents.
However, if we had a constructor call that's job is to initialize an
object had a const pointer/reference parameter then the invalidation
didn't take place.

This meant that if the object was on the stack, that we start warning
about uninitialized fields when accessed. (See the example) Similar
could be achieved on the heap of course.

We should have honored the fact that the constructor should initialize
the pointee of "this", thus escape that region regardless (in other
words, don't put it on the "preserved" list).

This doesn't fix the root cause, but cures a symptom.
Ideally, we should redesign the argument invalidation from the ground up.
See the attached FIXME test case.

rdar://156942972


  Commit: 98adb3665883572bfcb6c7956d51fadb8af0311a
      https://github.com/llvm/llvm-project/commit/98adb3665883572bfcb6c7956d51fadb8af0311a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] isHorizontalBinOp - discard any shuffle that resolves to an all sentinel shuffle mask (#175931)

If the mask resolves to all-undef/zero then it can't be used - these can
theoretically appear if we're combining before the source operands have
constant folded away (in this case due to the avg intrinsic not folding
away until later into legalisation) - yet another case of working around
a poorly topological sorted DAG

Fixes #175802


  Commit: 94913cf1506587343dd9aeeb036555b0fd54195a
      https://github.com/llvm/llvm-project/commit/94913cf1506587343dd9aeeb036555b0fd54195a
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    A llvm/test/CodeGen/WebAssembly/slp-memory-interleave.ll

  Log Message:
  -----------
  [NFC][WebAssembly] More memory interleave tests (#175918)


  Commit: 7d5fe7e1949321060395e1f4667cae83d6c012d1
      https://github.com/llvm/llvm-project/commit/7d5fe7e1949321060395e1f4667cae83d6c012d1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Reject all function calls in C (#175920)

C doesn't have constexpr functions, so this can't ever work anyway.

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


  Commit: f54fc3900db5dec2c5d2da7ff12a163c5a00674c
      https://github.com/llvm/llvm-project/commit/f54fc3900db5dec2c5d2da7ff12a163c5a00674c
  Author: Nick Kreeger <nick.kreeger at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVEnums.h
    M mlir/lib/Conversion/SPIRVCommon/Pattern.h
    M mlir/lib/Dialect/SPIRV/IR/MemoryOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp

  Log Message:
  -----------
  [mlir][SPIRV] Move getDecorationString to SPIRVEnums utilities (NFC). (#174222)

Moves the getDecorationString() helper from the conversion layer's
SPIRVCommon/Pattern.h to the public SPIRVEnums.h header. This makes the
utility accessible to both the SPIRV dialect and conversion layers,
following proper architectural layering.

This continues the refactoring started in #174145.


  Commit: 3b51c1ce41bf1c4b8afcd99c12831abff4527503
      https://github.com/llvm/llvm-project/commit/3b51c1ce41bf1c4b8afcd99c12831abff4527503
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.h
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.h
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/atomic-scoped.c

  Log Message:
  -----------
  [CIR] Proper lowering of atomic sync scope to LLVM (#173393)

This patch sets up a framework to properly lower atomic sync scopes from
CIR to LLVM. Since the lowering is target-specific, this patch first
upstreams a minimum implementation of the TargetLoweringInfo class. It
then adds a virtual function there to handle the lowering of atomic sync
scopes in a target-specific way.


  Commit: c57e4359149235acfad084aa5bcd2790ef1d654a
      https://github.com/llvm/llvm-project/commit/c57e4359149235acfad084aa5bcd2790ef1d654a
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix crash in derived-to-base conversion with different origin shapes (#175928)


  Commit: fda19b9139a34f1431a0e14881d065ad2b916e31
      https://github.com/llvm/llvm-project/commit/fda19b9139a34f1431a0e14881d065ad2b916e31
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [CIR] Add additional NYI checks for SVE builtins (#175575)

This change extends the NYI checks recently introduced in #174433 by
adding further validation of SVE builtin type modifiers. For example:

```cpp
SVETypeFlags typeFlags(builtinIntrInfo->typeModifier);

// Unsupported flag — bail out
if (typeFlags.someFlag())
  cgm.errorNYI();
```

The newly added checks mirror the logic in
CodeGen/TargetBuiltins/ARM.cpp, specifically in:
  * `CodeGenFunction::EmitAArch64SVEBuiltinExpr`,

which defines the default code-generation path for SVE builtins.

This change helps ensure CIR rejects unsupported cases early and
provides skeleton for future PRs in which we will be adding support for
the missing builtins.


  Commit: 98d6f1676c59456d5218225fbff9163db8fb3c16
      https://github.com/llvm/llvm-project/commit/98d6f1676c59456d5218225fbff9163db8fb3c16
  Author: Ryan Mansfield <ryan_mansfield at apple.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    R llvm/test/tools/llvm-objdump/MachO/Inputs/LLVM-bundle.macho-x86_64
    R llvm/test/tools/llvm-objdump/MachO/LLVM-bundle.test

  Log Message:
  -----------
  [llvm-objdump][test] Remove dead MachO LLVM-bundle test (#172786)

This test has been permanently unsupported since eb601430d3d7 removed
libxar support and the xar feature from lit.cfg.py in October 2023.


  Commit: e8adda5e5a50a000aa9f26db9df338bd9fac6cb8
      https://github.com/llvm/llvm-project/commit/e8adda5e5a50a000aa9f26db9df338bd9fac6cb8
  Author: David Green <david.green at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/neon-dot-product.ll
    M llvm/test/CodeGen/AArch64/neon-vcmla.ll
    M llvm/test/CodeGen/AArch64/popcount.ll

  Log Message:
  -----------
  [AArch64] Add extra BE test coverage for lane instructions. NFC


  Commit: 83586be2530af3806f7752ad8305e51df79893d9
      https://github.com/llvm/llvm-project/commit/83586be2530af3806f7752ad8305e51df79893d9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/masked_gather.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll

  Log Message:
  -----------
  [X86] Ensure a (vXi1 bitcast(iX Mask)) memory mask is canonicalised for extension before it might get split by legalisation (#175769)

Masked load/store/gathers often need to bitcast the mask from a
bitcasted integer.

On pre-AVX512 targets this can lead to some rather nasty scalarization
if we don't custom expand the mask first.

This patch uses the canonicalizeBoolMask /combineToExtendBoolVectorInReg
helper functions to canonicalise the masks, similar to what we already
do for vselect expansion.

Alternative to #175385

Fixes #59789


  Commit: 676fc5874423580c678f5fa3066430bf3d4b84ad
      https://github.com/llvm/llvm-project/commit/676fc5874423580c678f5fa3066430bf3d4b84ad
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/ranges_equal.h

  Log Message:
  -----------
  [libc++] Fix use of static in constexpr (#175667)


  Commit: d363c7f95b1db812c9db2cc8ecd020e91762be0c
      https://github.com/llvm/llvm-project/commit/d363c7f95b1db812c9db2cc8ecd020e91762be0c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/cls.ll

  Log Message:
  -----------
  [AArch64] cls.ll - regenerate test checks (#175948)

Noticed when reviewing #174824


  Commit: bf845a4364f526aef8d7da1b9b75417c28009e73
      https://github.com/llvm/llvm-project/commit/bf845a4364f526aef8d7da1b9b75417c28009e73
  Author: Karthika Devi C <quic_kartc at quicinc.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M polly/lib/Analysis/ScopBuilder.cpp

  Log Message:
  -----------
  [Polly] Add null pointer check before size retrieval (#174309)

This patch avoids assertion failures by ensuring a null pointer check is
performed before accessing the object's size.
Note: The corresponding test case remains too large even after
reduction, so it has not been included in this patch.

Fixes #174147


  Commit: dbeddf3501807f7d08cbbe4f30906f3172c27a94
      https://github.com/llvm/llvm-project/commit/dbeddf3501807f7d08cbbe4f30906f3172c27a94
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLForwardCompat.h
    M llvm/unittests/ADT/STLForwardCompatTest.cpp

  Log Message:
  -----------
  [ADT] Fix up return type of `bind_` functions (#175950)

Use `decltype(auto)` and add tests.


  Commit: 40a28769a4e8782da568d9cdaa53d9adb08687a2
      https://github.com/llvm/llvm-project/commit/40a28769a4e8782da568d9cdaa53d9adb08687a2
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/test/CodeGen/RISCV/rda-liveins.mir
    M llvm/test/CodeGen/RISCV/rda-stack.mir
    M llvm/test/CodeGen/SystemZ/rda-stack-copy.mir
    M llvm/test/CodeGen/X86/print-reaching-defs.mir

  Log Message:
  -----------
  [ReachingDefAnalysis] Print basic blocks. (#175568)


  Commit: 04c83c34984ac5804e9629fe7dfbb45973701502
      https://github.com/llvm/llvm-project/commit/04c83c34984ac5804e9629fe7dfbb45973701502
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/Stmt.h
    M clang/lib/AST/Stmt.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h

  Log Message:
  -----------
  [NFCI] Extract out the addVariableConstraints CGASM Function (#175261)

This function is needed in identical form for CIR codegen, and pulling
it out into AsmStmt is effectively trivial. The only thing that actually
needs the codegen in it is the ability to diagnose, so this patch adds
that as a callback. AsmStmt seems to be the most logical place for this
to happen, as it does other similar things. Howver, unlike the other
similar things, th is is the same between MS and GCC, so it doesn't need
separate implementations.


  Commit: 5b0270cb72f707f55e2ff5e97fc938afb3b81053
      https://github.com/llvm/llvm-project/commit/5b0270cb72f707f55e2ff5e97fc938afb3b81053
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/constexpr.c

  Log Message:
  -----------
  [clang][c23] Avoid assertion on an invalid static constexpr variable (#175927)

In C static variables should have constant expressions in initializers
so we were checking this twice for constexpr variables and failing with
an assertion that was makes sure we don't do it.
This patch postpones the check just like it is done for file
scope constexpr variables in C already.

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


  Commit: 3424447645c0ae09cc97fc59fc0f2bd383a67ed1
      https://github.com/llvm/llvm-project/commit/3424447645c0ae09cc97fc59fc0f2bd383a67ed1
  Author: Gábor Spaits <gaborspaits1 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp

  Log Message:
  -----------
  [InstCombine] Remove unnecessary type equality check when creating zext or trunc (NFC) (#175947)

This came up during discussions under PR #161101.


  Commit: d2afc3e84b1aeac446e94cb67d41f94c315901ab
      https://github.com/llvm/llvm-project/commit/d2afc3e84b1aeac446e94cb67d41f94c315901ab
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ValueTracking/assume.ll

  Log Message:
  -----------
  [ValueTracking] Allow dereferenceable(0) to be applied to a null pointer (#175913)

`dereferenceable(<n>)` with n being potentially zero can come up when
using an operand bundle with a variable size. Currently this implies
that the pointer is non-null, even though `[nullptr, nullptr)` is a
valid range in any programming language I'm aware of. This patch removes
this implication and updates the language reference to reflect that
`dereferenceable` with a zero argument is valid.


  Commit: 2abd6d6d7ac54d40302dfc946d01572a12963ee5
      https://github.com/llvm/llvm-project/commit/2abd6d6d7ac54d40302dfc946d01572a12963ee5
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.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/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/findlast-epilogue-loop.ll
    A llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
    A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-vplan.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-trunc.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp.ll

  Log Message:
  -----------
  [LV] Vectorize conditional scalar assignments (#158088)

Based on Michael Maitland's previous work:
https://github.com/llvm/llvm-project/pull/121222

This PR uses the existing recurrences code instead of introducing a
new pass just for CSA autovec. I've also made recipes that are more
generic.


  Commit: 5f31b9c3810a80552ac61045dadf92c7c4a729d7
      https://github.com/llvm/llvm-project/commit/5f31b9c3810a80552ac61045dadf92c7c4a729d7
  Author: Gergo Stomfai <55883018+stomfaig at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/cls.ll
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll

  Log Message:
  -----------
  [DAG] computeKnownBits - add CTLS handling (#174824)

Add handling for CTLS using the same method as in
https://github.com/llvm/llvm-project/pull/174636.

Added tests to AArch64 and RISCV, but it seems that ARM is actually
resolving `llvm.arm.cls` to `clz`, so not tests added there.


  Commit: 220bed3de71e152e519085ec8815feb9203ab58c
      https://github.com/llvm/llvm-project/commit/220bed3de71e152e519085ec8815feb9203ab58c
  Author: Marco Elver <elver at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/CFG.cpp
    A clang/test/Analysis/cxx20-range-for-cfg.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp

  Log Message:
  -----------
  [Analysis] Fix missing destructor in CFG for C++20 range-for init-statement (#175859)

In C++20 range-based for loops, variables declared in the init-statement
were not correctly added to the CFG builder's local scope. Consequently,
implicit destructors for these variables were missing from the CFG.

This caused analyses relying on the CFG to incorrectly model the
lifetime of these variables. Specifically, Thread Safety Analysis
reported false positives for RAII locks declared in the init-statement.

Fix it by calling addLocalScopeForStmt for the init-statement in
CFGBuilder::VisitCXXForRangeStmt. This ensures destructors are correctly
inserted into the CFG.

Fixes: https://github.com/abseil/abseil-cpp/issues/1901


  Commit: 565c0e65292683677f3bbccc32b261acdd0d5d60
      https://github.com/llvm/llvm-project/commit/565c0e65292683677f3bbccc32b261acdd0d5d60
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/test/Lower/array-wide-char.f90
    M flang/test/Lower/associate-construct-2.f90
    M flang/test/Lower/assumed-shape-callee.f90
    M flang/test/Lower/assumed-type.f90
    M flang/test/Lower/basic-call.f90

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

Tests converted: array-wide-char.f90, associate-construct-2.f90,
assumed-shape-callee.f90, assumed-type.f90, basic-call.f90


  Commit: 28009c8880209a87d83b5901cfaf8d8e96be5693
      https://github.com/llvm/llvm-project/commit/28009c8880209a87d83b5901cfaf8d8e96be5693
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/enable_if.cpp

  Log Message:
  -----------
  [Clang] Check enable_if attribute in the DC of current function (#175899)

A ContextRAII here ensures immediate access control checking within the
current context, allowing us to rule out inaccessible constructors
during potential overload resolution, where access diagnostics are
converted from hard errors into SFINAE errors, making the behavior more
preferrable with the nature of the enable_if attribute.

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


  Commit: bc550d380c76c499d83cc97d23a36a893715602d
      https://github.com/llvm/llvm-project/commit/bc550d380c76c499d83cc97d23a36a893715602d
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M openmp/Maintainers.md

  Log Message:
  -----------
  Nominate Michael Klemm as lead maintainer of OpenMP (#175964)

We discussed this during the OpenMP sync-up call on 1/14 and he's still
actively maintaining this component and would be happy to act as lead
for it.


  Commit: 1899a01f01122dd7f58a5a113d8a74e88b232332
      https://github.com/llvm/llvm-project/commit/1899a01f01122dd7f58a5a113d8a74e88b232332
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h

  Log Message:
  -----------
  [libc++] Add benchmarks to the associative containers that don't go to the end of the container (#175005)

We have quite a few benchmarks for the associative containers which only
ever go to the end of the container. This is a relatively special case,
since it results in good branch prediction. However, users rarely have
that access pattern. This patch adds benchmarks where we don't just go
to the end where appropriate.

Fixes #162359


  Commit: e2d069cf2a872bb8dc7d962434e8bee325bc37fd
      https://github.com/llvm/llvm-project/commit/e2d069cf2a872bb8dc7d962434e8bee325bc37fd
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/docs/HowToReleaseLLVM.rst

  Log Message:
  -----------
  [llvm][docs] Release process improvements (#175759)

Some improvements from working through this getting LLVM 22 off the
ground. Most of the changes are pretty straightforward, but one worth
mentioning is the change to push the trunk version bump and tag before
creating the release branch.

This avoids a scenario that was hit for 22 where the release/22.x branch
was pushed first and more commits landed in trunk before the 23.0.0git
version bump was rebased and committed. The commits landed on trunk
during this brief window had the wrong version. This was resolved by
cherry-picking the commits to the release branch.

It's not entirely clear how big of an issue this really is, but if we
can avoid it and make the process less stressful in the process I think
it makes sense to do so.


  Commit: 4b223d40d603f9a9cc300b899934033f20cded11
      https://github.com/llvm/llvm-project/commit/4b223d40d603f9a9cc300b899934033f20cded11
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Teach SimplifyDemandedFPClass to infer nnan and ninf on fmul (#175854)


  Commit: 565591d8a47282e64b425d4884b9e150c4fb7d6f
      https://github.com/llvm/llvm-project/commit/565591d8a47282e64b425d4884b9e150c4fb7d6f
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/test/Transforms/LoopUnroll/convergent.controlled.ll
    M llvm/test/Transforms/LoopUnroll/followup.ll
    M llvm/test/Transforms/LoopUnroll/pr131465.ll
    A llvm/test/Transforms/LoopUnroll/unroll-dont-copy-latch-loop-id.ll
    M llvm/test/Transforms/LoopUnroll/unroll-loads-cse.ll

  Log Message:
  -----------
  [LoopUnroll] Do not copy !llvm.loop from latch to non-latch (#165635)

When LoopUnroll copies the original loop's latch to the corresponding
non-latch branch in an unrolled iteration, any `!llvm.loop` is copied
along with it, but `!llvm.loop` is useless and misleading there. This
patch discards it.

e06831a3b29d did the same for LoopPeel.


  Commit: 90b6d3375570bfa8d830b382337e62e411bf0831
      https://github.com/llvm/llvm-project/commit/90b6d3375570bfa8d830b382337e62e411bf0831
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp

  Log Message:
  -----------
  [Offload] Small debug message fix in Level Zero plugin (#175958)

Do not include trailing zeros in the device name.


  Commit: 2698d156644b4e99062abee1c6ac685902c2bfb9
      https://github.com/llvm/llvm-project/commit/2698d156644b4e99062abee1c6ac685902c2bfb9
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A flang/include/flang/Optimizer/Transforms/FIRToMemRefTypeConverter.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/test/Fir/convert-memref-codegen.mlir
    A flang/test/Transforms/FIRToMemRef/alloca.mlir
    A flang/test/Transforms/FIRToMemRef/array-coor-op.mlir
    A flang/test/Transforms/FIRToMemRef/complex.mlir
    A flang/test/Transforms/FIRToMemRef/convert-opt.mlir
    A flang/test/Transforms/FIRToMemRef/cuda-alloca.mlir
    A flang/test/Transforms/FIRToMemRef/derived-types.mlir
    A flang/test/Transforms/FIRToMemRef/index.mlir
    A flang/test/Transforms/FIRToMemRef/load-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-dynamic.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/load-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/logical.mlir
    A flang/test/Transforms/FIRToMemRef/no-declare.mlir
    A flang/test/Transforms/FIRToMemRef/reject-conversions.mlir
    A flang/test/Transforms/FIRToMemRef/replace.mlir
    A flang/test/Transforms/FIRToMemRef/slice.mlir
    A flang/test/Transforms/FIRToMemRef/store-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/store-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/store-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/tbaa-tag.mlir

  Log Message:
  -----------
  [flang] Lowering FIR memory ops to MemRef dialect (#173507)

This patch introduces FIRToMemRef, a lowering pass that converts FIR
memory operations to the MemRef dialect, including support for slices,
shifts, and descriptor-style access patterns. To support partial
lowering, where FIR and MemRef types can coexist, we extend the handling
of fir.convert to correctly marshal between FIR reference-like types and
MemRef descriptors. The patch also factors the type conversion logic
into a reusable FIRToMemRefTypeConverter, which centralizes the rules
for converting FIR types (e.g. !fir.ref, !fir.box, sequences, logicals)
to their corresponding memref types, and is used throughout the new
pass.

---------

Co-authored-by: Scott Manley <rscottmanley at gmail.com>
Co-authored-by: jeanPerier <jean.perier.polytechnique at gmail.com>


  Commit: 30e399a67558da69715930c423342425f4e31e03
      https://github.com/llvm/llvm-project/commit/30e399a67558da69715930c423342425f4e31e03
  Author: David Stenberg <david.stenberg at ericsson.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-preserved-subreg.mir
    M llvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir
    M llvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-after.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-clobbered.mir

  Log Message:
  -----------
  [DebugInfo] Find call site values for params in preserved registers (#172339)

For example, given code like this:

    int local = value();
    callee(local);
    return local;

resulting in assembly like:

    movl    %eax, %ebx // %eax = local
    movl    %eax, %edi
    callq   callee at PLT

the call site value generation did not understand that the value of
local is stored in the callee-saved %ebx during the call, and did not
emit any call site value. This patch addresses that, resulting in:

    DW_TAG_call_site_parameter
      DW_AT_location      (DW_OP_reg5 RDI)
      DW_AT_call_value    (DW_OP_breg3 RBX+0)

This code does not keep track if any succeeding instructions save
registers, meaning that it fails to emit a call site value for a case
like this:

    movq    %rax, %rdi
    movq    %rax, %rbx
    callq   callee at PLT

The test case dbgcall-site-preserved-clobbered.mir has been added for
that. This should be rather easy to address, but can be done in a
follow-up patch.

Building a clang-21 RelWithDebInfo binary for x86-64 without/with this
patch results in a ~1.8% increase of the number of call site parameter
entries with a location (from 1792876 to 1825718). This also reduces the
number of call site parameter entries using DW_OP_entry_value locations,
which are not guaranteed to be printable as they require the frame above
to provide a call site value for that parameter, from 57718 to 34871.

Fixes #43464.


  Commit: 07ce80ee2ab96dc82386adfa99b308d75a4dc874
      https://github.com/llvm/llvm-project/commit/07ce80ee2ab96dc82386adfa99b308d75a4dc874
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/unittests/ADT/STLForwardCompatTest.cpp

  Log Message:
  -----------
  [ADT] Quality bind_ calls in tests for c++20 bots. NFC.

This is to appease C++20 bots: https://lab.llvm.org/buildbot/#/builders/108/builds/21813/steps/6/logs/stdio


  Commit: 4e95be704302561be0b217eda732624e8e96a906
      https://github.com/llvm/llvm-project/commit/4e95be704302561be0b217eda732624e8e96a906
  Author: Dmitry Sidorov <18708689+MrSidims at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Support/APFloat.cpp
    A llvm/test/Assembler/arbitrary-fp-convert.ll
    A llvm/test/Verifier/arbitrary-fp-convert.ll
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [RFC][SPIR-V] Add intrinsics to convert to/from ap.float (#164252)

The patch adds two intrinsics: llvm.convert.to.arbitrary.fp and
llvm.convert.from.arbitrary.fp.

The intrinsics perform conversions between values whose interpretation
differs from their representation in LLVM IR. The intrinsics are
overloaded on both its return type and first argument. Metadata operands
describe how the raw bits should be interpreted before and after the
conversion.

Typical use case is to convert IEEE-754 floating point types to FP8/FP4
and backwards for ML applications.

Addresses
https://discourse.llvm.org/t/rfc-spir-v-way-to-represent-float8-in-llvm-ir/87758/10


  Commit: 01934fb49597eddb4b513a96da4d97ba3521ef11
      https://github.com/llvm/llvm-project/commit/01934fb49597eddb4b513a96da4d97ba3521ef11
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] See through implicit object arguments of GSL pointer type (#174741)

Add support for tracking pointer flows through GSL pointer implicit object arguments in method calls.

This PR enhances the lifetime safety analysis to properly track pointer flows through GSL pointer implicit object arguments in method calls. It adds a new helper function `shouldTrackPointerImplicitObjectArg` that determines if an implicit object argument should be tracked as a GSL pointer. When such an argument is detected, the analysis now correctly propagates the origin information through the pointer reference.

This resolves false-positives like

```cpp
const char* p;
{
  std::string_view a = getSomeView();
  p = a.data(); // 'a' does not live long enough (false-positive).
}
use(p);

```


  Commit: d21ed016a3c42dfc88ca4728ddbaa703513d2a42
      https://github.com/llvm/llvm-project/commit/d21ed016a3c42dfc88ca4728ddbaa703513d2a42
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [STLExtras] Quality bind_ calls in tests for c++20 bots

Bot failure: https://lab.llvm.org/buildbot/#/builders/108/builds/21872


  Commit: 8866af03c243f0cb26f43b2064682e36ab5c6b25
      https://github.com/llvm/llvm-project/commit/8866af03c243f0cb26f43b2064682e36ab5c6b25
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-vplan.ll

  Log Message:
  -----------
  Require asserts for a debug printing test


  Commit: ce6dd8b02d13c33612ddeb4284a37ba6e13ee446
      https://github.com/llvm/llvm-project/commit/ce6dd8b02d13c33612ddeb4284a37ba6e13ee446
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Passes.h
    M flang/include/flang/Optimizer/OpenACC/Passes.td
    M flang/lib/Lower/OpenACC.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    A flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/invalid.mlir

  Log Message:
  -----------
  [flang][acc] Add ACCUseDeviceCanonicalizer pass (#175228)

This pass canonicalizes the use_device clause on acc.host_data
constructs to enable simpler runtime lowering. For use_device operands
that are box types or references to boxes, the pass:

1. Extracts the host base address for mapping to a device address using
acc.use_device
2. Creates a new boxed descriptor with the device address as the base
address for use inside the host_data region

The pass also removes unused use_device clauses to reduce runtime calls.

This canonicalization hoists load/box_addr patterns out of the host_data
region so they are applied to the host variable before acc.use_device,
ensuring the device pointer is used directly inside the region.

Example transformation for a reference to a box (!fir.ref<!fir.box<>>):

Before:
```
  %ptr = acc.use_device varPtr(%ref : !fir.ref<!fir.box<!fir.ptr<i32>>>)
  acc.host_data dataOperands(%ptr) {
    %box = fir.load %ptr
    %addr = fir.box_addr %box
    // use %addr
  }
```

After:
```
  %box = fir.load %ref
  %addr = fir.box_addr %box
  %dev_ptr = acc.use_device varPtr(%addr : !fir.ptr<i32>)
  acc.host_data dataOperands(%dev_ptr) {
    %new_box = fir.embox %dev_ptr
    // use device pointer through new descriptor
  }
```

---------

Co-authored-by: nvptm <pmathew at nvidia.com>


  Commit: cf237465b3d1a38406b1f49976c877804a87c39f
      https://github.com/llvm/llvm-project/commit/cf237465b3d1a38406b1f49976c877804a87c39f
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/fshl.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.mir
    M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
    M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll

  Log Message:
  -----------
  [AMDGPU] Invert scc uses to delete s_cmp_eq* (#167382)

Delete s_cmp_eq* instructions by inverting instructions that use scc.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 8099e127cde22a5989515ce940eaa2a0a944d95e
      https://github.com/llvm/llvm-project/commit/8099e127cde22a5989515ce940eaa2a0a944d95e
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt

  Log Message:
  -----------
  [AMDGPU] Ignore unused VALU src0/1/2 fields when disassembling (#175182)

This enables a future patch to change the default encoding of these
fields, which are mostly ignored by hardware.


  Commit: b5cc4562d8ab91237fe56461b43a3db9ca3f49ed
      https://github.com/llvm/llvm-project/commit/b5cc4562d8ab91237fe56461b43a3db9ca3f49ed
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [NFC][MLIR] Remove obsolete target device test from openmp-todo.mlir (#175894)

Remove the target device test from openmp-todo.mlir since MLIR-to-LLVM
IR lowering for the OpenMP target device clause is now implemented
(#173509, #174665).


  Commit: 91f5d73b311f3622517ff1d34d21cc8ef1f52ea9
      https://github.com/llvm/llvm-project/commit/91f5d73b311f3622517ff1d34d21cc8ef1f52ea9
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    A llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    M llvm/test/CodeGen/AArch64/sme-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/streaming-compatible-memory-ops.ll
    A llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
    M llvm/test/CodeGen/AArch64/subreg_to_reg_coalescing_issue.mir
    M llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-contiguous-prefetches.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-gather-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-vector-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll

  Log Message:
  -----------
  [AArch64] Add new pass after VirtRegRewriter to add implicit-defs (#174188)

When SubRegister Liveness Tracking (SRLT) is enabled, this pass adds
extra implicit-def's to instructions that define the low N bits of a
GPR/FPR register to represent that the top bits are written, because all
AArch64 instructions that write the low bits of a GPR/FPR also
implicitly zero the top bits.

These semantics are originally represented in the MIR using
`SUBREG_TO_REG`, but during register coalescing this information is lost
and when rewriting virtual -> physical registers the implicit-defs are
not added to represent the the top bits are written.

There have been several attempts to fix this in the coalescer (#168353),
but each iteration has exposed new bugs and the patch had to be
reverted. Additionally, the concept of adding 'implicit-def' of a
virtual register during the register allocation process is particularly
fragile and many places don't expect it (for example in
`X86::commuteInstructionImpl` the code only looks at specific operands
and does not consider implicit-defs. Similar in
`SplitEditor::addDeadDef` where it traverses operand 'defs' rather than
'all_defs').

We want a temporary solution that doesn't impact other targets and is
simpler and less intrusive than the patch proposed for the register
coalescer so that we can enable SRLT to make better use of SVE/SME
multi-vector instructions while we work on a more permanent solution
that requires rewriting a large part of the AArch64 instructions (32-bit
and NEON).


  Commit: 0431b71680ce5085ac97f27b76b8fbbd9a776c6d
      https://github.com/llvm/llvm-project/commit/0431b71680ce5085ac97f27b76b8fbbd9a776c6d
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    A llvm/test/CodeGen/SPIRV/pointers/store-to-array-first-element.ll

  Log Message:
  -----------
  [SPIR-V] Fix store to first element array (#175546)

The IR can store to the first element of an array the same way it stores
to the first element of a struct by specifying the base pointer. This
commit fixes the pointercast legalization pass to support this.


  Commit: 58a9dc01be8a5529c2d9676b1a32d9ed09a4cd70
      https://github.com/llvm/llvm-project/commit/58a9dc01be8a5529c2d9676b1a32d9ed09a4cd70
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Add type conversions to support bool matrix single subscript operators (#175633)

Fixes #172711

Fixes the type mismatch issues preventing single matrix subscript
getters and setters from working with boolean matrices.

The changes from this PR also happens to make matrix splats work for
boolean matrices, but adding tests for that and (re)introducing
boolean-matrix-specific sema will be relegated to its own PR.


  Commit: cfefd3e46c5504fbf5d51686800f15b8b8fcbdd8
      https://github.com/llvm/llvm-project/commit/cfefd3e46c5504fbf5d51686800f15b8b8fcbdd8
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll

  Log Message:
  -----------
  [NFC][PowerPC] add  test cases for milicode (#175559)

In this PR, we do the following:

1. Simplify the test case for the millicode function  `___memmove`.
2. Add test cases for the millicode functions `___memcpy` ,
`____memset`, `____memmove` which are supported in the patch
https://reviews.llvm.org/D143997.
3. Add pre-commit test cases for the functions `___strstr`,
`___memccpy`, `___strcmp`


  Commit: c5e95af71d460ee41bb7912ceceaa88dd9a6a67c
      https://github.com/llvm/llvm-project/commit/c5e95af71d460ee41bb7912ceceaa88dd9a6a67c
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A clang/docs/ScalableStaticAnalysisFramework/Framework.rst
    A clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
    M clang/docs/index.rst

  Log Message:
  -----------
  [clang][ssaf][docs] Document the Summary Extraction pipeline (#172876)

This patch adds some documentation about the design of the Scalable
Static Analysis Framework (SSAF) Summary Extraction part.

This mainly focuses on how the custom FrontendAction would load
different analyses (their extraction part), and the different formats it
should export into.
Each FrontendAction call would process a single TU by extracting
summaries from them and serializing the results into a file in the
desired format.

The details are not polished yet, but I think it's still beneficial to
have some guidance on how the upcoming components would fit together,
hence this document.
I'll come back to this document to keep it up-to-date as we proceed with
the upstreaming.


  Commit: 1f2d10e285f6f6cfeadac4b3c43f4f6833e612d9
      https://github.com/llvm/llvm-project/commit/1f2d10e285f6f6cfeadac4b3c43f4f6833e612d9
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [NFC][IRBuilder] Reuse CreateGEP for helpers (#175979)

Many helper functions for single index GEP exist, but each implement the
same logic to then create the GetElementPtrInst. Refactoring to call a
single function.
This is some groundwork to prepare the SGEP implementation.


  Commit: 802ca041bd1b3e47dc29234080724c6a287baf6e
      https://github.com/llvm/llvm-project/commit/802ca041bd1b3e47dc29234080724c6a287baf6e
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/test/Lower/array-elemental-calls-2.f90
    M flang/test/Lower/array-expression-assumed-size.f90
    M flang/test/Lower/array-temp.f90
    M flang/test/Lower/array-user-def-assignments.f90
    M flang/test/Lower/array.f90

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

Modified the following tests: array-elemental-calls-2.f90,
array-expression-assumed-size.f90, array-temp.f90,
array-user-def-assignments.f90, array.f90


  Commit: bc9fce7e8b734c1a2a491c23ca247e4411b561f5
      https://github.com/llvm/llvm-project/commit/bc9fce7e8b734c1a2a491c23ca247e4411b561f5
  Author: Adam Paszke <adam.paszke at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][Vector] Add a pattern that folds consecutive extract_strided_strided_slice ops (#175738)

A slice of a slice is just a slice.


  Commit: 804c0345f5dc0fbb5bea5af6486ebdcfc0c99cb4
      https://github.com/llvm/llvm-project/commit/804c0345f5dc0fbb5bea5af6486ebdcfc0c99cb4
  Author: Krish Gupta <krishom70 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix LINEAR clause validation to report all errors (#175938)

Fixes #175688 

After #175383 was merged, test failures occurred because removing the
early return exposed additional errors that tests weren't expecting.

This PR comprehensively fixes the issue by:

1. **Removes the early return** in check-omp-loop.cpp (line 767) after
detecting a modifier error on DO/SIMD directives. Previously, when a
modifier error was found, the function would return immediately without
checking other restrictions like the scalar requirement. Now all
applicable errors are reported, improving diagnostics.

2. **Updates linear-clause01.f90** to expect both the modifier error AND
the scalar error for Case 1 and Case 2, where arrays are used
incorrectly in LINEAR clauses.

3. **Updates clause-validity01.f90** to use the new OpenMP 5.2 syntax
(`linear(b: val)` instead of `linear(val(b))`). The old syntax triggers
deprecation warnings, which are now caught because we no longer return
early after the modifier error.

Thanks to @ergawy for identifying the clause-validity01.f90 fix needed.

The changes ensure better error reporting for users - they now see all
issues with their LINEAR clauses instead of just the first error.


  Commit: 1547ee67482d3aa9abea54cc986bbb9734c6e043
      https://github.com/llvm/llvm-project/commit/1547ee67482d3aa9abea54cc986bbb9734c6e043
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 91f5d73b311f


  Commit: c55f690213935307b7387f7023e4707538f9b435
      https://github.com/llvm/llvm-project/commit/c55f690213935307b7387f7023e4707538f9b435
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Add more tests for min/max SimplifyDemandedFPClass (#175381)

Test some more refined cases, such as ordering with 0s and within
known positive and known negative cases.


  Commit: f41767651ba3752c6c66be90b3f3efe8e46e64b6
      https://github.com/llvm/llvm-project/commit/f41767651ba3752c6c66be90b3f3efe8e46e64b6
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU] Add regbankselect rules for G_ICMP/G_FCMP (#172048)

- Legalize G_ICMP for S16, S32, S64, Ptr32 and Ptr64 operands.
- Legalize G_FCMP for S16, S32 and S64 operands.


  Commit: b59a3dfaf199124b2eaab40f87cca4fbf12c9f08
      https://github.com/llvm/llvm-project/commit/b59a3dfaf199124b2eaab40f87cca4fbf12c9f08
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll

  Log Message:
  -----------
  [VPlan] Add printing test for UMax reduction (NFC).

Currently compute-reduction-result prints (icmp) instead of the correct
min/max kind.


  Commit: 6d8f8769f1d645f2cfe5900d8a588282b0cf0d77
      https://github.com/llvm/llvm-project/commit/6d8f8769f1d645f2cfe5900d8a588282b0cf0d77
  Author: Jacob Lambert <jacob.lambert at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl

  Log Message:
  -----------
  Revert "[OpenCL] Set KHR extensions minimum version to OpenCL 1.0" (#175993)

Reverts llvm/llvm-project#175120

llvm-project/amd/device-libs/opencl/src/image/imwrap.cl:461:1: error: no
matching function for call to 'get_image_height'
  461 | GD2GEN(_2Dad)
      | ^~~~~~~~~~~~~
 
llvm-project/amd/device-libs/opencl/src/image/imwrap.cl:460:1: error: no
matching function for call to 'get_image_width'
  460 | GD2GEN(_2Dd)
      | ^~~~~~~~~~~~
      
"Depth images are required with other image support for OpenCL 2.0."


  Commit: 62a9aadddc312c7782bdefe4dbe82be160efb977
      https://github.com/llvm/llvm-project/commit/62a9aadddc312c7782bdefe4dbe82be160efb977
  Author: saxlungs <152745038+saxlungs at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll

  Log Message:
  -----------
  [AMDGPU] Add optimization for llvm.amdgcn.wave.shuffle in uniform cases (#174795)

When the llvm.amdgcn.wave.shuffle intrinsic is called with a uniform
Index operand, it is effectively the same as the llvm.amdgcn.readlane
intrinsic. This change handles this situation and replaces it with the
readlane intrinsic

---------

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


  Commit: 4e84513b72aebfc3f93b94016ef8e9a77a6cefdf
      https://github.com/llvm/llvm-project/commit/4e84513b72aebfc3f93b94016ef8e9a77a6cefdf
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/fmamk_fmaak-t16.mir

  Log Message:
  -----------
  [AMDGPU] Add test for v_fmamk_f16/v_fmaak_f16 in real-true16. NFC (#173307)

This is to display a bug in real true16 mode that we do not have
an allocatable 16-bit VGPR class and these instructions do not
have VOP3 forms for allocatable VGPR_16 to be used. To use these
instructions 'VGPR_16_Lo128' must be allocable.


  Commit: 074740df8a11b66b2aac24eefecd7eafbc6f9a5a
      https://github.com/llvm/llvm-project/commit/074740df8a11b66b2aac24eefecd7eafbc6f9a5a
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] bug fix: removing temporary slice layout at the pass end (#172589)

Removing temporary slice layout (besides the regular layout) at the end
of wg distribution and blocking pass.
The PR also drop sg_data/inst_data from anchor layouts in every
wg-to-sg/blocking/unrolling pattern.

---------

Signed-off-by: Dmitry Chigarev <dmitry.chigarev at intel.com>
Co-authored-by: Dmitry Chigarev <dmitry.chigarev at intel.com>


  Commit: 96ceb80d46ffcc99c99bf085c14d55b3bd0641c2
      https://github.com/llvm/llvm-project/commit/96ceb80d46ffcc99c99bf085c14d55b3bd0641c2
  Author: Dhruva <dhruvakodiadka at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  Improve SelectionDAG::ComputeNumSignBits test coverage for ISD::ABDS (#175321)

fixes #175160


  Commit: 403b88d9640e612172442a1f60bb060149fed433
      https://github.com/llvm/llvm-project/commit/403b88d9640e612172442a1f60bb060149fed433
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Error.cpp

  Log Message:
  -----------
  [NFC][LLVM][Support] Namespace cleanup in Error.cpp (#175838)

- Fix indentation of code within anonymous namespace.
- Make `getErrorErrorCat` static.
- Use namespace qualifier to define standalone functions in `llvm` namespace.


  Commit: 196433eb270390820bb50c243a66fc78a1757b41
      https://github.com/llvm/llvm-project/commit/196433eb270390820bb50c243a66fc78a1757b41
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Improve SimplifyDemandedFPClass min/max handling (#175382)

Refine handling of minimum/maximum and minimumnum/maximumnum. The
previous folds to input were based on sign bit checks. This was too
conservative with 0s. This can now consider -0 as less than or equal
to +0 as appropriate, account for nsz. It additionally can handle
cases like one half is known positive normal and the other subnormal.


  Commit: 0acc79dc6d7522a0b83f1b4f1e9131bf17f26ba5
      https://github.com/llvm/llvm-project/commit/0acc79dc6d7522a0b83f1b4f1e9131bf17f26ba5
  Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td

  Log Message:
  -----------
  [mlir][xegpu] Allow index type in ConvertLayoutOp (#175671)

Allow index type in ConvertLayoutOp


  Commit: dddd2b706eb54cd70b3ac59adc6fb92343e9e101
      https://github.com/llvm/llvm-project/commit/dddd2b706eb54cd70b3ac59adc6fb92343e9e101
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp

  Log Message:
  -----------
  [LLDB] Prevent division by zero in MSVC deque formatter (#175842)

To look up an item in a `std::deque` we do
https://github.com/llvm/llvm-project/blob/d69335bac9d218ed5dadeebed66b600347d5db8e/lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp#L71-L73

This will crash on if `m_block_size` or `m_map_size` is zero. We didn't
check that these aren't zero. With this PR, we do.

When running the MSVC STL smoke test, `m_map_size` was randomly zero
(the test breaks before the variables are initialized) and the test
failed, because LLDB crashed.


  Commit: 730bf8c89531040f9ba7687c33c4d633b742e74a
      https://github.com/llvm/llvm-project/commit/730bf8c89531040f9ba7687c33c4d633b742e74a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [Clang] Update target parser for address spaces for AMDGPU (#175998)

Summary:
This does three things:
1. Allows address_space<0>, this is not a no-op currently as it has real
   type checking signficange. The SPIR-V backend also does not currently
   use `0` as a generic address space.
2. Allows parsing address space pointers inside vectors, this required
   parsing the correct closing bracket instead of the first found
3. Adds the two missing AMDGPU builtin types.

Split off from https://github.com/llvm/llvm-project/pull/175873


  Commit: f61aab79ceaa5ce5922c5e58abe9229506b74edd
      https://github.com/llvm/llvm-project/commit/f61aab79ceaa5ce5922c5e58abe9229506b74edd
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll

  Log Message:
  -----------
  [VPlan] Handle min/max recur kinds in ::printFlags.

Following up to d5c11b9a24c84f, also handle min/max recurrence kinds in
::printFlags, so the proper kind is imprinted instead of icmp.

NFC modulo debug printing changes


  Commit: 6212c87ab9890b3c8cc829867c0cf5be37fbccf9
      https://github.com/llvm/llvm-project/commit/6212c87ab9890b3c8cc829867c0cf5be37fbccf9
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Add Matrix splat support for booleans (#175809)

Fixes #175808

This PR adds support for boolean matrix splats by adding tests and
fixing a bug in `CodeGenFunction::EmitToMemory` when the type of a
boolean matrix already matches the type expected of a load/store.

This PR also addresses the todo comment in `clang/lib/Sema/SemaExpr.cpp`
regarding support for boolean matrix splats by removing the comment
altogether since it is not necessary.

---------

Co-authored-by: Farzon Lotfi <farzonlotfi at microsoft.com>


  Commit: cea16eba63d7bf6f33076b982f7eed124d632ac1
      https://github.com/llvm/llvm-project/commit/cea16eba63d7bf6f33076b982f7eed124d632ac1
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoSFB.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfbfmin.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td

  Log Message:
  -----------
  [RISCV][NFC] Push riscv_selectcc PatFrag Inwards (#175902)

`riscv_selectcc_frag` was a PatFrag with a transform to get a
`RISCVCC::CondCode` from the `riscv_selectcc` node. The pattern matched
the entire `riscv_selectcc` node, but the transform meant that the saved
value was just the condition code itself, which was not obvious (to me),
either from naming or from how the pattern was structured.

This change "pushes" the pattern fragment inwards to the condition code
it relates to using `riscv_cond:$cc` (a `cond` fragment with a
transform, only needed when defining the pattern directly with the
pseudo), or using the `CCtoRISCVCC` transform explicitly in the emit
side of the pattern.

IMO this makes the select handling quite a bit clearer, as the `$cc` in
the pattern and result more directly relates to the operand it matches
and represents. This has potentially swapped one source of confusion
noted above for the confusion of seeing `Cond:$cc` being used to bind
the specific condition code that has been provided at pattern
instantiation to `$cc`, so that it can be transformed before being
emitted.


  Commit: ef0680ba54f73b6848aadca29227b720463ed4fa
      https://github.com/llvm/llvm-project/commit/ef0680ba54f73b6848aadca29227b720463ed4fa
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/test/CodeGen/AMDGPU/code-size-estimate-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/emit-high-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/permlane16_var-op-sel.ll
    M llvm/test/MC/AMDGPU/expressions-gfx10.s
    M llvm/test/MC/AMDGPU/gfx10-constant-bus.s
    M llvm/test/MC/AMDGPU/gfx1030_new.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11-promotions-fake16.s
    M llvm/test/MC/AMDGPU/gfx11-promotions.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features-fake16.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/lds_direct-gfx10.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/literalv216.s
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s
    M llvm/test/MC/AMDGPU/reloc-operands-gfx10.s
    M llvm/test/MC/AMDGPU/vcmpx-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-literal.s
    M llvm/test/MC/AMDGPU/wave32.s
    M llvm/test/MC/AMDGPU/wave_any.s
    M llvm/test/MC/AMDGPU/writelane_m0.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-sgpr-max.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop3-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1030_new.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3p_literalv216.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/literals.txt

  Log Message:
  -----------
  [AMDGPU] Encode unused VALU src0/1/2 fields as inline 0 on GFX10+ (#175753)

This has no functional effect since these source fields are unused, but
it can avoid some conservative stalls due to these instructions looking
like they read from an SGPR, since 0 is the encoding for s0. Using 0x80
is more benign since it is the encoding for inline immediate 0.

Fixes: SWDEV-574953


  Commit: c205aa225747fefe7ca39dcece8933863e43c329
      https://github.com/llvm/llvm-project/commit/c205aa225747fefe7ca39dcece8933863e43c329
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/docs/CMakeLists.txt

  Log Message:
  -----------
  [flang][docs] Fix cmake warning when building documentation

CMake issues the following warning when configuring with 
documentation enabled.

Exactly one of PRE_BUILD, PRE_LINK, or POST_BUILD must be given.
Assuming
    POST_BUILD to preserve backward compatibility.

The offending add_custom_command call in flang/docs/CMakeLists.txt has
been fixed to ensure that this warning is not issued. The comment
describing the purpose of the command now provides more details.


  Commit: d188a7b06819640491c75e728dab512bfbedff34
      https://github.com/llvm/llvm-project/commit/d188a7b06819640491c75e728dab512bfbedff34
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx17Papers.csv
    R libcxx/docs/Status/PSTL.rst
    R libcxx/docs/Status/PSTLPaper.csv
    M libcxx/docs/index.rst

  Log Message:
  -----------
  [libc++] Remove CSV tracking for PSTL (#175797)

This is now tracked in Github directly: #99938


  Commit: c01c226e4a75dcf68986743b1d7554c3f7ac456d
      https://github.com/llvm/llvm-project/commit/c01c226e4a75dcf68986743b1d7554c3f7ac456d
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/test/CIR/CodeGen/vla.c

  Log Message:
  -----------
  [CIR] SubscriptExpr for VariableLengthArray (#175370)

Support the SubscriptExpr where the expr type is VariableLengthArray


  Commit: fb67ef1a8b1bb5e300ccc1f34b9827a41d529652
      https://github.com/llvm/llvm-project/commit/fb67ef1a8b1bb5e300ccc1f34b9827a41d529652
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Handle multiple uses for min/max in SimplifyDemandedFPClass (#175974)


  Commit: 4e00719777cb89b35c33806fdebc3eca0d84c3a3
      https://github.com/llvm/llvm-project/commit/4e00719777cb89b35c33806fdebc3eca0d84c3a3
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Remove unnecessary AddPromotedToType use from SIIselLowering (NFC) (#175994)


  Commit: ec983ad611fa15890fdcf5c3066e938b5b154459
      https://github.com/llvm/llvm-project/commit/ec983ad611fa15890fdcf5c3066e938b5b154459
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes.rst
    A libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/ReleaseProcedure.rst
    M libcxx/docs/conf.py
    M libcxxabi/include/cxxabi.h
    M libunwind/include/__libunwind_config.h

  Log Message:
  -----------
  [runtimes] Post-branch tasks for the LLVM 23 release (#176007)

This performs most of the post-branch tasks to start working on the LLVM
23 release. Things that are left to do:
- Update the unicode version
- Update CI versions and supported compiler versions


  Commit: 1f5c445c4b87ca2950584353d95d6211f51e9e48
      https://github.com/llvm/llvm-project/commit/1f5c445c4b87ca2950584353d95d6211f51e9e48
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/include/fstream

  Log Message:
  -----------
  [libc++][NFC] Refactor __request_unbuffered_mode (#168950)

It's a bit awkward to pass the char* and the size to the function, which
then only decides whether it should be a no-op with it. Instead, only
call the function when the pointer is null and n is 0, which matches
more closely what the standard says with respect to calling pubsetbuf(0, 0).


  Commit: 65ab8fe54bf3561c63f91bd92c251bebb525b23d
      https://github.com/llvm/llvm-project/commit/65ab8fe54bf3561c63f91bd92c251bebb525b23d
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/test/CodeGen/AMDGPU/fmamk_fmaak-t16.mir

  Log Message:
  -----------
  [AMDGPU] Make VGPR_16_Lo128 allocatable (#173309)

Allows allocation of V_FMAMK_F16/V_FMAAK_F16 registers in
real true16 mode.


  Commit: 70dc0961d01392747bf5d98691103a844ce5571a
      https://github.com/llvm/llvm-project/commit/70dc0961d01392747bf5d98691103a844ce5571a
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/test/Dialect/Complex/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][Complex] DivOp check for NaN in the folder (#169724)

Fold DivOp in complex to Complex of NaNs if LHS or RHS is a NaN value,
and prevent folding without knowing that LHS isn't NaN


  Commit: ad947503831aa8072fc7fe914cc3992039a67ec4
      https://github.com/llvm/llvm-project/commit/ad947503831aa8072fc7fe914cc3992039a67ec4
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll

  Log Message:
  -----------
  [msan] Handle NEON matrix multiplication (integral) (#174510)

Instead of strictly handling smmla/ummla/usmmla, this patch propagates
the shadow, with each output element considered initialized if all its
constituent inputs are fully initialized.


  Commit: 72b7daf82b1af90f087515ac7e79e557f603f958
      https://github.com/llvm/llvm-project/commit/72b7daf82b1af90f087515ac7e79e557f603f958
  Author: Ian Wood <ianwood2024 at u.northwestern.edu>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization/unsupported.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix vectorization precondition for tensor.pad (#175869)

This changes `padOp.getLow()` to `padOp.getMixedLowPad()` in
`vectorizePadOpPrecondition()`. The `getMixedLowPad()` function
correctly returns both static and dynamic padding values, ensuring that
the indexing is correct when checking for non-zero low padding on
non-unit result dimensions. Using the added test as an example,
`getLow()` would only return `%low`, which means `en.index()` would be 0
instead of the correct dimension index 1.

---------

Signed-off-by: Ian Wood <ianwood at u.northwestern.edu>


  Commit: 7d5d4db834f2d982944c64cccbd84edd61d3cdb9
      https://github.com/llvm/llvm-project/commit/7d5d4db834f2d982944c64cccbd84edd61d3cdb9
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512fp16-fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/extractelement-fp.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmaximum.ll

  Log Message:
  -----------
  [X86] Lower `minimum`/`maximum`/`minimumnum`/`maximumnum` using bitwise operations (#170069)

I got somewhat nerd-sniped when looking at a Rust issue and seeing [this
comment about how various min/max operations are compiled on various
architectures](https://github.com/rust-lang/rust/issues/91079#issuecomment-3592393680).
The current `minimum`/`maximum`/`minimumnum`/`maximumnum` code is very
branchy because of the signed-zero handling. Even though we emit select
operations, LLVM *really* prefers to lower them to branches, to the
point of scalarizing vector code to do so, even if `blendv` is
supported. (Should I open a separate issue for that? It seems concerning
that LLVM would rather scalarize a vector operation than emit a couple
`blendv` operations in a row.)

It turns out that handling signed zero operands properly can be done
using a couple bitwise operations, which is branchless and easily
vectorizable, by taking advantage of the following properties:
- When you take the maximum of two floats, the output sign bit will be
the bitwise AND of the input sign bits (since 0 means positive, and the
maximum always prefers the positive number).
- When you take the minimum of two floats, the output sign bit will be
the bitwise OR of the input sign bits (since 1 means negative, and the
minimum always prefers the negative number).

We can further optimize this by taking advantage of the fact that x86's
min/max instructions operate like a floating-point compare+select,
returning the second operand if both are (positive or negative) zero.
Altogether, the operations go as follows:

- For taking the minimum:
- Call `minps`/`minpd`/etc. on the input operands. This will return the
minimum, unless both are zero, in which case it will return the second
operand.
- Take the bitwise AND of the first operand and the highest bit, so that
everything is zero except the sign bit.
- Finally, OR that with the minimum from earlier. The only incorrect
case was when the second operand was +0.0 and the first operand was
-0.0. By OR-ing the first operand's sign bit with the existing minimum,
we correct this.

- Analogously, for taking the maximum:
- Call `maxps`/`maxpd`/etc. on the input operands. This will return the
maximum, unless both are zero, in which case it will return the second
operand.
- Take the bitwise OR of the first operand and a bit pattern which is
all ones except for the highest bit, so that everything is ones except
the sign bit.
  - Finally, AND that with the maximum from earlier.

In the case of NaNs, this approach might change the output NaN's sign
bit. We don't have to worry about this for a couple reasons: firstly,
LLVM's language reference [allows NaNs to have a nondeterministic sign
bit](https://llvm.org/docs/LangRef.html#floatnan); secondly, there's
already a step after this that selects one of the input NaNs anyway.

[Here's an Alive2 proof.](https://alive2.llvm.org/ce/z/EfQZ-G) It
obviously can't verify that the implementation is sound, but shows that
at least the theory is.

I believe this approach is faster than even properly-vectorized `blendv`
operations because it eliminates a data dependency chain. Furthermore on
AVX-512, the load, AND, and OR can become a single `vpternlogd`. My
highly-unrepresentative microbenchmarks (compiled for x86-64-v2, so
SSE4.1) say ~7.5%-10% faster than `blendv`, which makes me confident
this is at least not a regression.


  Commit: bf4645b0b47a849a1d1fd9bc91c59f3db0fa422e
      https://github.com/llvm/llvm-project/commit/bf4645b0b47a849a1d1fd9bc91c59f3db0fa422e
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [flang][acc] Fix build with ACCUseDeviceCanonicalizer dependency (#176011)

There is a missing library dependency which causes a link error due to
missing: fir::getKindMapping


  Commit: 46de3200388c300ee871f5b4941dff0d97ba9480
      https://github.com/llvm/llvm-project/commit/46de3200388c300ee871f5b4941dff0d97ba9480
  Author: Nick Hutchinson <nshutchinson at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M compiler-rt/lib/rtsan/CMakeLists.txt
    M compiler-rt/lib/rtsan/rtsan_context.cpp
    M compiler-rt/lib/rtsan/rtsan_suppressions.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] Fix build failures when building against in-tree libc++ (#175638)

When building compiler-rt against an in-tree libc++, intermittent build
failures could occur: some rtsan sources referenced c++ stdlib includes
(i.e. `#include <new>`), but there was no CMake dependency enforcing
that the libc++ headers were copied into place before the rtsan sources
were built.

https://github.com/llvm/llvm-project/issues/127764#issue-2862550745
proposed adding the dependency on the `cxx-headers` target to resolve
the issue. But my understanding is that compiler-rt sanitizer runtimes
aren't expected to bring in C++ stdlib includes in the first place --
`SANITIZER_COMMON_CFLAGS`, used by the other sanitizer runtimes,
contains `-nostdinc++`.

Rtsan only included `<new>` to get support for placement new.
`sanitizer_common/sanitizer_placement_new.h` can provide this without
the need for C++ stdlib headers.

Move from `COMPILER_RT_COMMON_CFLAGS`/`COMPILER_RT_CXX_CFLAGS` to
`SANITIZER_COMMON_CFLAGS`, and from `COMPILER_RT_COMMON_LINK_FLAGS` to
`SANITIZER_COMMON_LINK_FLAGS` to be consistent with the other
sanitizers.

Fixes #127764.


  Commit: 90961df83b998aab75de4e0410b712a598b0c5e7
      https://github.com/llvm/llvm-project/commit/90961df83b998aab75de4e0410b712a598b0c5e7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Strip phi operand from compute-reduction-result comments (NFC).

After d5c11b9a24c84f1, compute-reduction-result does not have the
reduction phi recipe as operand. Update stale comments pointed out
independently in https://github.com/llvm/llvm-project/pull/175461.


  Commit: d5442b8c963d3921007f38ad32d9e6e429665c49
      https://github.com/llvm/llvm-project/commit/d5442b8c963d3921007f38ad32d9e6e429665c49
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    R clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/module.modulemap
    M clang/lib/Basic/Targets/AMDGPU.cpp

  Log Message:
  -----------
  [AMDGPU] Programmatically port old `.def` clang builtins to `.td` (#175873)

Summary:
This PR ports the old `.def` builtins to the new Tablegen interface.
This required a few changes in the handler, namely there is a real
meaning to `AS(0)` right now, not just in SPIR-V but when the type
parser expects it. The conversion here should be 1-to-1.

Some more work could be done to reduce the amount of repetition by
grouping all the instructions together, I'll leave that up to whether or
not anyone cares.

This was done with a hastily made Python script that likely will not
work
for the other files, but will successfully update this PR. Putting here
in
case someone wants to use it.
https://gist.github.com/jhuber6/d524c65c0da3adae5afd2ad160589537


  Commit: 79c62efef6f421679038b2b545582180dd2b775a
      https://github.com/llvm/llvm-project/commit/79c62efef6f421679038b2b545582180dd2b775a
  Author: Snehasish Kumar <1888435+snehasish at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/IR/Metadata.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [Metadata][profcheck] Handle identical MDNodes in getMergedProfMetadata (#175701)

This fixes a bug where !prof metadata was dropped from SelectInsts when GVN simplified/merged them. Guarded by -profcheck-disable-metadata-fixes. Exposed by the tests in Transforms/SampleProfile.


  Commit: d275182924af11d19b2ede3ec16ea2be6671ee0d
      https://github.com/llvm/llvm-project/commit/d275182924af11d19b2ede3ec16ea2be6671ee0d
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/stack-move.ll

  Log Message:
  -----------
  [MemCpyOpt] allow memcpy-to-memcpy optimization with smaller dest than src (#176010)

Resize the alloca if needed to a common size, as long as the dest was
still fully initialized by the copy.

Extracted from PR optimization improvement series at
https://github.com/llvm/llvm-project/pull/150792 (included all tests
additions from there as well)


  Commit: 94ffc754d2e292e81e6f7baaef394d86974aea7c
      https://github.com/llvm/llvm-project/commit/94ffc754d2e292e81e6f7baaef394d86974aea7c
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [MemCpyOpt] keep src/dest alloca ordering (#176012)

Rather than test dominator of every use, just check which of src or dest
is first, and use that insert location. This minimizes unnecessary
dominator queries while also helping to preserve the order of allocas
(for better code readability / diff).

Extracted from PR optimization improvement series at
https://github.com/llvm/llvm-project/pull/150792


  Commit: 68a04c1adae8dc2a031a1d483d2b73dbbe92f060
      https://github.com/llvm/llvm-project/commit/68a04c1adae8dc2a031a1d483d2b73dbbe92f060
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/vector-extract-last-active.ll

  Log Message:
  -----------
  [SelDag] Use use BoolVT size when expanding find-last-active, if larger. (#175971)

On some targets, BoolVT may have been widened earlier. In those cases,
choosing StepVT to be smaller can cause crashes when widening the
mis-matched select. Without the fix, the new test
@extract_last_active_v4i32_penryn crashes when trying to widen.

It also improves codegen for other cases.

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


  Commit: 2bce962db211e20425c6d89afb56295c7022ee94
      https://github.com/llvm/llvm-project/commit/2bce962db211e20425c6d89afb56295c7022ee94
  Author: Djordje Todorovic <djordje.todorovic at htecgroup.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/ObjCRuntime.h
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/riscv-be-data-layout.c
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32d/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64d/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/riscv64be-unknown-linux-gnu/bin/ld
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64d/.keep
    A clang/test/Driver/riscv-be.c

  Log Message:
  -----------
  [clang][RISCV] Add big-endian RISC-V target support (#165599)

We proceeded with frontend/clang changes, until we figure out how ABI
for BE should look like. Once it is final, we will proceed with codegen
changes.

In this patch several things addressed:
  - Define riscv32be/riscv64be target triples
  - Set correct data layout for BE targets
  - Handle BE-specific ABI details
  - Emit warning for BE case since it is still experimental


  Commit: f92bc1f34ee5a18e092b070204edf76a259d64ba
      https://github.com/llvm/llvm-project/commit/f92bc1f34ee5a18e092b070204edf76a259d64ba
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  Fix unused variable error from 7d5d4db (#176025)


  Commit: 2b838431fd23647c34bfe09becbd0a0d02cdbe8a
      https://github.com/llvm/llvm-project/commit/2b838431fd23647c34bfe09becbd0a0d02cdbe8a
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/enable_if.cpp

  Log Message:
  -----------
  Revert "[Clang] Check enable_if attribute in the DC of current function" (#176024)

Reverts llvm/llvm-project#175899 as it caused an assertion error.

https://ci.chromium.org/ui/p/fuchsia/builders/global.ci/clang_toolchain.ci.core.x64-debug-tot-build_only/b8692683882729058145/overview


  Commit: 8a8d65a0c59ab4d32eaded05fda0ce2ffdd25c39
      https://github.com/llvm/llvm-project/commit/8a8d65a0c59ab4d32eaded05fda0ce2ffdd25c39
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Consistently use MinOrMax* in VPlanConstruction transforms (NFC)

Make sure variables/functions consistently use MinOrMax*, as suggested
in https://github.com/llvm/llvm-project/pull/170223. Split off from the
PR.


  Commit: 4d9624cab18b760e1e8f1d1b3835ba16ea2a4687
      https://github.com/llvm/llvm-project/commit/4d9624cab18b760e1e8f1d1b3835ba16ea2a4687
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

  Log Message:
  -----------
  [msan][NFCI] Refactor visitAnd body into helper function (#176031)

This allows reuse of the core visitAnd logic e.g., in
handleVectorPmaddIntrinsic().


  Commit: 523215fc4a44959e88fc50b296123658a3dc4f01
      https://github.com/llvm/llvm-project/commit/523215fc4a44959e88fc50b296123658a3dc4f01
  Author: Anshul Nigham <nigham at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-slh to new pass manager (#176014)


  Commit: aac296b87e8c55b2e4cee46219b4f029a06504a6
      https://github.com/llvm/llvm-project/commit/aac296b87e8c55b2e4cee46219b4f029a06504a6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td

  Log Message:
  -----------
  [AMDGPU][NFC] Change AMDGPU builtins to use ExtVector (#176033)

Summary:
These currently use the GNU vectors, not the OpenCL vectors, which is
strange.


  Commit: 2bf35f32330d6a0cada403559cd84e659224515a
      https://github.com/llvm/llvm-project/commit/2bf35f32330d6a0cada403559cd84e659224515a
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/TargetLoweringObjectFile.cpp
    A llvm/test/CodeGen/AArch64/ptrauth-global-no-pic.ll
    M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll

  Log Message:
  -----------
  [PAC][ELF] Place AUTH constants in .data.rel.ro for position dependent code (#150418)

For AArch64 target machine, effective relocation model on Windows and
Darwin is always PIC, while for ELF targets Static is used when
DynamicNoPIC is requested (see `getEffectiveRelocModel` in
AArch64TargetMachine.cpp).

This resulted in using .rodata section for AUTH constants, which is
wrong since these are filled with AUTH dynamic relocs and require the
section to be writeable during dynamic relocation resolving.

This patch adds a check ensuring if the constant itself or one of the
nested constants are AUTH ones. If so, use .data.rel.ro section.


  Commit: cc1e10d50bf2c52d80db3d9fa70549ff93806c6e
      https://github.com/llvm/llvm-project/commit/cc1e10d50bf2c52d80db3d9fa70549ff93806c6e
  Author: sstipano <sstipano7 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll

  Log Message:
  -----------
  [AMDGPU] Disable s_add_pc_i64 instruction (#175644)

s_add_pc_i64 instruction is broken on gfx1250. Disable it by default.


  Commit: dc133c9c21de2e45e3377472868e8e8df0d1fbbe
      https://github.com/llvm/llvm-project/commit/dc133c9c21de2e45e3377472868e8e8df0d1fbbe
  Author: Djordje Todorovic <djordje.todorovic at htecgroup.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/ObjCRuntime.h
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    R clang/test/CodeGen/riscv-be-data-layout.c
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/crtbegin.o
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32/crtbegin.o
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32d/crtbegin.o
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64/crtbegin.o
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64d/crtbegin.o
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/riscv64be-unknown-linux-gnu/bin/ld
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32d/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64d/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32d/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64/.keep
    R clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64d/.keep
    R clang/test/Driver/riscv-be.c

  Log Message:
  -----------
  Revert "[clang][RISCV] Add big-endian RISC-V target support" (#176039)

Reverts llvm/llvm-project#165599


  Commit: 2fe9d901dc6f6df627595cb3cc60f1f609a1c033
      https://github.com/llvm/llvm-project/commit/2fe9d901dc6f6df627595cb3cc60f1f609a1c033
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse41-builtins.c

  Log Message:
  -----------
  [CIR] Upstream CIR codegen for blend x86 builtins (#174236)

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


  Commit: 8c5352cf3e14ec0c56f592091899d229de8436a7
      https://github.com/llvm/llvm-project/commit/8c5352cf3e14ec0c56f592091899d229de8436a7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/hoist-predicated-loads-scalable.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/cast-induction.ll
    A llvm/test/Transforms/LoopVectorize/select-folds.ll

  Log Message:
  -----------
  [LV] Add additional cost and folding test coverage. (NFC)


  Commit: a331728c7a68a08c621070b9cab5cf1f72b425e2
      https://github.com/llvm/llvm-project/commit/a331728c7a68a08c621070b9cab5cf1f72b425e2
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    R .github/workflows/release-lit.yml
    M .github/workflows/release-tasks.yml

  Log Message:
  -----------
  worklows/release-tasks: Remove the release-lit workflow (#174644)

This hasn't been working for a while, and I think we should wait until
lit is part of the llvm organization on pypi before we start trying to
automate its release again.


  Commit: d0c87356d14ae7d22603152591292ba6229a303f
      https://github.com/llvm/llvm-project/commit/d0c87356d14ae7d22603152591292ba6229a303f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Handle constant step for VPScalarIVSteps in getSCEVExpr (NFC).

Update getSCEVExprForVPValue to handle VPScalarIVSteps with any constant
step. getSCEVExprForVPValue computes the SCEV for lane 0, so we can
simply return the IV operand, truncated/extended as needed.

This should be NFC and is tested via the VPlan-based cost-model, which
should compute costs matching the legacy cost model.


  Commit: d4469292bfc08413464c26be56a8f33e33ca8d54
      https://github.com/llvm/llvm-project/commit/d4469292bfc08413464c26be56a8f33e33ca8d54
  Author: Fady Farag <com.webkit.iidmsa at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M libcxx/include/__bit/byteswap.h
    M libcxx/src/locale.cpp
    M libcxx/test/support/concat_macros.h

  Log Message:
  -----------
  [libc++] Add parentheses around shift operations in bitwise expressions (#175407)

This improves consistency within files that already use this style.


  Commit: 3a9e3865b55d6f78dce303446456262d878a5b63
      https://github.com/llvm/llvm-project/commit/3a9e3865b55d6f78dce303446456262d878a5b63
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M offload/include/omptarget.h
    M offload/libomptarget/omptarget.cpp

  Log Message:
  -----------
  [OpenMP][Offload] Add FB_NULLIFY map-type for `use_device_ptr(fb_nullify)`. (1/4) (#169603)

Depends on #174659.

This PR adds a new map-type bit to control the fallback behavior when
when a pointer lookup fails.

For now, this is only meaningful with `RETURN_PARAM`, and can be used
for `need_device_ptr` (for which the default is to use `nullptr` as the
result
when lookup fails), and OpenMP 6.1's `use_device_ptr(fb_nullify)`.

Eventually, this can be extended to work with assumed-size maps on
`target`
constructs, to control what the argument should be set to when lookup
fails (the OpenMP spec does not have a way to control that yet).

Dependent PR: #170578.


  Commit: 8ac6c4adbdf014b6d384d9a9120dc2318aab10a4
      https://github.com/llvm/llvm-project/commit/8ac6c4adbdf014b6d384d9a9120dc2318aab10a4
  Author: Alison Zhang <alisonxzhang at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/test/Frontend/rewrite-includes-bom.c

  Log Message:
  -----------
  [Clang] Fix rewrite-includes-bom.c to use POSIX-compliant regex (#176043)

As `\s` is a GNU extension, it is not supported by the system grep on
AIX and thus fails in the
[buildbot](https://lab.llvm.org/buildbot/#/builders/64/builds/6835):

```
******************** TEST 'Clang :: Frontend/rewrite-includes-bom.c' FAILED ********************
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
cat /home/llvm/llvm-external-buildbots/workers/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/Frontend/Inputs/rewrite-includes-bom.h | od -t x1 | grep -q 'ef\s*bb\s*bf'
# executed command: cat /home/llvm/llvm-external-buildbots/workers/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/Frontend/Inputs/rewrite-includes-bom.h
# executed command: od -t x1
# executed command: grep -q 'ef\s*bb\s*bf'
# note: command had no output on stdout or stderr
# error: command failed with exit status: 1
--
********************
```

This change replaces `\s` with the POSIX-compliant `[[:space::]]` so the
test is supported on AIX.

Co-authored-by: Alison Zhang <alisonzhang at ibm.com>


  Commit: 44b691a1e9e1201034120d71de8bc5b9b3c044e6
      https://github.com/llvm/llvm-project/commit/44b691a1e9e1201034120d71de8bc5b9b3c044e6
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Update for #175873 (BuiltinsAMDGPU)


  Commit: 782bf6aff6ba6e9617bd3c4e27b3b9220ed5c850
      https://github.com/llvm/llvm-project/commit/782bf6aff6ba6e9617bd3c4e27b3b9220ed5c850
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/X86/hipe-cc64.ll
    A llvm/test/CodeGen/X86/musttail-struct.ll
    M llvm/test/CodeGen/X86/musttail-tailcc.ll
    M llvm/test/CodeGen/X86/sibcall.ll
    M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll
    M llvm/test/CodeGen/X86/tailcallbyval64.ll
    M llvm/test/CodeGen/X86/tailccbyval64.ll

  Log Message:
  -----------
  x86: fix musttail sibcall miscompilation (#168956)

fixes https://github.com/llvm/llvm-project/issues/56891
fixes https://github.com/llvm/llvm-project/issues/72390
fixes https://github.com/llvm/llvm-project/issues/147813

Currently the x86 backend miscompiles straightforward tail calls when
the stack is used for argument passing. This program segfaults on any
optimization level:

https://godbolt.org/z/5xr99jr4v

```c
typedef struct {
    uint64_t x;
    uint64_t y;
    uint64_t z;
} S;

__attribute__((noinline))
uint64_t callee(S s) {
    return s.x + s.y + s.z;
}

__attribute__((noinline))
uint64_t caller(S s) {
    [[clang::musttail]]
    return callee(s);
}
```

The immediate issue is that `caller` decides to shuffle values around on
the stack, and in the process writes to `*rsp`, which contains the
return address. With the return address trashed, the `ret` in `callee`
jumps to an invalid address.

```asm
caller:
        mov     rax, qword ptr [rsp + 24]
        mov     qword ptr [rsp + 16], rax
        movaps  xmm0, xmmword ptr [rsp + 8]
        movups  xmmword ptr [rsp], xmm0 ; <-- that is just all kinds of wrong
        movaps  xmmword ptr [rsp + 8], xmm0
        mov     qword ptr [rsp + 24], rax
        jmp     callee
```

However, I think the actual problem is that the x86 backend never
considers `musttail` calls to be sibcalls. For sibcalls, no stack
reshuffling is required at all, circumventing the problem here.

This PR essentially copies https://reviews.llvm.org/D131034 (cc
@huangjd), but this time I hope we can actually land this, and solve
this problem.

The aarch64 backend also miscompiled this example, but they appear to
have fixed it in LLVM 20.

Tail calls just not working for any sort of non-trivial argument types
is a blocker for tail call support in rust, see
https://github.com/rust-lang/rust/issues/144855#issuecomment-3536643185.


  Commit: f1821a50c8d97e966def825b7642c28db2fa8113
      https://github.com/llvm/llvm-project/commit/f1821a50c8d97e966def825b7642c28db2fa8113
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M llvm/docs/MemProf.rst

  Log Message:
  -----------
  [docs][MemProf]Update compiler options for static data partitioning (#175872)

https://github.com/llvm/llvm-project/pull/124991 introduces a Clang
option for static data partitioning. Update the LLVM option with the
Clang option and some notes on how data hotness is inferred from
profiles.


  Commit: 21b36423c5ad4fe6e4be5f40173fd2b4e45827f3
      https://github.com/llvm/llvm-project/commit/21b36423c5ad4fe6e4be5f40173fd2b4e45827f3
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
    R lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M llvm/utils/gn/secondary/lldb/source/Plugins/SymbolFile/NativePDB/BUILD.gn

  Log Message:
  -----------
  [LLDB][NativePDB] Introduce PdbAstBuilderClang (#175840)

This changes `PdbAstBuilder` to a language-neutral abstract interface
and moves all of its functionality to the `PdbAstBuilderClang` derived
class.

All Clang-specific methods with external callers are now public methods
on `PdbAstBuilderClang`. `TypeSystemClang` and `UdtRecordCompleter` use
`PdbAstBuilderClang` directly.

Did my best to clean up includes and unused methods.

RFC for context:

https://discourse.llvm.org/t/rfc-lldb-make-pdbastbuilder-language-agnostic/89117


  Commit: a0b71b048b68a3d23a4a62b27058df4eba69e4ee
      https://github.com/llvm/llvm-project/commit/a0b71b048b68a3d23a4a62b27058df4eba69e4ee
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlVariant.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/main.cpp

  Log Message:
  -----------
  Revert "[LLDB] Fix MS STL `variant` with non-trivial types" (#176059)

Reverts llvm/llvm-project#171489 because it causes
`TestDataFormatterStdVariant.py` to fail on Darwin.

Affected bots:

- https://ci.swift.org/view/all/job/llvm.org/view/LLDB/job/as-lldb-cmake/
- https://ci.swift.org/view/all/job/llvm.org/view/LLDB/job/lldb-cmake/


  Commit: fb0881f62891e4042725731ec2e4cbc7e8f37e7c
      https://github.com/llvm/llvm-project/commit/fb0881f62891e4042725731ec2e4cbc7e8f37e7c
  Author: Bangtian Liu <liubangtian at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-with-reduction-tiling.mlir

  Log Message:
  -----------
  [mlir][Tensor] Add rank-reducing slice in generatedSlices (#174248)

When `replaceExtractSliceWithTiledProducer `creates a rank-reducing
slice to handle type mismatches, it should be tracked in
`generatedSlices `so downstream cleanup patterns (like IREE's
FoldExtractSliceOfBroadcast) can process it.
 
This PR also fixes an infinite loop in getUntiledProducerFromSliceSource
where adding the slice to generatedSlices caused the fusion worklist to
repeatedly try to re-fuse producers already inside the innermost loop;
the fix skips producers that are already inside the innermost loop via
an isProperAncestor check.

Added a lit test (@fuse_through_rank_reducing_slice) demonstrating
correct fusion through rank-reducing slices. Note that demonstrating the
generatedSlices tracking benefit requires a cleanup pattern
(SwapExtractSliceWithFillPatterns) to consume the slice; IREE's full CI
suite (iree-org/iree#23012) validates this works correctly in practice
with patterns like FoldExtractSliceOfBroadcast.

---------

Signed-off-by: Bangtian Liu <liubangtian at gmail.com>


  Commit: eaa7516e15ce50d0e49eecfc4bceb9e6cd91ff8f
      https://github.com/llvm/llvm-project/commit/eaa7516e15ce50d0e49eecfc4bceb9e6cd91ff8f
  Author: calm <148254234+calm329 at users.noreply.github.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    A llvm/test/CodeGen/X86/clmul-x86.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [X86] Lower scalar llvm.clmul intrinsics to PCLMULQDQ (#175189) (#175216)

Add support for lowering scalar llvm.clmul intrinsics (i8/i16/i32/i64)
to the PCLMULQDQ hardware instruction on X86 targets with the PCLMUL
feature, instead of using the default software expansion.

The lowering:

- Extends smaller types to the target's native width (i64 on x86-64, i32
on i686)
- Uses SCALAR_TO_VECTOR to create vectors (v2i64 on x86-64, v4i32 with
bitcast to v2i64 on i686)
- Performs X86ISD::PCLMULQDQ with immediate 0x00
- Extracts the result and truncates back to the original type

i8/i16/i32 CLMUL is enabled on both 32-bit and 64-bit targets. i64
CLMUL/CLMULH is only enabled on 64-bit targets.

Also adds ISD::CLMULH i64 support by extracting the upper element from
the v2i64 result.

Fixes #175189


  Commit: 882560eb5193c19ddd2d0ab7c2d034bcfbebba42
      https://github.com/llvm/llvm-project/commit/882560eb5193c19ddd2d0ab7c2d034bcfbebba42
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl

  Log Message:
  -----------
  [OpenCL] Add missing mipmap read_write image builtins to OpenCLBuiltins.td (#175748)

This issue was discovered while writing tests for #175120.


  Commit: 43f1edf0cfcbcce7c928e0e27221a5de1fb797ba
      https://github.com/llvm/llvm-project/commit/43f1edf0cfcbcce7c928e0e27221a5de1fb797ba
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  Fix bazel build for d5442b8 (#176034)

Bazel equivalent of cmakelists changes.


  Commit: a8098629bce2decd4b52aebaf179cbc480603dd2
      https://github.com/llvm/llvm-project/commit/a8098629bce2decd4b52aebaf179cbc480603dd2
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/freeze-integer-intrinsics.ll

  Log Message:
  -----------
  [IR] Teach `drop/hasPoisonGeneratingAnnotations()` about `abs`, `ctlz` and `cttz` (#175941)


  Commit: 01f70575a97838a64f3acfe39e31cff023a1fdfb
      https://github.com/llvm/llvm-project/commit/01f70575a97838a64f3acfe39e31cff023a1fdfb
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  Revert "Fix bazel build for d5442b8 (#176034)"

This reverts commit 43f1edf0cfcbcce7c928e0e27221a5de1fb797ba.

Fixed already by 44b691a1e9e1201034120d71de8bc5b9b3c044e6.


  Commit: 779c05a62548b694750be985d86fa193b0983fa7
      https://github.com/llvm/llvm-project/commit/779c05a62548b694750be985d86fa193b0983fa7
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/MCDCState.h
    M clang/test/Profile/c-mcdc-logicalop-ternary.c

  Log Message:
  -----------
  [MC/DC] Create dedicated MCDCCondBitmapAddr for each Decision (#125411)

MCDCCondBitmapAddr is moved from `CodeGenFunction` into `MCDCState` and
created for each Decision.

In `maybeCreateMCDCCondBitmap`, Allocate bitmaps for all valid Decisions
and emit them order by ID, to prevent nondeterminism.


  Commit: a11feef2e11da15e4f874bf72dcdc827e60464cb
      https://github.com/llvm/llvm-project/commit/a11feef2e11da15e4f874bf72dcdc827e60464cb
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/IR/invalid-complex.cir
    M clang/test/CIR/IR/invalid-throw.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/invalid-vector.cir
    M clang/test/CIR/IR/resume-flat.cir
    M clang/test/CIR/IR/struct.cir
    M clang/test/CIR/IR/throw.cir
    M clang/test/CIR/IR/vector.cir
    A clang/test/CIR/Lowering/alloca.cir
    M clang/test/CIR/Transforms/complex-create-fold.cir
    M clang/test/CIR/Transforms/complex-imag-fold.cir
    M clang/test/CIR/Transforms/complex-real-fold.cir
    M clang/test/CIR/Transforms/ternary-fold.cir
    M clang/test/CIR/Transforms/vector-extract-fold.cir

  Log Message:
  -----------
  [CIR] Make cir.alloca alignment mandatory (#172663)

Fixed a crash in `CIRToLLVMAllocaOpLowering` where `cir.alloca`
operations without an explicit alignment attribute caused failures.

Modified the ODS definition of `cir.alloca` to use
`ConfinedAttr<I64Attr, [IntMinValue<0>]>`. This ensures the attribute is
always present.

Added a regression test in `clang/test/CIR/Lowering/alloca.cir`.

---------

Co-authored-by: Sirui Mu <msrlancern at gmail.com>


  Commit: d7b6df77d0b7990ff1f00d552c316f7666a9068b
      https://github.com/llvm/llvm-project/commit/d7b6df77d0b7990ff1f00d552c316f7666a9068b
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2_512bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512dq-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512fp16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vldq-builtins.c

  Log Message:
  -----------
  [CIR][X86] Add CIR codegen support for fpclass x86 builtins (#172813)

This implements the handling for x86-specific fpclass builtin functions.


  Commit: 663647f1b2befbb4eda52369438febf42e528921
      https://github.com/llvm/llvm-project/commit/663647f1b2befbb4eda52369438febf42e528921
  Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    A cross-project-tests/dtlto/multimodule.test
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [DTLTO] Fix handling of multi-module bitcode inputs (#174624)

This change fixes two issues when processing multi-module bitcode files
in DTLTO:

1. The DTLTO archive handling code incorrectly uses
getSingleBitcodeModule(), which asserts when the bitcode file contains
more than one module.
2. The temporary file containing the contents of an input archive member
was not emitted for multi-module bitcode files. This was due to
incorrect logic for recording whether a bitcode input contains any
ThinLTO modules. In a typical multi-module bitcode file, the first
module is a ThinLTO module while a subsequent auxiliary module is
non-ThinLTO. When modules are processed in order, the auxiliary module
causes the entire bitcode file to be classified as non-ThinLTO, and the
archive-member emission logic then incorrectly skips it.

In addition, this patch adds a test that verifies that multi-module
bitcode files can be successfully linked with DTLTO. The test reproduces
both issues as they existed prior to this change.

SIE Tracker: TOOLCHAIN-21008


  Commit: 4db68e458e43b90a18b8810e454e227ea0e9ae85
      https://github.com/llvm/llvm-project/commit/4db68e458e43b90a18b8810e454e227ea0e9ae85
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Passes/MachinePassRegistry.def

  Log Message:
  -----------
  [NewPM][CodeGen] Add missing non-ported pass to registry

Not sure why this did not make it in the list originally. But adding it
so that someone looking for passes to port in the registry will see it.


  Commit: b77f95243d78ec587c72c8d33d473c35a2e3342b
      https://github.com/llvm/llvm-project/commit/b77f95243d78ec587c72c8d33d473c35a2e3342b
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  gn build: Port d5442b8c963d


  Commit: c9f4bb65352a7894f8eb04e65276f01689365994
      https://github.com/llvm/llvm-project/commit/c9f4bb65352a7894f8eb04e65276f01689365994
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86PassRegistry.def

  Log Message:
  -----------
  [X86][NewPM] Add rest of non-ported passes to X86PassRegistry (#176068)

I noticed these when writing up the pass builder. Put them in the pass
registry to make it easier to see what is not done yet for when people
start working on more porting.


  Commit: 434630333e52ce2a12248fee47f8a727632ce5d5
      https://github.com/llvm/llvm-project/commit/434630333e52ce2a12248fee47f8a727632ce5d5
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/test/CodeGen/Hexagon/swp-carried-dep1.mir
    M llvm/test/CodeGen/Hexagon/swp-carried-dep2.mir

  Log Message:
  -----------
  [MachinePipeliner] Remove cheap check in dependence analysis (#174390)

In loop-carried dependence analysis of MachinePipeliner, there is
special handling for a specific case, referred to as a "cheap check".
This check is not sound and sometimes misses dependencies. If there is
no significant performance regression, this special logic should be
deleted.

Split off from https://github.com/llvm/llvm-project/pull/135148


  Commit: 8610d359c5babec353d86101218e57c37a14ced8
      https://github.com/llvm/llvm-project/commit/8610d359c5babec353d86101218e57c37a14ced8
  Author: Liu Ke <liuke.gehry at bytedance.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    A llvm/test/DebugInfo/X86/fission-simple-template-names.ll
    M llvm/test/DebugInfo/X86/fission-template.ll

  Log Message:
  -----------
  [DebugInfo] Only generate template parameters in the skeleton CU for a template function/type with simplified name (3/3) (#175879)

Currently, when generating debug info for skeleton units, all template
parameters are emitted unconditionally. To optimize debug info size, the
emission should be conditional — providing parameters only for template
types/functions whose names have actually been simplified. As described
in [this
RFC](https://discourse.llvm.org/t/rfc-debuginfo-selectively-generate-template-parameters-in-the-skeleton-cu/89395).
Previous patches: #175130, #175708


  Commit: 29419c48d518e6e9082ec9a3c5dbba309ec25ebe
      https://github.com/llvm/llvm-project/commit/29419c48d518e6e9082ec9a3c5dbba309ec25ebe
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/lib/ExecutionEngine/JITLink/loongarch.cpp
    M llvm/unittests/ExecutionEngine/JITLink/StubsTests.cpp

  Log Message:
  -----------
  [JITLink][LoongArch] Refactor jump stub to support LA32R (#175355)


  Commit: ba2eaa9f61f0043d4aa442403cd09ebe75c3f5a6
      https://github.com/llvm/llvm-project/commit/ba2eaa9f61f0043d4aa442403cd09ebe75c3f5a6
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/coro-task.cpp

  Log Message:
  -----------
  [CIR] Upstream support for coroutine co_yield expression (#173162)

This PR upstreams support for the co_yield expression by emitting a
cir.await op with the yield kind.


  Commit: a975d2c71152200e1f8070967d5a0bf905b7080c
      https://github.com/llvm/llvm-project/commit/a975d2c71152200e1f8070967d5a0bf905b7080c
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp

  Log Message:
  -----------
  [MC][NFC] Use appendLEB128 helper in MCDwarf.cpp (#175962)

This is a very minor simplification of the logic. We made a similar
change to RISC-V in #173198.


  Commit: 2fa1ba62ac92fe95613d980e38ac2db36141fee8
      https://github.com/llvm/llvm-project/commit/2fa1ba62ac92fe95613d980e38ac2db36141fee8
  Author: Manasij Mukherjee <manasijm at nvidia.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    A llvm/test/CodeGen/AArch64/aarch64-sve-setcc-promote-nxv8i8-crash.ll

  Log Message:
  -----------
  [SelectionDAG] Fix zext assertion check for scalable vectors (#176064)

Use element type comparisons in getZeroExtendInReg to avoid comparing
scalable and fixed types.

Fixes #176037


  Commit: 39adbcfb9b0db10eb56885f76b9670a949b977bd
      https://github.com/llvm/llvm-project/commit/39adbcfb9b0db10eb56885f76b9670a949b977bd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/StackColoring.cpp

  Log Message:
  -----------
  [StackColoring] Delete lifetime markers even when pass is disabled by -opt-bisect-limit (#176050)

Fixes #164336


  Commit: 9f688117271e95808342e9609c5cb377604f1278
      https://github.com/llvm/llvm-project/commit/9f688117271e95808342e9609c5cb377604f1278
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-14 (Wed, 14 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add helper classes to avoid repeating FPR allocation order multiple times. NFC (#176090)


  Commit: a6ada9e0d75817e0526c265769b34a239539b42d
      https://github.com/llvm/llvm-project/commit/a6ada9e0d75817e0526c265769b34a239539b42d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/test/AST/ByteCode/c.c

  Log Message:
  -----------
  [clang][bytecode] Fix wrong function call in test case (#176085)

This was supposed to call callReturnsComplex().


  Commit: a9e852c0fa0876d0e1f0ca2226575239ce119b2d
      https://github.com/llvm/llvm-project/commit/a9e852c0fa0876d0e1f0ca2226575239ce119b2d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [ORC][MachO] Clean up incompatible-arch-in-object error message. (#176092)

Add missing spaces to error messages, use Triple::getArchName (gives
canonical arch name on Darwin, e.g. "arm64" rather than "aarch64").

No testcase for this one: the change is cosmetic, and the error message
format not relied upon anywhere.


  Commit: d023577ef98490a097108eacaecd2dd114fd7974
      https://github.com/llvm/llvm-project/commit/d023577ef98490a097108eacaecd2dd114fd7974
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll

  Log Message:
  -----------
  [VPlan] Explicitly test EVL recipe has "evl" name. NFC

Addresses the comment in
https://github.com/llvm/llvm-project/pull/175493#pullrequestreview-3651607778


  Commit: c5407e0fbd9ddfa67f5c326fb35842121c0a055d
      https://github.com/llvm/llvm-project/commit/c5407e0fbd9ddfa67f5c326fb35842121c0a055d
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/TemplateArgumentHasher.cpp

  Log Message:
  -----------
  [Serialization] Hash inner template arguments

The code is applied from ODRHash::AddDecl with the reasoning given
in the comment, to reduce collisions. This was particularly visible
with STL types templated on std::pair where its template arguments
were not taken into account.

Reviewed as part of https://github.com/llvm/llvm-project/pull/133057


  Commit: 3ad6d350c44f54482a86a7eb488732093eaed372
      https://github.com/llvm/llvm-project/commit/3ad6d350c44f54482a86a7eb488732093eaed372
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    A llvm/test/Analysis/CostModel/RISCV/scalable-gather-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    A llvm/test/Analysis/CostModel/RISCV/scalable-scatter-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll

  Log Message:
  -----------
  [RISCV] Add tests for rv32 gather/scatter costs. NFC

There's a divergence with the rv32 costs that I plan on fixing in
another patch, so this precommits the tests for them.

The zve32f RUN lines were split off into another file so the check prefixes
are easier to reason about.

The -riscv-v-vector-bits-max RUN lines were also removed to simplify the
check prefixes since I'm not sure if they were intentionally testing any
specific logic.


  Commit: e5999e84b6a93297e320379f635cef9cbb7cc3a6
      https://github.com/llvm/llvm-project/commit/e5999e84b6a93297e320379f635cef9cbb7cc3a6
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/transform-op-decompose.mlir

  Log Message:
  -----------
  [Linalg] Update Conv Decomposition patterns to work with generic convolution ops as well (#174196)

-- This commit updates Conv Decomposition patterns to work with both
named as
   well as generic convolution ops.
-- Since now a "generic" LinalgOp is being used as the root op in the
patterns
above the `assert` of the op implementing a ConvolutionOpInterface has
   been replaced with an early exit `if`.

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


  Commit: 2789ad2b79b40494fa9f915e9661d63cd404c8cc
      https://github.com/llvm/llvm-project/commit/2789ad2b79b40494fa9f915e9661d63cd404c8cc
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    A llvm/test/CodeGen/X86/replace-thunk-tail-win.ll

  Log Message:
  -----------
  [X86] Fix TC_RETURN selection failure for Win+Thunk combination (#175977)

https://github.com/llvm/llvm-project/pull/158055 added a
IsNotWin64CCFunc predicate to these cases for reasons that are not super
clear to me, which causes selection failures as this combination is not
covered elsewhere.

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


  Commit: b0b1ab8a40f2b91041ad102aa28fec2e84f9b76e
      https://github.com/llvm/llvm-project/commit/b0b1ab8a40f2b91041ad102aa28fec2e84f9b76e
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/include/flang/Lower/OpenACC.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/test/Fir/OpenACC/recipe-populate-firstprivate.mlir
    M flang/test/Fir/OpenACC/recipe-populate-private.mlir
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Transforms/OpenACC/acc-implicit-firstprivate.fir
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [flang][openacc] support array section privatization in lowering (#175184)

Add support array section in private, firstprivate, and reduction.

Key changes:
- Change the related data operation result type to return the same type
as the array base (same type as the acc variable input in the
operation), while it was the type of the section before. This allows
remapping the base the to result value (to use the data operation result
as the base when generating addressing inside the compute region).
- The generatePrivateInit implementation of FIROpenACCTypeInterfaces is
modified to allocate storage only for the section, and to return the
mock base address (that is the address of the allocation minus the
offset/lower bound of the privatized section).
- The code generating the copy and combiner region is moved from
OpenACC.cpp to FIROpenACCTypeInterfaces.cpp via the addition of new
generateCopy and generateCombiner interface in the
MappableTypeInterface. This allows sharing all the addressing helper
with generatePrivateInit, and will allow late generation of all recipes
with Fortran.
- Update generatePrivateDestroy to deallocate the beginning of the
section if any.
 
In the process, the generatePrivateInit implementation is
modified so that it is more uniform to make it easier to deal with the
section. This also allowed removing runtime calls when initializing the
private for array reduction.


  Commit: b84ffe040babfd8541613e41dd394a1baa9404fb
      https://github.com/llvm/llvm-project/commit/b84ffe040babfd8541613e41dd394a1baa9404fb
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-load-lane-offset.ll

  Log Message:
  -----------
  [WebAssembly] LoadLane matching with offsets (#176005)


  Commit: 808a6ba345ce6e898e9acc4c5eda60165806e967
      https://github.com/llvm/llvm-project/commit/808a6ba345ce6e898e9acc4c5eda60165806e967
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    A llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.ll

  Log Message:
  -----------
  [VPlan] Bail out when rdx result cannot be found in handleFindLast.

Turn assertion from 2abd6d6d7ac
(https://github.com/llvm/llvm-project/pull/158088) into a bail
out to prevent crash when tail-folding.

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


  Commit: 4304106dc20c71b52fb06ca1fbdfd81f68d3c158
      https://github.com/llvm/llvm-project/commit/4304106dc20c71b52fb06ca1fbdfd81f68d3c158
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/find_if.h
    A libcxx/include/__memory/valid_range.h
    M libcxx/include/__utility/is_pointer_in_range.h
    R libcxx/include/__utility/is_valid_range.h
    M libcxx/include/module.modulemap.in
    M libcxx/include/streambuf
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/libcxx/utilities/is_valid_range.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp

  Log Message:
  -----------
  Reapply "[libc++] Optimize std::find_if" (#175903) (#175921)

#175913 removed that `__builtin_assume_dereferenceable(ptr, 0)` implies
`ptr != nullptr`, which should allow us to use the builtin with LLVM 23.

This reverts commit 776c09c212e945fdceeae240b42c38df3dd34727.


  Commit: 48ce1f6ba7ddf6af0ec41bebd0a90ab4587ad0df
      https://github.com/llvm/llvm-project/commit/48ce1f6ba7ddf6af0ec41bebd0a90ab4587ad0df
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [Serialization] Complete only needed partial specializations

It is unclear (to me) why this needs to be done "for safety", but
this change significantly improves the effectiveness of lazy loading.

Reviewed as part of https://github.com/llvm/llvm-project/pull/133057


  Commit: 007e81af9d4c41015f10efa911f6161d4519cf44
      https://github.com/llvm/llvm-project/commit/007e81af9d4c41015f10efa911f6161d4519cf44
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [LLVM][NFC] Remove unused YAML strong typedefs (#172933)


  Commit: 0f54961189623e4bbce4254e4e8ca4c2f65be4fa
      https://github.com/llvm/llvm-project/commit/0f54961189623e4bbce4254e4e8ca4c2f65be4fa
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Introduce nsz flag on minimum/maximum in SimplifyDemandedFPClass (#173898)

Alive isn't particularly happy with this in the case where
one of the inputs could be zero, but I think
it's wrong: https://alive2.llvm.org/ce/z/dF7V6k

nsz shouldn't permit introducing a -0 result where
there wasn't one in the input here.


  Commit: b153f17b8aeb23ae45b05d8f5e6b4dfd76442dc4
      https://github.com/llvm/llvm-project/commit/b153f17b8aeb23ae45b05d8f5e6b4dfd76442dc4
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll

  Log Message:
  -----------
  [InstCombine] Fold chained GEP with constant base into single GEP (#170439)

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


  Commit: 4a4befec6954e967028126423b49de2102a7ba36
      https://github.com/llvm/llvm-project/commit/4a4befec6954e967028126423b49de2102a7ba36
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    A libsycl/docs/CodingGuidelines.rst

  Log Message:
  -----------
  [SYCL] Add CodingGuidelines.rst for libsycl (#171867)

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 2a8bb5b74923cd3a39f803e91fe36acd0c4bd30d
      https://github.com/llvm/llvm-project/commit/2a8bb5b74923cd3a39f803e91fe36acd0c4bd30d
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 4304106dc20c


  Commit: 4cbca489c3b1d1f5b25e4f70e7942a7e4abfae65
      https://github.com/llvm/llvm-project/commit/4cbca489c3b1d1f5b25e4f70e7942a7e4abfae65
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/test/Driver/riscv-cpus.c
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add missing arch features of tt-ascalon-d8 (#176071)

A GCC patch has been landed, which can be used as a reference for the
architectural features of tt-ascalon-d8. The patch is missing Zvfbfmin
(reported to GCC patch author), but we should align the architectural
features in LLVM with that tested patch otherwise.

Ref: https://gcc.gnu.org/pipermail/gcc-patches/2026-January/705300.html


  Commit: b6d0e74fb7d06b7f5693b5ba4078686617c91a66
      https://github.com/llvm/llvm-project/commit/b6d0e74fb7d06b7f5693b5ba4078686617c91a66
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir

  Log Message:
  -----------
  [mlir][tosa] Add support for fp32 accumulators in fp8 convolution operations (#175517)

As per the spec change:
https://github.com/arm/tosa-specification/pull/16


  Commit: 0d5be1a262ee2b9930e2ab3f5ca792a4d0fcf255
      https://github.com/llvm/llvm-project/commit/0d5be1a262ee2b9930e2ab3f5ca792a4d0fcf255
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/AST/DeclTemplate.cpp

  Log Message:
  -----------
  [Serialization] Load only needed partial specializations

Similar as the last commit, it is unclear why we need to load all
specializations, including non-partial ones, when we have a TPL.

Reviewed as part of https://github.com/llvm/llvm-project/pull/133057


  Commit: 222fff827e57743c1cde781cc3e938da68c16171
      https://github.com/llvm/llvm-project/commit/222fff827e57743c1cde781cc3e938da68c16171
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/builtin-object-size-codegen.cpp

  Log Message:
  -----------
  [clang][bytecode] Remove base casts in builtin_object_size (#176111)

If UseFieldDesc is set, we should use the "closest surrounding
subobject", which apparently cannot be a subclass pointer.

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


  Commit: 8546294db95da36f58ba840c32cc9e1b1c6ebba8
      https://github.com/llvm/llvm-project/commit/8546294db95da36f58ba840c32cc9e1b1c6ebba8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/test/CodeGen/hexagon-linux-vararg.c

  Log Message:
  -----------
  [Hexagon] Use getSigned() for negative values in va_arg handling (#176115)

This avoids implicit truncation assertions with
https://github.com/llvm/llvm-project/pull/171456. Apparently the
alignment code path was previously untested.

The first commit switches the test to generated check lines.


  Commit: 7abe5b73b57340f49778d69eb8ad0f8b701941ea
      https://github.com/llvm/llvm-project/commit/7abe5b73b57340f49778d69eb8ad0f8b701941ea
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Object/OffloadBundle.cpp
    A llvm/test/tools/llvm-readobj/MachO/all.test

  Log Message:
  -----------
  [llvm-readobj][offload] Fix llvm-readobj --all on MachO (#175912)

Currently running llvm-readobj --all on any MachO object asserts,
because it implies --offload, and the --offload extraction includes an
assert on the object format. Instead, we should be silently ignoring.

This regressed in https://github.com/llvm/llvm-project/pull/143342.


  Commit: dd947ebcf38382efca6c883d144f37db7045a062
      https://github.com/llvm/llvm-project/commit/dd947ebcf38382efca6c883d144f37db7045a062
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-agent.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll

  Log Message:
  -----------
  [AMDGPU] Update gfx1250 memory model for global acquire/release (#175865)

Inserts required waits around GLOBAL_INV/GLOBAL_WBINV for
agent scope and above.


  Commit: 314769fd2a8dc809d72f8366fcbd30c78ee5c544
      https://github.com/llvm/llvm-project/commit/314769fd2a8dc809d72f8366fcbd30c78ee5c544
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [X86] clmul.ll - add missing clmulr_i64 test coverage (#176131)


  Commit: b2828bdf809828346ca628de9091c1a269364743
      https://github.com/llvm/llvm-project/commit/b2828bdf809828346ca628de9091c1a269364743
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/combine-pclmul.ll

  Log Message:
  -----------
  [X86] combine-pclmul.ll - add demanded elts test coverage (#176132)

Based off the equivalent instcombine test coverage - but we can now create X86ISD::PCLMULQDQ nodes in the DAG as well


  Commit: c322a0c462b1b277e5862aeae2e95a40f7b130d4
      https://github.com/llvm/llvm-project/commit/c322a0c462b1b277e5862aeae2e95a40f7b130d4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-throttled.ll

  Log Message:
  -----------
  [SLP]Do not throttle nodes with split parents, if any of scalars is used in more than one split nodes

If the the node to throttle is a vector node, which is used in split
node, and at least one scalar of such a node is used in many split
nodes, such vector node should be throttled. otherise there might be
wrong def-use chain, which crashes the compiler.

Fixes #175967


  Commit: 019bf036972f061ee42b1fa7d64bc3456689a664
      https://github.com/llvm/llvm-project/commit/019bf036972f061ee42b1fa7d64bc3456689a664
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    A lld/test/ELF/loongarch-call30.s
    A lld/test/ELF/loongarch-relax-call30-2.s
    A lld/test/ELF/loongarch-relax-call30.s
    M lld/test/ELF/loongarch-relax-emit-relocs.s
    M lld/test/ELF/loongarch-tls-gd-edge-case.s
    M lld/test/ELF/loongarch-tls-gd.s
    M lld/test/ELF/loongarch-tls-ie.s
    M lld/test/ELF/loongarch-tls-ld.s
    M lld/test/ELF/loongarch-tlsdesc.s

  Log Message:
  -----------
  [lld][LoongArch] Support reloc types for LA32R/LA32S (#172618)

This patch adds support for processing the relocation types introduced
in la-abi-specs v2.50.

Link: https://github.com/loongson/la-abi-specs/pull/16
Link:
https://sourceware.org/pipermail/binutils/2025-December/146091.html


  Commit: 16f690e0ff97b8e0dece0e0237552208cafe1c7f
      https://github.com/llvm/llvm-project/commit/16f690e0ff97b8e0dece0e0237552208cafe1c7f
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h

  Log Message:
  -----------
  [JITLink][LoongArch][NFC] Fix Call30PCRel range docs


  Commit: f6270bbcd543bd38cfa2e745a612c96c900eb32a
      https://github.com/llvm/llvm-project/commit/f6270bbcd543bd38cfa2e745a612c96c900eb32a
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/TemplateArgumentHasher.cpp

  Log Message:
  -----------
  [Serialization] Remove bail-out logic in TemplateArgumentHasher

While it is correct to assign a single fixed hash to all template
arguments, it can reduce the effectiveness of lazy loading and is
not actually needed: we are allowed to ignore parts that cannot be
handled because they will be analogously ignored by all hashings.

Reviewed as part of https://github.com/llvm/llvm-project/pull/133057


  Commit: de4f43114c4e2b803b2084bcae58872e10f566d0
      https://github.com/llvm/llvm-project/commit/de4f43114c4e2b803b2084bcae58872e10f566d0
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/cfi-multiple-locations.mir

  Log Message:
  -----------
  [CFIInstrInserter] Fix a test. (#176048)

In the test `cfi-multiple-locations.mir` the block `bb.1` was
unreachable.


  Commit: 1457732b667ff5c8d6791d61b3b2c1777378b90d
      https://github.com/llvm/llvm-project/commit/1457732b667ff5c8d6791d61b3b2c1777378b90d
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CFIInstrInserter.cpp

  Log Message:
  -----------
  [CFIInstrInserter][NFC] Remove useless `#define`. (#176051)


  Commit: a60c9a942fa12c9d7e3800546e9070ce0a2c7925
      https://github.com/llvm/llvm-project/commit/a60c9a942fa12c9d7e3800546e9070ce0a2c7925
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CFIInstrInserter.cpp

  Log Message:
  -----------
  [CFIInstrInserter] Add `dump` method to `CSRSavedLocation`. (#176054)

This is to reduce the diff for the future commit where we plan to use
this for reporting errors.


  Commit: dc5e1d05bfd10fa2a84db52da13572a489795ef5
      https://github.com/llvm/llvm-project/commit/dc5e1d05bfd10fa2a84db52da13572a489795ef5
  Author: Volodymyr Turanskyy <vturanskyy at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M libcxx/CMakeLists.txt
    M libcxx/include/__config
    M libcxx/include/__config_site.in
    M libcxx/include/__random/binomial_distribution.h
    M libcxx/src/chrono.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp
    M libcxx/src/include/config_elast.h

  Log Message:
  -----------
  [libc++] Provide flag for RUNTIMES_USE_LIBC=llvm-libc (#174967)

There was no flag added for llvm-libc when picolibc and newlib were
provided in https://github.com/llvm/llvm-project/pull/147956 - the
missing flag breaks libc++ iostream support now because this check
https://github.com/llvm/llvm-project/blob/9a8421fa6191d2e1047e3dc8c72a22fa810f9aee/libcxx/include/__config#L719
fails unless an LLVM libc header is included.


  Commit: ab6b6c95e08f80ae5dd95139fd02157a509bdaae
      https://github.com/llvm/llvm-project/commit/ab6b6c95e08f80ae5dd95139fd02157a509bdaae
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86Combine.td
    M llvm/test/CodeGen/X86/GlobalISel/add-ext.ll
    M llvm/test/CodeGen/X86/GlobalISel/pr49087.ll
    M llvm/test/CodeGen/X86/GlobalISel/ptr-add.ll
    M llvm/test/CodeGen/X86/GlobalISel/undef.ll

  Log Message:
  -----------
  [X86][GISEL] Enable Combines for constants and undef (#175711)

This patch supports combines for constants and undef. Primary motive is
to fold muls and remove undef chains from final outputs.


  Commit: 86b1412195968e9ca5d17e3861a8e0184d9b97f0
      https://github.com/llvm/llvm-project/commit/86b1412195968e9ca5d17e3861a8e0184d9b97f0
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Support/Utils.h

  Log Message:
  -----------
  [flang][NFC] fix typo in mlirTypeToIntrinsicFortran (#175762)

Fix pretty printing of complex function types in the error messages when
no runtime function is found to implement some intrinsic in lowering.


  Commit: 6977e6812c3e2027f0f427506ee151011f1e55bb
      https://github.com/llvm/llvm-project/commit/6977e6812c3e2027f0f427506ee151011f1e55bb
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/extension/package.json
    M lldb/unittests/DAP/ProtocolTypesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Move targetId and debuggerId into a session property (#175930)

This makes it clear the fields required for attaching to an existing
debug session.

It also makes it easier to check mutually exclusive fields required to
attach.


  Commit: 425e6bd85d38f4a530e851c28a75b152bfc0966b
      https://github.com/llvm/llvm-project/commit/425e6bd85d38f4a530e851c28a75b152bfc0966b
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Handle GSL pointer construction from raw pointers (#175963)


  Commit: 0c5c920aa7f23dd256d8eacf67a461ff326864be
      https://github.com/llvm/llvm-project/commit/0c5c920aa7f23dd256d8eacf67a461ff326864be
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/test/CodeGen/SPIRV/legalization/spv-extractelt-legalization.ll
    A llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll

  Log Message:
  -----------
  [SPIRV] Improve vector legalization and type deduction (#175067)

This patch adds support for scalarizing vector loads in the legalizer
and
implements legalization for the spv_const_composite intrinsic. It also
refactors stack temporary creation for vector operations to ensure
correct
SPIR-V types are assigned. Additionally, type deduction in the
PostLegalizer is improved to handle GEP and Load instructions.

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


  Commit: 262208728ae9077776e78a73f25ea2c142e2e6a8
      https://github.com/llvm/llvm-project/commit/262208728ae9077776e78a73f25ea2c142e2e6a8
  Author: sadan4 <117494111+sadan4 at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/docs/MSVCCompatibility.rst

  Log Message:
  -----------
  Fix typo in MSVCCompatibility.rst (#176057)


  Commit: 6bb2e778c714510bf0398b5ae3f1a0937640150b
      https://github.com/llvm/llvm-project/commit/6bb2e778c714510bf0398b5ae3f1a0937640150b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [X86] combine-pclmul.ll - use non-constant values for demanded elts tests (#176165)


  Commit: bde808bf1ccf4ba95011a08468c23d4cdfc5573c
      https://github.com/llvm/llvm-project/commit/bde808bf1ccf4ba95011a08468c23d4cdfc5573c
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/OpenMP/task_ast_print.cpp
    M clang/test/OpenMP/task_codegen.cpp
    A clang/test/OpenMP/task_transparent_messages.cpp
    A clang/test/OpenMP/task_transparent_serialization.cpp
    M clang/test/OpenMP/taskloop_ast_print.cpp
    M clang/test/OpenMP/taskloop_codegen.cpp
    M clang/tools/libclang/CIndex.cpp
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [CLANG][OpenMP] Add support for OpenMP6.0 transparent clause. (#174646)

Add basic parsing and semantic support for transparent clause for task
andtaskloop directives described in Section 17.9.6 of
https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-6-0.pdf
.


  Commit: 6fd8c36417709118e154d83559c08ce829bfe17d
      https://github.com/llvm/llvm-project/commit/6fd8c36417709118e154d83559c08ce829bfe17d
  Author: David Stenberg <david.stenberg at ericsson.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir

  Log Message:
  -----------
  [DebugInfo] Drop stale entry value-limitation for call site values (#172340)

Entry value operations could previously not be combined with other
operations in debug expressions, meaning that we had to skip emitting
call site values in such cases. This DIExpression limitation was removed
in 57a371d7010802804343d17b85ac5e0d28d0f309, so we should be free to
emit call site values for such cases now, for example:

    extern void call(int, int);
    void entry_value (int param) {
        call(param + 222, param - 444);
    }

This change exposed a call site parameter entry order issue in the
dbgcall-site-expr-entry-value.mir test case. That ordering issue is
tracked in #43998, and I don't think there is anything inherent in this
patch that caused that.


  Commit: 72a20b8e29876106aa918d03ef95f27a6bf0fa0d
      https://github.com/llvm/llvm-project/commit/72a20b8e29876106aa918d03ef95f27a6bf0fa0d
  Author: Gabriel Baraldi <baraldigabriel at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/crash_getpointersdiff-nullopt.ll

  Log Message:
  -----------
  [SLPVectorizer] Check std::optional coming out of getPointersDiff (#175784)

Fixes https://github.com/llvm/llvm-project/issues/175768 
There are other unchecked uses std::optional in this pass but I couldn't
figure out a test that triggers them


  Commit: fc10fbb71e5447d539058dd09286e202fcdf23fa
      https://github.com/llvm/llvm-project/commit/fc10fbb71e5447d539058dd09286e202fcdf23fa
  Author: Akash Dutta <137309513+akadutta at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll

  Log Message:
  -----------
  Reapply "AMDGPU: Do not infer implicit inputs for !nocallback intrinsics" (#176081)

This reverts #174224 and re-applies #131759 .

Note: If #117544 is reverted, this should also be reverted.


  Commit: 513062dd583dc65e29987f3716f5b6fa9c1b4fe9
      https://github.com/llvm/llvm-project/commit/513062dd583dc65e29987f3716f5b6fa9c1b4fe9
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp

  Log Message:
  -----------
  [clang-tidy] Fix performance-move-const-arg for trivially copyable types with private copy constructor (#175449)

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


  Commit: a8660308108fdc9c0c7962a070b2e0d07349c5e8
      https://github.com/llvm/llvm-project/commit/a8660308108fdc9c0c7962a070b2e0d07349c5e8
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [LifetimeSafety] Test lifetime safety on stmt-local analysis test suite (#175906)

Add CFG-based lifetime analysis tests for dangling pointer detection
alongside the existing AST-based analysis.

This change helps validate that the new CFG-based lifetime analysis
correctly detects the same dangling pointer issues as the existing
AST-based analysis. It also documents current limitations of the
CFG-based approach with FIXME comments, providing a roadmap for future
improvements. The test ensures that both analysis methods can work
side-by-side, with the CFG-based analysis eventually intended to replace
the AST-based approach.


  Commit: 282a065c5bb36186c05b903980d1d3a37fce2175
      https://github.com/llvm/llvm-project/commit/282a065c5bb36186c05b903980d1d3a37fce2175
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Handle multiple uses fabs in SimplifyDemandedFPClass (#176035)


  Commit: 444adbe53472582f3f077fa1a16e52df97caddb8
      https://github.com/llvm/llvm-project/commit/444adbe53472582f3f077fa1a16e52df97caddb8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Change FPR256 to use the same allocation order as FPR16/32/64/128. (#176097)

The previous order was the LLVM 11 order for FPR16/32/64/128.


  Commit: 1d616cdca3aba9d22f120888bb6b09b75ca90b92
      https://github.com/llvm/llvm-project/commit/1d616cdca3aba9d22f120888bb6b09b75ca90b92
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/docs/MIRLangRef.rst
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp

  Log Message:
  -----------
  [NFC][MI] Tidy Up RegState enum use (1/2) (#176091)

This Change is to prepare to make RegState into an enum class. It:
- Updates documentation to match the order in the code.
- Brings the `get<>RegState` functions together and makes them
`constexpr`.
- Adopts the `get<>RegState` where RegStates were being chosen with
ternary operators in backend code.
- Introduces `hasRegState` to make querying RegState easier once it is
an enum class.
- Adopts `hasRegState` where equivalent was done with bitwise
arithmetic.
- Introduces `RegState::NoFlags`, which will be used for the lack of
flags.
- Documents that `0x1` is a reserved flag value used to detect if
someone is passing `true` instead of flags (due to implicit bool to
unsigned conversions).
- Updates two calls to `MachineInstrBuilder::addReg` which were passing
`false` to the flags operand, to no longer pass a value.
- Documents that `getRegState` seems to have forgotten a call to
`getEarlyClobberRegState`.


  Commit: e39d44c430228a6d162beae87d72d157107a7e24
      https://github.com/llvm/llvm-project/commit/e39d44c430228a6d162beae87d72d157107a7e24
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [X86] Add tests showing failure to split/concat X86ISD::PCLMULQDQ nodes (#176179)


  Commit: 6309cd8668fc2ae589f156b23f86821f4ce5b7ea
      https://github.com/llvm/llvm-project/commit/6309cd8668fc2ae589f156b23f86821f4ce5b7ea
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/docs/MIRLangRef.rst
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp

  Log Message:
  -----------
  Revert "[NFC][MI] Tidy Up RegState enum use (1/2)" (#176190)

Reverts llvm/llvm-project#176091

Reverting because some compilers were erroring on the call to
`Reg.isReg()` (which is not `constexpr`) in a `constexpr` function.


  Commit: 8e493b86c57bc65595db4f269c2f013785df924f
      https://github.com/llvm/llvm-project/commit/8e493b86c57bc65595db4f269c2f013785df924f
  Author: Mészáros Gergely <gergely.meszaros at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/Compiler.h

  Log Message:
  -----------
  [Support] Suppress old MSVC warning for [[msvc::no_unique_address]] (#176130)

MSVC versions prior to 19.43 (Visual Studio 2022 version 17.13) emit a
warning when using the [[msvc::no_unique_address]] attribute prior to
C++20.

This is now considered a bug and fixed in later releases of MSVC.
Suppress the warning for older MSVC versions by disabling the warning
around the attribute usage. This allows for warning-free builds when
targeting older MSVC versions.

More details and discussion about the warning can be found here:
https://developercommunity.visualstudio.com/t/msvc::no_unique_address-Should-Not-W/10118435


  Commit: f4d4caad946619841ea924526204ee99b99435d2
      https://github.com/llvm/llvm-project/commit/f4d4caad946619841ea924526204ee99b99435d2
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/test/CodeGen/X86/basic-block-address-map-empty-block.ll
    M llvm/test/CodeGen/X86/gc-empty-basic-blocks.ll

  Log Message:
  -----------
  [LLVM][CodeGen] Rename `gc-empty-basic-blocks` to `enable-gc-empty-basic-blocks` (#176018)

Rename the `gc-empty-basic-blocks` command line option to
`enable-gc-empty-basic-blocks` in preparation of adding calls to
initializing the pass in `initializeCodeGen` and also make the flag more
consistent with other existing flags to enable or disable passes.

Keep `gc-empty-basic-blocks` as an alias to allow all users to migrate
to the new option.


  Commit: 1727337d8e0f535526cfd12d1d1666910a79e14b
      https://github.com/llvm/llvm-project/commit/1727337d8e0f535526cfd12d1d1666910a79e14b
  Author: Snehasish Kumar <1888435+snehasish at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/lit.cfg.py

  Log Message:
  -----------
  [profcheck] Reorder the FileCheck substitution. (#176098)

In the profcheck build, FileCheck commands are substituted with cat > /dev/null to disable output verification. In test/Transforms/SamplePrfile/remarks-hotness.ll we have both "FileCheck"
and "not FileCheck" statements. Replacing the positive one first results in "not cat". 
Run the not substitution first to fix this.


  Commit: 3150b73dec83d76321727a3c01a7907485bec6ce
      https://github.com/llvm/llvm-project/commit/3150b73dec83d76321727a3c01a7907485bec6ce
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp

  Log Message:
  -----------
  [MLIR][XeGPU] Clean up helpers in XeGPUPropagateLayout (#175857)

In XeGPUPropagateLayout.cpp, the helper getDefaultSIMTLayoutInfo is
implemented via multiple overloads that differ significantly in
semantics, not just parameter types.
Reusing the same function name for these semantically different
behaviors makes call sites harder to read and reason about and increases
the maintenance burden. This PR improves readability and maintainability
of layout propagation logic.


  Commit: 5acb608b5265b37b2c5dbd5a1699c3d129935d95
      https://github.com/llvm/llvm-project/commit/5acb608b5265b37b2c5dbd5a1699c3d129935d95
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M .ci/utils.sh

  Log Message:
  -----------
  [CI] Make premerge jobs support GHA postcommit (#176180)

This was causing failures in the release branch as the premerge jobs
there are also run postcommit through GHA. We were expecting a PR number
to always be present when it was not.


  Commit: 0cdaa8f6120274fe3915c1aa9a208eaeee3c572f
      https://github.com/llvm/llvm-project/commit/0cdaa8f6120274fe3915c1aa9a208eaeee3c572f
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td

  Log Message:
  -----------
  [NVPTX] Update various intrinsic attributes, nfc cleanup (#175660)

This patch migrates the intrinsic properties back to "PureIntrinsic"
from "NVVMPureIntrinsic" (after PR #166450).

While we are there:
* Refactor a few mbarrier intrinsics definitions (NFC)
* Update mbarrier.pending_count properties. (trivial)
* Formatting changes over a few fence intrinsics (NFC)


  Commit: e3560f29e6d777270284f6bbe35a121742b57a12
      https://github.com/llvm/llvm-project/commit/e3560f29e6d777270284f6bbe35a121742b57a12
  Author: Anshul Nigham <nigham at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [NewPM] Port x86-seses to new pass manager (#176096)


  Commit: fcc0ae1fc4b53ee796466b950ca88fe99168abe9
      https://github.com/llvm/llvm-project/commit/fcc0ae1fc4b53ee796466b950ca88fe99168abe9
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/ThinLTO/X86/memprof-weak-alias.ll

  Log Message:
  -----------
  [MemProf] Handle weak alias and aliasee prevailing in different modules (#176083)

For ThinLTO we only have the cloning information in the FunctionSummary,
so for aliases we create as many clones as there are aliasee clones in
the LTO backend. However, that information is only in the prevailing
symbol's summary, as we don't keep the memprof summary information for
other copies (to reduce memory and compile time).

In the case of weak aliases, it is possible that the prevailing copy
of the alias may be in a different module than the prevailing copy of
the aliasee (e.g. when a module with a weak_odr aliasee definition does
not have a def of the weak_odr alias and is listed first on the link
line). In that case, we were not creating the expected clones of the
alias.

Rather than a more complex solution that adds additional summary
information, detect this case and simply don't add the callsites in the
aliasee function to the callsite context graph. This will result in
conservativeness (because we can't clone through that function), but
this should be a corner case.


  Commit: ec6b7a3e1a6fadb1173ab26a53fb17e835bbe495
      https://github.com/llvm/llvm-project/commit/ec6b7a3e1a6fadb1173ab26a53fb17e835bbe495
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CFIInstrInserter.cpp

  Log Message:
  -----------
  [CFIInstrInserter][NFC] Move `class CSRSavedLocation` definition. (#176053)

This is needed to minimize diff for the future commit where we plan to
use `CSRSavedLocation` in `stuct MBBCFAInfo`.


  Commit: 1d4f9ac37c043198d823e85e3cd777dc970d8b75
      https://github.com/llvm/llvm-project/commit/1d4f9ac37c043198d823e85e3cd777dc970d8b75
  Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/include/flang/Lower/MultiImageFortran.h
    M flang/include/flang/Optimizer/Dialect/MIF/MIFOps.td
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/MultiImageFortran.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    A flang/test/Lower/MIF/change_team2.f90

  Log Message:
  -----------
  [flang] Fix crash with coarray teams #171048 (#172259)

This PR updates the `CHANGE TEAM` construct to fix the bug mentioned in
the issue #171048.
When a construct such as `IfConstruct` was present in the `CHANGE TEAM`
region, several BB were created but outside the region.


  Commit: d5a567870a1bf288fb11de64e6add872767d3c90
      https://github.com/llvm/llvm-project/commit/d5a567870a1bf288fb11de64e6add872767d3c90
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pclmul.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce instruction size if upper half of X86ISD::PCLMULQDQ isn't demanded (#176199)

If the upper subvector half of a 256/512-bit X86ISD::PCLMULQDQ node
isn't demanded, then split the operands and perform using a smaller
instruction


  Commit: 6bb20438598bfced09b1afbb76e551fbb955060d
      https://github.com/llvm/llvm-project/commit/6bb20438598bfced09b1afbb76e551fbb955060d
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaInputShape.cpp
    A mlir/test/Dialect/Tosa/tosa-input-shape.mlir

  Log Message:
  -----------
  [mlir][tosa] Add pass to assign static input shape to TOSA functions (#171156)

This commit introduces the `--tosa-experimental-input-shape` pass, which
allows a user to convert dynamically shaped input arguments of TOSA
functions to a user defined static shape. Here is a simple example:
```bash
func.func @test(%arg0: tensor<2x?xi32>, %arg1: tensor<?x256xf32>, %arg2: tensor<?x9xf32>) -> (tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>) {
    %0 = tosa.add %arg0, %arg0 : (tensor<2x?xi32>, tensor<2x?xi32>) -> tensor<2x?xi32>
    %1 = tosa.reciprocal %arg1 : (tensor<?x256xf32>) -> tensor<?x256xf32>
    %2 = tosa.sub %arg2, %arg2 : (tensor<?x9xf32>, tensor<?x9xf32>) -> tensor<?x9xf32>
    return %0, %1, %2 : tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>
}

$ mlir-opt --tosa-experimental-input-shape="args=arg0:2x16,arg2:64x9" test.mlir
func.func @test(%arg0: tensor<2x16xi32>, %arg1: tensor<?x256xf32>, %arg2: tensor<64x9xf32>) -> (tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>) {
    %0 = tosa.add %arg0, %arg0 : (tensor<2x16xi32>, tensor<2x16xi32>) -> tensor<2x?xi32>
    %1 = tosa.reciprocal %arg1 : (tensor<?x256xf32>) -> tensor<?x256xf32>
    %2 = tosa.sub %arg2, %arg2 : (tensor<64x9xf32>, tensor<64x9xf32>) -> tensor<?x9xf32>
    return %0, %1, %2 : tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>
}
```

When used in conjunction with the `--tosa-infer-shapes` pass, it can be
used to resolve simple TOSA functions (those that don't include TOSA
shape operations) to propagate static shape information. Continuing from
the example above:
```bash
$ mlir-opt --tosa-infer-shapes test2.mlir
func.func @test(%arg0: tensor<2x16xi32>, %arg1: tensor<?x256xf32>, %arg2: tensor<64x9xf32>) -> (tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>) {
    %0 = tosa.add %arg0, %arg0 : (tensor<2x16xi32>, tensor<2x16xi32>) -> tensor<2x16xi32>
    %cast = tensor.cast %0 : tensor<2x16xi32> to tensor<2x?xi32>
    %1 = tosa.reciprocal %arg1 : (tensor<?x256xf32>) -> tensor<?x256xf32>
    %2 = tosa.sub %arg2, %arg2 : (tensor<64x9xf32>, tensor<64x9xf32>) -> tensor<64x9xf32>
    %cast_0 = tensor.cast %2 : tensor<64x9xf32> to tensor<?x9xf32>
    return %cast, %1, %cast_0 : tensor<2x?xi32>, tensor<?x256xf32>, tensor<?x9xf32>
}
```
Note: tosa-infer-shapes currently doesn't have an option to update the
function signature.

Co-authored-by: Kaushik Varadharajan <kaushik.varadharajan at arm.com>


  Commit: 08de4fd0d4c3d1e40a151a5c8bed6fd8aee4752b
      https://github.com/llvm/llvm-project/commit/08de4fd0d4c3d1e40a151a5c8bed6fd8aee4752b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-15 (Thu, 15 Jan 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/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [SelectionDAG] Move HwMode expansion from tablegen to SelectionISel. (#174471)

The way HwMode is currently implemented, tablegen duplicates each
pattern that is dependent on hardware mode. The HwMode predicate is
added as a pattern predicate on the duplicated pattern.
    
RISC-V uses HwMode on the GPR register class which means almost every
isel pattern is affected by HwMode. This results in the isel table
being nearly twice the size it would be if we only had a single GPR
size.

This patch proposes to do the expansion at instruction selection time
instead. To accomplish this new opcodes like OPC_CheckTypeByHwMode
are added to the isel table. The unique combinations of types and HwMode
are converted to an index that is the payload for the new opcodes.
TableGen emits a new virtual function getValueTypeByHwMode that uses
this index and the current HwMode to look up the type.

This reduces the size of the isel table on RISC-V from ~2.38 million
bytes to ~1.38 million bytes.

I did not add an OPC_SwitchTypeByHwMode opcode yet. If the VT requires a
hardware mode, we emit an OPC_Scope+OPC_CheckTypeByHwMode instead. I
expect adding an OPC_SwitchTypeByHwMode could further reduce the table
size. I will investigate this as a follow up.
    
Many of the matcher classes in tablegen now use ValueTypeByHwMode
insteadof MVT. This may have an impact on the memory usage and runtime of
tablegen. We can mitigate some of this by splitting the matchers into MVT and
ValueTypeByHwMode versions. We can also explore alternate data
structures for ValueTypeByHwMode instead of a std::map. Maybe a sorted vector.

A similar change can be made to GlobalISel as a follow up.


  Commit: eb82ddc53a21ee7a8acf4de9efe1e385c88fe497
      https://github.com/llvm/llvm-project/commit/eb82ddc53a21ee7a8acf4de9efe1e385c88fe497
  Author: Max <628527+mxms0 at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage.cpp

  Log Message:
  -----------
  [clang][-Wunsafe-buffer-usage] Ignore consteval functions (#171503)

We dont need to visit or warn on consteval functions as they can't have
UB.

---------

Co-authored-by: mxms <mxms at google.com>


  Commit: 1eb52793e6f7ac8f263834ebe9c44e91ca4d9f58
      https://github.com/llvm/llvm-project/commit/1eb52793e6f7ac8f263834ebe9c44e91ca4d9f58
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pclmul.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - add X86ISD::PCLMULQDQ handling for VPCLMULQDQ targets (#176203)


  Commit: 5dccab02729222a32bcabaa140d3f1c3efc11ce7
      https://github.com/llvm/llvm-project/commit/5dccab02729222a32bcabaa140d3f1c3efc11ce7
  Author: Szymon Sobieszek <71835447+Kavu849 at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/CodeMoverUtils.cpp

  Log Message:
  -----------
  [LoopFusion] Removing dead code leftover after PR #171889 (NFC) (#176020)

Removed unused functions in order to fix 'unused function' warnings, as
mentioned in PR 171889. This involved the two original functions
```ControlConditions::isEquivalent(const ControlConditions &Other)
const``` and ```ControlConditions::collectControlConditions(const
llvm::BasicBlock&, const llvm::BasicBlock&, const llvm::DominatorTree&,
const llvm::PostDominatorTree&, unsigned int)``` plus all the functions
that became unused as the result of deleting the two original ones.

Co-authored-by: Szymon Sobieszek <szymon.sobieszek1 at huawei.com>


  Commit: b29ee6ed4bd8441dd0c5aefac01a1d2fdbe0dd2e
      https://github.com/llvm/llvm-project/commit/b29ee6ed4bd8441dd0c5aefac01a1d2fdbe0dd2e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll

  Log Message:
  -----------
  InstCombine: Fix SimplifyDemandedFPClass for fadd with known-inf source
 (#176204)

Ensure the result cannot be nan.

Split out from https://github.com/llvm/llvm-project/pull/175852


  Commit: a72958a95dcb7d815c01e20cc819532151d1856d
      https://github.com/llvm/llvm-project/commit/a72958a95dcb7d815c01e20cc819532151d1856d
  Author: Benjamin Lerman <qsr at chromium.org>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
    M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AArch64/stack-probing-64k.ll
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    M llvm/test/CodeGen/AArch64/stack-probing-last-in-block.mir
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/AArch64/stack-probing-shrink-wrap.mir
    M llvm/test/CodeGen/AArch64/stack-probing-sve.ll
    M llvm/test/CodeGen/AArch64/stack-probing.ll

  Log Message:
  -----------
  [AArch64] Use a load instead of a store for inline stack probes (#170855)

Frequently, when big buffers are put on the stack we end up
with multiple virtual pages Copy-On-Write mapped to single physical zero page.
Stack probes would unnecessarily trigger a Copy-On-Write on such pages. Avoid this
by using loads into the XZR.


  Commit: 7364ff56bcfbdfd414d8a3bfb9257f7a3bbdb8a1
      https://github.com/llvm/llvm-project/commit/7364ff56bcfbdfd414d8a3bfb9257f7a3bbdb8a1
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    A flang/test/Lower/OpenACC/acc-declare-common-present-in-function.f90

  Log Message:
  -----------
  [acc] `acc declare` + `present` clause for COMMON blocks (#175588)

Fix: `!$acc declare present(/COMMON/)` no longer adds
`acc.declare(dataClause=acc_present)` attribute to the fir.global
common.

Lowering change: COMMON+present is lowered through the structured
declare path (fir.address_of + acc.present operand) to preserve scope.


  Commit: c4b49c76d3e1be798131090c4c87a4d51e8578ca
      https://github.com/llvm/llvm-project/commit/c4b49c76d3e1be798131090c4c87a4d51e8578ca
  Author: Haocong Lu <haoconglu at qq.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/keylocker.c

  Log Message:
  -----------
  [CIR][X86] Add support for `aes` and `aeswide` builtins (#175892)

- Support CIR codegen for follow builtin: `aesenc`, `aesdec`,
`aesencwide` and `aesdecwide`.
- Part of https://github.com/llvm/llvm-project/issues/167752


  Commit: 09e66be933f819b8287e9cee32887dfaa1d8d084
      https://github.com/llvm/llvm-project/commit/09e66be933f819b8287e9cee32887dfaa1d8d084
  Author: Samira Bakon <bazuzi at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/FormulaSerialization.cpp
    M clang/unittests/Analysis/FlowSensitive/FormulaTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Manage stacks of formulas directly instead of recur… (#175980)

…sing during (de)serialization.

Stack overflows have been seen in practice for very large formulas.


  Commit: 546ba870f789669f14ccbc63a2a2b0e3593c911c
      https://github.com/llvm/llvm-project/commit/546ba870f789669f14ccbc63a2a2b0e3593c911c
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [RISCV][llvm] Refactor unpackFromMemLoc to use convertLocVTToValVT. NFC (#175969)

Simplify unpackFromMemLoc to use convertLocVTToValVT for handling
LocInfo conversions, making it consistent with unpackFromRegLoc.


  Commit: ad94fddb3f01274bbebcbfd6f41cc5ae5ded1d76
      https://github.com/llvm/llvm-project/commit/ad94fddb3f01274bbebcbfd6f41cc5ae5ded1d76
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Add helper to find compute-reduction-result from phi (NFCI).

After d5c11b9a2 (https://github.com/llvm/llvm-project/pull/174026),
finding the ComputeReductionResult VPInstruction for a reduction
requires an extra step. Factor out code to helper to be re-used in
follow-up patches.


  Commit: fa3ef64011def5af8a0f319077016ed4b1f796a3
      https://github.com/llvm/llvm-project/commit/fa3ef64011def5af8a0f319077016ed4b1f796a3
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll

  Log Message:
  -----------
  [AMDGPU] Create V_FMAAK_F16/V_FMAMK_F16 in true16 with imm folding (#173317)

This does not cover real true16 with tests, the next patch will.


  Commit: 5546ce99d859e3243aebfb8c5cb80bdffa6fe1dd
      https://github.com/llvm/llvm-project/commit/5546ce99d859e3243aebfb8c5cb80bdffa6fe1dd
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll

  Log Message:
  -----------
  [AMDGPU] Allow 16-bit imm folding in real true16 (#173318)


  Commit: e81ab30bee60c5f9488afb504e25aa9616c24b48
      https://github.com/llvm/llvm-project/commit/e81ab30bee60c5f9488afb504e25aa9616c24b48
  Author: Amara Emerson <amara at apple.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-unmerge.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Fix selection of scalar-to-scalar G_UNMERGE_VALUES (#176223)

We can handle these FPR unmerges by treating them as pseudo-vectors of
the narrow element type.

Fixes #173722


  Commit: 404920838836a022b0ae4b9a462befba89ee0cdc
      https://github.com/llvm/llvm-project/commit/404920838836a022b0ae4b9a462befba89ee0cdc
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/blockaddress-stale-addresstaken.ll
    A llvm/test/CodeGen/X86/blockaddress-stale-addresstaken.ll
    M llvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll

  Log Message:
  -----------
  [CodeGen] Check BlockAddress users before marking block as taken (#174480)


  Commit: 46f9b76d56b1130be859e3e565eb8a22d1c254f1
      https://github.com/llvm/llvm-project/commit/46f9b76d56b1130be859e3e565eb8a22d1c254f1
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    M lldb/source/Symbol/SymbolFileOnDemand.cpp

  Log Message:
  -----------
  [lldb][NFC] Make parameter const in SymbolFile::GetParameterStackSize (#176220)


  Commit: 97576a86eb25696a2b57cd42370991b172c08405
      https://github.com/llvm/llvm-project/commit/97576a86eb25696a2b57cd42370991b172c08405
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp

  Log Message:
  -----------
  Revert "[llvm-readobj] Dump callgraph section info for ELF" (#176221)

Reverts llvm/llvm-project#157499

Following up on discourse post. Reverting this patch and will attempt a
reland addressing post merge comments.


  Commit: c49c7e72b3708f219d3967831e67c82ed9ac55e3
      https://github.com/llvm/llvm-project/commit/c49c7e72b3708f219d3967831e67c82ed9ac55e3
  Author: Usman Nadeem <mnadeem at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    A llvm/test/CodeGen/ARM/tldrlit_ga_size.mir

  Log Message:
  -----------
  [ARM] Add size to `tLDRLIT_ga_pcrel|abs` Pseudo Instructions (#175663)

Compiling OpenSSL for Thumb was giving a crash in `ARMConstantIslands`
with error message: "underestimated function size". Adding a size for
`tLDRLIT_ga_pcrel` pseudo instruction fixes the issue. Also added a
size for `tLDRLIT_ga_abs` as per review comments.


  Commit: 41dd36b8f8c43682d48ffd387a53d318e899e236
      https://github.com/llvm/llvm-project/commit/41dd36b8f8c43682d48ffd387a53d318e899e236
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/test/CIR/CodeGen/inline-asm.c

  Log Message:
  -----------
  [CIR] Implement codegen for inline assembly with output operands (#176006)

Part of: #153267

This is a continuation of: #154014

This patch handles output operands for inline assembly, taking the
original patch, but adding some additional tests, plus responding to all
of the original comments, plus doing some of my personal cleanup
(including extracting addVariableConstraints in a separate patch).

---------

Co-authored-by: Iris Shi <0.0 at owo.li>


  Commit: c91ab61de79368ec330fc15259f60e2365b539bd
      https://github.com/llvm/llvm-project/commit/c91ab61de79368ec330fc15259f60e2365b539bd
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/docs/OpenACC.md
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Semantics/OpenACC/acc-host-data.f90

  Log Message:
  -----------
  [flang][acc] Disallow duplicate variables in use_device clause (#176217)

Add a semantic check to detect when the same variable appears multiple
times in `use_device` clauses on the same `host_data` directive. While
the OpenACC specification does not explicitly prohibit this, allowing
duplicates is likely a user error and provides no additional semantics.

A similar restriction was already in place for `private`,
`firstprivate`, and `reduction` clauses on compute constructs. This
change extends that behavior to `use_device` on `host_data`.

Error message:
`'<var>' appears in more than one USE_DEVICE clause on the same
HOST_DATA directive`


  Commit: 6fac9b143252bec62c1a5ee9fc1b0f214e7f2f8e
      https://github.com/llvm/llvm-project/commit/6fac9b143252bec62c1a5ee9fc1b0f214e7f2f8e
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Basic/Attr.td
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/AttrImpl.cpp
    M clang/test/C/C23/n3037.c
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [AST] Support structural equivalence checking of attributes on Decls (#168769)

The structural equivalence checker currently treats any explicit
attributes on a declaration as a reason to consider the declarations
non-equivalent in C23 mode, even when both declarations carry the same
attributes. This is unnecessarily strict and causes two otherwise
equivalent declarations to be rejected just because they carry
explicitly annotated attributes.

This patch enables TableGen to automatically generate attribute
equivalence checking functions. By default, two attributes are
considered equivalent if their normalized spellings match and all of
their arguments are equivalent. Attributes that require special handling
can provide a custom equivalence function (e.g., areAlignedAttrsEqual
for attribute Aligned).

The following attribute argument kinds currently always evaluate as
nonequivalent, since their equivalence checking has not yet been
implemented:
- DeclArgument
- OMPTraitInfoArgument
- VariadicOMPInteropInfoArgument

Additionally, attributes must currently appear in the same order on both
declarations for the equivalence check to succeed. Inherited attributes
are ignored when determining structural equivalence because they should
not affect whether two definitions are structurally compatible.

Finally, this patch moves the call to
CheckStructurallyEquivalentAttributes so that attribute comparison is
performed between two definitions of record decls rather than between a
declaration and a definition.

rdar://163304242


  Commit: 57e0b699a3745280cc3983f59867d63042389935
      https://github.com/llvm/llvm-project/commit/57e0b699a3745280cc3983f59867d63042389935
  Author: Paulo Matos <pmatos at igalia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaType.cpp
    A clang/test/Sema/wasm-funcref-crash.c
    A clang/test/SemaCXX/wasm-funcref-crash.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash when __funcref is applied to non-function-pointer types (#176102)

Applying the funcref type to a non-function pointer was crashing. Added
validation to check that the type is a function pointer before
attempting to process it. If validation fails, emit the existing
err_attribute_webassembly_funcref diagnostic and return early.

Fixes #118233


  Commit: 7b90f426a641b2ef4f66c84449ee814c35f69554
      https://github.com/llvm/llvm-project/commit/7b90f426a641b2ef4f66c84449ee814c35f69554
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-01-15 (Thu, 15 Jan 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 strstr instead of lib call  (#176002)

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 __strstr routine is a millicode implementation;
we use millicode for the strstr function instead of a library call to
improve performance.

I add a helper function `getRuntimeCallSDValueHelper` in the patch. I
will refactor the function `SelectionDAG::getStrlen`
`SelectionDAG::getStrcpy` etc later in another patch.


  Commit: 4fe32496cd569a668640edd6b4fedffeb1e0cb77
      https://github.com/llvm/llvm-project/commit/4fe32496cd569a668640edd6b4fedffeb1e0cb77
  Author: Rahman Lavaee <rahmanl at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/basic-block-sections-code-prefetch-call-terminates-block.ll

  Log Message:
  -----------
  Use opaque pointers in test: basic-block-sections-code-prefetch-call-terminates-block.ll


  Commit: 4fa99b6465ca305b202fdd4b4ee5624b415ea0e4
      https://github.com/llvm/llvm-project/commit/4fa99b6465ca305b202fdd4b4ee5624b415ea0e4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/Attributor/nofpclass-fma.ll

  Log Message:
  -----------
  ValueTracking: Add baseline tests for improved fma handling (#175613)

Improved signbit and not-nan tracking.


  Commit: f94afdd0b71fddacac0e644945207840fa6165ce
      https://github.com/llvm/llvm-project/commit/f94afdd0b71fddacac0e644945207840fa6165ce
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/ClangScanDeps/modules-context-hash-module-map-path.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/Index/pch-from-libclang.c
    M clang/test/Modules/context-hash.c

  Log Message:
  -----------
  [clang][modules] Unify "context hash" and "specific module cache path" (#176215)

This PR unifies the terminology for:
* "context hash" - previously ambiguously referred to as "module hash"
or as overly specific "module context hash"
* "specific module cache path" - previously referred to as just "module
cache path" - hard to distinguish from the command-line-provided module
cache path without the context hash

NFCI


  Commit: 9b6bf8f91c4741fbc069f5811405810cb107afb0
      https://github.com/llvm/llvm-project/commit/9b6bf8f91c4741fbc069f5811405810cb107afb0
  Author: Ravil Dorozhinskii <ravil.aviva.com at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 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:
  -----------
  [ROCDL] added: rsq to rocdl.math; fixes to global/flat prefetch (#176167)

PR adds rsq to rocdl.math as well as a fix to global/flat prefetch

- Note, prefetch ops must have MemWrite trait. Otherwise, they
are removed by any DCE pass in a pipeline.


  Commit: aaea20692f8b8e68b05ed141935dca3221246def
      https://github.com/llvm/llvm-project/commit/aaea20692f8b8e68b05ed141935dca3221246def
  Author: Ravil Dorozhinskii <ravil.aviva.com at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 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:
  -----------
  [ROCDL] Added `wave.id` to ROCDL (#176028)


  Commit: d03ce72f40ee8dc03a2dc3dd69a3e2130e58395d
      https://github.com/llvm/llvm-project/commit/d03ce72f40ee8dc03a2dc3dd69a3e2130e58395d
  Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/test/Assembler/auto_upgrade_intrinsics.ll

  Log Message:
  -----------
  [IR] Propagate fast-math flags through autoupgraded target intrinsics (#174432)

Fast-math flags were not copied through upgrades; they are now.


  Commit: 15b9109bc7bb6868eb90bda064e1905b9b6698bf
      https://github.com/llvm/llvm-project/commit/15b9109bc7bb6868eb90bda064e1905b9b6698bf
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
    M llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll

  Log Message:
  -----------
  Make MachineBlockFrequencyInfo a required pass for the MachineScheduler pass. (#176172)

This is needed to support functionality in the AMDGPU scheduler. Various
passes have been modified to preserve MBFI to ensure that this change
does not introduce new invocations of MBFI. Some targets have passes
reordered, but there are no new runs of MBFI.


  Commit: edd857aad8487fe7cc591dc7d4566717af835246
      https://github.com/llvm/llvm-project/commit/edd857aad8487fe7cc591dc7d4566717af835246
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M offload/libomptarget/OpenMP/InteropAPI.cpp
    M offload/libomptarget/PluginManager.cpp
    M offload/plugins-nextgen/common/src/PluginInterface.cpp

  Log Message:
  -----------
  [Offload] Remove unnecessary `maybe_unused` attribute (#175855)

The attribute is not necessary in the new debug messaging.


  Commit: 64be34c562a23761dcb48a0a6a0b3ef0576c14c4
      https://github.com/llvm/llvm-project/commit/64be34c562a23761dcb48a0a6a0b3ef0576c14c4
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/include/llvm/Support/thread.h
    M llvm/lib/Support/Parallel.cpp
    M llvm/lib/Support/Unix/Threading.inc

  Log Message:
  -----------
  Enable using threads on z/OS (#171847)

z/OS 3.1 enables TLS support (limited to compile time constant
initializers). To enable building with thread support, we need to update
the code to handle the difference in definition of pthread_t. It is a
struct on z/OS, not an integer. The existing code assumes that pthread_t
is an integer. This usually happens when checking to see if pthread_t is
null or not.

In Parallel.cpp, there was a variable `Backoff` defined as TLS. The
initializer for this requires C++ initialization which isn't supported
on z/OS. The variable isn't actually used (see declaration of local var
with same name inside the loop) so deleting it solved the build failure
this was causing.


  Commit: ab7217a089fb031816991d91a7dc7ae8c609ce4f
      https://github.com/llvm/llvm-project/commit/ab7217a089fb031816991d91a7dc7ae8c609ce4f
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/test/Transforms/OpenACC/acc-implicit-data.fir
    M mlir/include/mlir/Dialect/OpenACC/Analysis/OpenACCSupport.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
    M mlir/lib/Dialect/OpenACC/Analysis/OpenACCSupport.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
    M mlir/test/Dialect/OpenACC/acc-implicit-data.mlir
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    M mlir/unittests/Dialect/OpenACC/OpenACCUtilsTest.cpp

  Log Message:
  -----------
  [acc][flang] Add isDeviceData APIs for device data detection (#176219)

Add comprehensive APIs to detect device-resident data across OpenACC
type and operation interfaces. This enables passes to identify data that
is already on the device (e.g., CUF device/managed/constant memory, GPU
address spaces) and handle it appropriately.

New interface methods:
- PointerLikeType::isDeviceData(Value): Returns true if the pointer
points to device data.
- MappableType::isDeviceData(Value): Returns true if the variable
represents device data.
- GlobalVariableOpInterface::isDeviceData(): Returns true if the global
variable is device data.

New utilities in OpenACCUtils:
- acc::isDeviceValue(Value): Checks if a value represents device data by
querying type interfaces, PartialEntityAccessOpInterface for base
entities, and AddressOfGlobalOpInterface for global symbols.
- acc::isValidValueUse(Value, Region): Checks if a value is legal in an
OpenACC region by verifying it comes from a data operation, is only used
by private clauses, or is device data.

Updated isValidSymbolUse to check
GlobalVariableOpInterface::isDeviceData()
for symbols referencing device-resident globals.

FIR implementations check for CUF data attributes (device, managed,
constant, shared, unified) on operations, block arguments, and globals.
The implementation traces through fir.rebox, fir.embox, fir.declare,
hlfir.declare, and fir.address_of to find the underlying data source.

Memref implementations check for gpu::AddressSpaceAttr on the memref
type.

Updated ACCImplicitData to use acc::isDeviceValue for generating
acc.deviceptr clauses for device-resident data instead of
copyin/copyout.

Updated OpenACCSupport::isValidValueUse to fallback to the new
acc::isValidValueUse utility.


  Commit: ac1334a23e613a43c19720e139bd865415e78653
      https://github.com/llvm/llvm-project/commit/ac1334a23e613a43c19720e139bd865415e78653
  Author: Sumanth Gundapaneni <sgundapa at qti.qualcomm.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    A llvm/test/CodeGen/Hexagon/machine-combiner-reassoc.mir

  Log Message:
  -----------
  [Hexagon] Enable Machine Combiner pass. (#169434)


  Commit: 2a9b30d22879889abd90a1ae589e4d734779c2a9
      https://github.com/llvm/llvm-project/commit/2a9b30d22879889abd90a1ae589e4d734779c2a9
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M offload/include/Shared/Debug.h

  Log Message:
  -----------
  [OpenMP][Offload] Add a buffer layer to debug messaging (#176153)

To reduce interference between threads, instead of writing the
components of a debug message directly to the underlying stream, write
them to a buffer and flush the buffer to the stream when its completed.


  Commit: c70ce1128d00fa65ab41fa12eb28199d0730115a
      https://github.com/llvm/llvm-project/commit/c70ce1128d00fa65ab41fa12eb28199d0730115a
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M offload/include/Shared/Debug.h

  Log Message:
  -----------
  [OpenMP][Offload] Translate Info types to Debug types when debug enabled (#175599)

Eventually we might want to rework the INFO macro to work like the new
ODBG macro but in the meantime at least translate the Info type to the
correct Debug type instead of just using DP directly (which uses the
default type).


  Commit: 64546dfd3e4a418e1f279b37f8377025c91633ae
      https://github.com/llvm/llvm-project/commit/64546dfd3e4a418e1f279b37f8377025c91633ae
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/AST/AttrImpl.cpp

  Log Message:
  -----------
  Stop calling a constexpr function to evaluate the boolean condition of std::enable_if (#176241)

This is an attempt to fix a windows build failure after
6fac9b143252bec62c1a5ee9fc1b0f214e7f2f8e.


  Commit: 54da821ba97aa1587a2181f05ef2d8531796755f
      https://github.com/llvm/llvm-project/commit/54da821ba97aa1587a2181f05ef2d8531796755f
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt

  Log Message:
  -----------
  [flang][acc] Fix missing dependency on CUFAttrs library (#176251)


  Commit: b501f666c5dce20c698d7fddb8060dfbdc5c9485
      https://github.com/llvm/llvm-project/commit/b501f666c5dce20c698d7fddb8060dfbdc5c9485
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll

  Log Message:
  -----------
  [AMDGPU] Fix expensive checks in fmaak/fmamk f16 folding (#176238)

Register classes of sources also has to be restrained to lo128.
There are few regression with register coalescing in true16 mode
though, but otherwise it fails verification.


  Commit: 1a1791b65d716d5a7003d6d82a9139dee0998d73
      https://github.com/llvm/llvm-project/commit/1a1791b65d716d5a7003d6d82a9139dee0998d73
  Author: Argyrios Kyrtzidis <kyrtzidis at apple.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CAS/OnDiskGraphDB.h
    M llvm/lib/CAS/ActionCaches.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/unittests/CAS/OnDiskGraphDBTest.cpp

  Log Message:
  -----------
  [llvm/CAS] Introduce `validateObjectID()` and use it in `UnifiedOnDiskActionCache::validate()` (#176069)

This allows object IDs to be valid even if they do not point to actual
data yet, like in lazy materialization schemes.


  Commit: 071bd59bd480dc3858ce95c9bc7d0ead5524cca7
      https://github.com/llvm/llvm-project/commit/071bd59bd480dc3858ce95c9bc7d0ead5524cca7
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll

  Log Message:
  -----------
  [profcheck][instcombine] Propagate branch weigths in folded GEP (#176247)

Patch following #170439. The branch weigths of the new select are the same as of the original's.

Issue #147390


  Commit: c061ddbd15a36682f2c58534122249550e4fc957
      https://github.com/llvm/llvm-project/commit/c061ddbd15a36682f2c58534122249550e4fc957
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlVariant.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/main.cpp

  Log Message:
  -----------
  Reland [LLDB] Fix MS STL variant with non-trivial types and PDB (#176189)

Relands #171489 which was reverted due to a test failure on GreenDragon.

As suggested in
https://github.com/llvm/llvm-project/pull/171489#issuecomment-3754098800,
I'm checking for `std::string` on Darwin and `std::basic_string<char>`
otherwise, however I can't test that locally.


  Commit: f14577fa6f4d76764db2a65144de1ed573ed1186
      https://github.com/llvm/llvm-project/commit/f14577fa6f4d76764db2a65144de1ed573ed1186
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/select-folds.ll

  Log Message:
  -----------
  [VPlan] Fold boolean select to xor if possible.

Fold select c, false, true -> not c. This allows for more accurate cost
estimation and fixes the underlying issue for the cost divergence
between legacy and VPlan-based cost model that caused the revert of
01d34eb38fa058 in ed004cf42bf57c.

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


  Commit: c5a0b64f0d875c5da58faed289120b8c54332445
      https://github.com/llvm/llvm-project/commit/c5a0b64f0d875c5da58faed289120b8c54332445
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll

  Log Message:
  -----------
  InstCombine: Add baseline fdiv SimplifyDemandedFPClass tests (#175945)


  Commit: 3860147a7f36ea89bc5a19ce229bfd686432c01b
      https://github.com/llvm/llvm-project/commit/3860147a7f36ea89bc5a19ce229bfd686432c01b
  Author: Akshay Deodhar <adeodhar at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/VE/VEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h

  Log Message:
  -----------
  [NFC][TargetLowering] Make shouldExpandAtomicRMWInIR and shouldExpandAtomicCmpXchgInIR take a const Instruction pointer (#176073)

Splits out change from https://github.com/llvm/llvm-project/pull/176015

Changes shouldExpandAtomicRMWInIR to take a constant argument: This is
to allow some other TargetLowering constant-argument functions to call
it. This change touches several backends. An alternative solution
exists, but to me, this seems the "right" way.


  Commit: 6ef80e147c63ad84cd616cb4d664b1caf0dbc4bf
      https://github.com/llvm/llvm-project/commit/6ef80e147c63ad84cd616cb4d664b1caf0dbc4bf
  Author: Nick Kreeger <nick.kreeger at microsoft.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M mlir/lib/AsmParser/Parser.cpp
    A mlir/test/IR/parser-string-literal-comment.mlir
    A mlir/test/IR/parser-string-literal-url.mlir

  Log Message:
  -----------
  [mlir][AsmParser] Fix comment detection in string literals (#174125)

The error positioning logic in emitWrongTokenError() would incorrectly
identify '//' inside string literals as comment starts when backing up
to position diagnostics. For example, a URL like "http://example.com"
would cause the error to point at the '://' instead of the end of the
line.

Add findCommentStart() helper that properly skips '//' occurrences
inside string literals by tracking quote state and handling escape
sequences.


  Commit: 88d3078e81ba07cce53b16c83e5bdf143489ded5
      https://github.com/llvm/llvm-project/commit/88d3078e81ba07cce53b16c83e5bdf143489ded5
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/tripcount.ll

  Log Message:
  -----------
  [NFC] use UTC for LoopVectorize/tripcount.ll (#175095)


  Commit: a99a0023301ebc4226d709c164df04d073dec102
      https://github.com/llvm/llvm-project/commit/a99a0023301ebc4226d709c164df04d073dec102
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M clang/lib/Headers/amdgpuintrin.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/nvptxintrin.h
    M clang/lib/Headers/spirvintrin.h
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp

  Log Message:
  -----------
  [Clang][NFC] Replace device specific kernel attribute with generic one (#176250)

Summary:
The old `amdgpu_kernel` and `nvptx_kernel` attributes are better
replaced by the new, generic `device_kernel`.


  Commit: 011a0c637fc07f9703e57e6e8e105060110dc53e
      https://github.com/llvm/llvm-project/commit/011a0c637fc07f9703e57e6e8e105060110dc53e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  Passes: Fix dead declaration and LLVM_ABI checker warning (#176265)


  Commit: 1d03535c8f0e22c81970c6e671d9dc12f5d790cf
      https://github.com/llvm/llvm-project/commit/1d03535c8f0e22c81970c6e671d9dc12f5d790cf
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    A llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [X86][NewPM] Fill out X86CodeGenPassBuilder (#176061)

This patch fills out X86CodeGenPassBuilder a decent amount of the way.
Comments are added where we either need more CodeGenPassBuilder hooks or
have not yet ported passes. This is intended to be a simple mapping of
the existing X86PassConfig and does not intend to make any improvements
or fix any existing issues (like using non fast-regalloc at O0 with AMX
instructions).


  Commit: ef8284ed6866083730184ab1521745b9a705d215
      https://github.com/llvm/llvm-project/commit/ef8284ed6866083730184ab1521745b9a705d215
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Handle a split 2*XLen argument before pushing to PendingLocs. (#176183)

Previously we pushed the second part to PendingLocs first, but never
used it since the all values were still in variables.


  Commit: 49e7c0d06d8f09c804fcda9ae5d771c1e27df29d
      https://github.com/llvm/llvm-project/commit/49e7c0d06d8f09c804fcda9ae5d771c1e27df29d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/utils/git-llvm-push

  Log Message:
  -----------
  [LLVM][Utils] Do not error with dirty dir for untracked files (#176246)

If someone has untracked files in their tree and they attempt to use the
script, it will error out after processing the first commit complaining
about a dirty working tree. This patch fixes that by making
_check_work_tree look at the git status --porcelain output to ensure it
finds entries are not prefixed with a ?, which corresponds to an
untracked file.

Fixes #174592


  Commit: 9a324e45895ca125a801b7e4832ca35088f4717d
      https://github.com/llvm/llvm-project/commit/9a324e45895ca125a801b7e4832ca35088f4717d
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [acc] Fix OpenACCUtilsTest to avoid leak in isDeviceValueNonMappableType (#176269)

The problem is that the operation is created without an owner, then
there is no free. This is being caught in llvm buildbots that are testing
sanitizers.


  Commit: 1621e007dba5f295570b3a6dc34505be34abdb64
      https://github.com/llvm/llvm-project/commit/1621e007dba5f295570b3a6dc34505be34abdb64
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Remove unnecessary EVT->MVT->EVT conversions. NFC (#176214)

We don't need to use getSimpleValueType if we're just passing to
getNode.


  Commit: 227517d11f4f2c9a8ebdfd06d8acd7ca838605fc
      https://github.com/llvm/llvm-project/commit/227517d11f4f2c9a8ebdfd06d8acd7ca838605fc
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp

  Log Message:
  -----------
  [LLDB][NativePDB] Add PdbAstBuilder null checks (#176065)

`TypeSystem::GetNativePDBParser` returns `nullptr` by default, so using
the result without checking can cause a crash.


  Commit: fd5397db23d7d3c523e8106857c63c01509705e0
      https://github.com/llvm/llvm-project/commit/fd5397db23d7d3c523e8106857c63c01509705e0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [gn] port dc5e1d05bfd10fa2


  Commit: a3aa0383317a295a4a34cc6c5fb7e805b81b6706
      https://github.com/llvm/llvm-project/commit/a3aa0383317a295a4a34cc6c5fb7e805b81b6706
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py

  Log Message:
  -----------
  [lldb] Add missing newline to po warning (#176257)

Follow up fix to #175847


  Commit: 7f2eb314cd4837f4f4cff4d3c529aee140c49ea2
      https://github.com/llvm/llvm-project/commit/7f2eb314cd4837f4f4cff4d3c529aee140c49ea2
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst

  Log Message:
  -----------
  [NFC][llvm][docs] Fix alphabetical order of commands (#176280)

Fix the order of commands for llvm-readelf and llvm-readobj docs.


  Commit: f3f982d540675cf5393b0bdf51ec1d31c70ab637
      https://github.com/llvm/llvm-project/commit/f3f982d540675cf5393b0bdf51ec1d31c70ab637
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  Fix build breakage caused by #176061 (#176283)

https://github.com/llvm/llvm-project/pull/176061 added an extern
declaration of `EnableMachineCombinerPass`, which is `static`, causing
missing symbol errors in the debug build. This PR fixes this by making
that symbol non-static. Furthermore, this PR renames that symbol to
`X86EnableMachineCombinerPass` as `EnableMachineCombinerPass` exists in
other places.


  Commit: 02e615d65407ece3513668612fb9567199b5f98f
      https://github.com/llvm/llvm-project/commit/02e615d65407ece3513668612fb9567199b5f98f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst

  Log Message:
  -----------
  [NFC] Fix some issues in NVPTX Usage document (#176289)

- Fix RST syntax for links.
- Fix names for 2 fence proxy intrinsics.


  Commit: ab95de00b37b6b0fe2f6c5ae9bce86de8e2d38ef
      https://github.com/llvm/llvm-project/commit/ab95de00b37b6b0fe2f6c5ae9bce86de8e2d38ef
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/NVGPU/Transforms/OptimizeSharedMemory.cpp
    M mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir

  Log Message:
  -----------
  [mlir][nvgpu] Fix a division by zero crash in OptimizeSharedMemoryPass (#174931)

Fixes #173553.


  Commit: 84cbe2c13daaf7530cabe7f272e01f4eb4e7f21a
      https://github.com/llvm/llvm-project/commit/84cbe2c13daaf7530cabe7f272e01f4eb4e7f21a
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/test/TableGen/CPtrWildcard.td

  Log Message:
  -----------
  [ValueTypes] Add types for v256bf16 and v512bf16 (#176287)

There are v256f16 and v128f16 types for f16. This PR adds the same
number of element types for bf16.


  Commit: 10fea27f2d69fb21f330911a101392163fe0fc8d
      https://github.com/llvm/llvm-project/commit/10fea27f2d69fb21f330911a101392163fe0fc8d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [X86][NewPM] Fix X86CodeGenPassBuilder

There were two passes in there that have not actually been ported, and
x86-seses got ported earlier today before this landed, so adding it as
well.


  Commit: afd641fd0c4e01d4813fe60190164f65ad8b1dd1
      https://github.com/llvm/llvm-project/commit/afd641fd0c4e01d4813fe60190164f65ad8b1dd1
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M orc-rt/include/orc-rt/AllocAction.h
    M orc-rt/include/orc-rt/SPSWrapperFunction.h
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/unittests/DirectCaller.h
    M orc-rt/unittests/SessionTest.cpp

  Log Message:
  -----------
  [orc-rt] Make WrapperFunctionResult constructor explicit. (#176298)

The WrapperFunctionBuffer(orc_rt_WrapperFunctionBuffer) constructor
takes ownership of the underlying buffer (if one exists). Making the
constructor explicit makes this clearer at the call site.

This mirrors a similar change to the LLVM-side API in dec5d663745.


  Commit: ac9f0ce724becf506fc7a7f28bd493a35c34fb35
      https://github.com/llvm/llvm-project/commit/ac9f0ce724becf506fc7a7f28bd493a35c34fb35
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/dfmal.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/dfmal.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/dfmal.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 dfmal to Header Only. (#175359)

builds correctly with both Clang and GCC 12.2.

Since `fma` is not `constexpr`, `dfmal` cannot be declared `constexpr`
either.
Closes #175316.


  Commit: d8487bea958d2a357f23b963d774c6ce892b028c
      https://github.com/llvm/llvm-project/commit/d8487bea958d2a357f23b963d774c6ce892b028c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Store original LocVT/LocInfo in PendingLocs instead of XLenVT/Indirect. NFC (#176193)

Convert to XLenVT/Indirect when we use the PendingLocs. This allows the
2*XLen case to use the original LocVT and not the overridden XLenVT.

Hoping this reduces some of the changes from #176093.


  Commit: de32b2123a2c337d4bd9d64c8c965d9506b935c2
      https://github.com/llvm/llvm-project/commit/de32b2123a2c337d4bd9d64c8c965d9506b935c2
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfwcvtbf16.c

  Log Message:
  -----------
  [RISCV] Move the intrinsic tests for zvfofp8min to zvfofp8min directory. NFC. (#176100)

Those intrinsic tests for zvfofp8min don't belong to Sifive.


  Commit: 22271c9e763514d4180d0f299ebdc905c39fc04b
      https://github.com/llvm/llvm-project/commit/22271c9e763514d4180d0f299ebdc905c39fc04b
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/nvgpucompiler.py

  Log Message:
  -----------
  [MLIR][NVVM][Tests] Re-enable matmul.py tests (#175728)

This patch re-enables the matmul.py tests:
* Fix gpu.wait usages
* Fix gpu.launchOp usage
* Fix format-string for gpu.printf
* Fix verification failure by removing the block[0] append.
   This is now done by the python script's init.
* Fix the runtime error by adding the missing initialize() call during
JIT.
* Add the missing waitGroup(0) for _ws implementation.
  This was mistakenly removed in PR #113713. Without this fix,
I see timing issues and the _ws tests with stage>1 randomly show output
mismatch.

With all these fixes, the test compiles and
executes successfully on an sm90a machine.
(locally verified for 1K iterations)

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: dbe520fc0bcbe256bd9e943a4260ac056fc92c1d
      https://github.com/llvm/llvm-project/commit/dbe520fc0bcbe256bd9e943a4260ac056fc92c1d
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vfadd.ll

  Log Message:
  -----------
  [RISCV] Remove duplicated RUN line in vfadd.ll. NFC.

That zvfh implies zfhmin.


  Commit: aa116291929225ff83dc2eca0ff6cb7b637c1240
      https://github.com/llvm/llvm-project/commit/aa116291929225ff83dc2eca0ff6cb7b637c1240
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll

  Log Message:
  -----------
  [LV] Prevent `extract-lane` generate unused IRs with single vector operand.  (#172798)

When `extract-lane` only contains single vector operand. We can simplify
it to `extractelement`.

This patch makes `extract-lane` generate simple `extractelement` when it
only contains single vector operand to prevent unused IR generated.

This patch is mostly NFC, the unused IR should be removed in following
IR passes.


  Commit: 8741ee2981e0f5c643ce0ae43603a0b8cbeb2351
      https://github.com/llvm/llvm-project/commit/8741ee2981e0f5c643ce0ae43603a0b8cbeb2351
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [X86][NewPM] Fix test writing to source dirs

Load the file from stdin so that the output is put on stdout rather than
in the source directory.


  Commit: 66e4919b22fb0de96a922f408c8115dd5bf132fc
      https://github.com/llvm/llvm-project/commit/66e4919b22fb0de96a922f408c8115dd5bf132fc
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp

  Log Message:
  -----------
  [JITLink][CompactUnwind] Express mergeability via +ve predicate. NFCI. (#176313)

Compact unwind record merging is an optimization. Using a can-be-merged
predicate is preferrable to a "cannot-be-merged" predicate as the former
encourages conservatively correct implementations: "what is safe to
merge" is easier to reason about than "what is safe to not not merge".


  Commit: 3bdd794f98bb1ba0544b51d8ba7164c99d9c6a14
      https://github.com/llvm/llvm-project/commit/3bdd794f98bb1ba0544b51d8ba7164c99d9c6a14
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h

  Log Message:
  -----------
  [JITLink][CompactUnwind] Expand CompactUnwindTraits struct comment. (#176315)

Adds notes on the properties and methods that must be implemented by
traits classes derived from CompactUnwindTraits.


  Commit: f8278a152fdc1aed9f16a7e9b4a42f1c450fb844
      https://github.com/llvm/llvm-project/commit/f8278a152fdc1aed9f16a7e9b4a42f1c450fb844
  Author: Jolynn Wee Zhuo Lin <85361959+jolwnn at users.noreply.github.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fsqrt.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fsqrt.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fsqrt.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 fsqrt to Header Only (#175444)

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


  Commit: 4193c404ca50de195fc3b9211e7691aa238da56b
      https://github.com/llvm/llvm-project/commit/4193c404ca50de195fc3b9211e7691aa238da56b
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/runtime/AArch64/disassemble-plts.c

  Log Message:
  -----------
  [BOLT][BTI] Disassemble PLT entries when processing BTI binaries (#169663)

PLT entries are PseudoFunctions, and are not disassembled or emitted.
For BTI, we need to check the first MCInst of PLT entries, to see
if indirectly calling them is safe or not.

This patch disassembles PLTs for binaries using BTI, while not changing
the behaviour for binaries without BTI.

The PLTs are only disassembled, not emitted.

---------

Co-authored-by: Paschalis Mpeis <paschalis.mpeis at arm.com>


  Commit: 792631c1fa5dc6ef2b306d2d3cf64b6cdf39146c
      https://github.com/llvm/llvm-project/commit/792631c1fa5dc6ef2b306d2d3cf64b6cdf39146c
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/pr165232.ll
    M llvm/test/CodeGen/RISCV/rvv/rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp-mask.ll

  Log Message:
  -----------
  [RISCV] Use NoV0 register classes for masked `VPseudoBinaryM` (#175706)

There are two constraints:

1. The same register can't have two EEWs. `V0` is already the mask
register, so other register source operands can't be `V0`.
2. The destination and source registers can't overlap. We have added
`@earlyclobber` constraint so we won' allocate `V0` to destination.


  Commit: d34ffc9652313a4c95d55339328213834fe987a7
      https://github.com/llvm/llvm-project/commit/d34ffc9652313a4c95d55339328213834fe987a7
  Author: Jacob Lin <63972968+millaker at users.noreply.github.com>
  Date:   2026-01-15 (Thu, 15 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll

  Log Message:
  -----------
  [RISCV] Fix fcanonicalize for Z*inx (#175984)


  Commit: d16413ad22220e4da29912765f4be36d899f41ce
      https://github.com/llvm/llvm-project/commit/d16413ad22220e4da29912765f4be36d899f41ce
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp

  Log Message:
  -----------
  [JITLink][CompactUnwind] Explicitly enumerate mergeable encodings. NFCI. (#176317)

Updates CompactUnwindTraits_MachO_arm64 and
CompactUnwindTraits_MachO_x86_64 encodingCanBeMerged methods to use
switch statements that clearly list mergeable encodings, and have a
default "false" case.

Since the new scheme explicitly covers DWARF modes (always
non-mergeable), this patch removes the separate DWARF mode check from
mergeRecords in CompactUnwindSupport.h.


  Commit: c30c2f4f3e4c6793c48ae53e0d22b0ab191f9602
      https://github.com/llvm/llvm-project/commit/c30c2f4f3e4c6793c48ae53e0d22b0ab191f9602
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    A llvm/test/CodeGen/AMDGPU/swdev-549940.ll

  Log Message:
  -----------
  [AMDGPU] Rematerialize VGPR candidates when SGPR spills results in VGPR Excess (#168079)

Before, when selecting candidates to rematerialize, we would only
consider SGPR candidates when there was an excess of SGPR registers.

Failing to eliminate the excess would result in spills to VGPRs.
This is normally not an issue, unless spilling to VGPRs results in
excess VGPRs.

This patch does 2 things:
* It relaxes the GCNRPTarget success criteria: now we accept regions
  where we spill SGPRs to VGPRs, as long as this does not end up in
  excess VGPRs.
* It changes isSaveBeneficial to consider the excess VGPRs (which
  includes the SGPRs that would be spilled to VGPR).

With these changes, the compiler rematerializes VGPRs when the excess
SGPRs would result in VGPR excess.

This has some unaddressed flaws: we should attempt to rematerialize
SGPRs
first in order to eliminate the SGPR excess that results in VGPR excess.

Related to SWDEV-549940


  Commit: 9bbea753a4a45f9c7c7ca9730736c7792adaacf9
      https://github.com/llvm/llvm-project/commit/9bbea753a4a45f9c7c7ca9730736c7792adaacf9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/tools/llvm-config/CMakeLists.txt

  Log Message:
  -----------
  [cmake] Restore exception flags in llvm-config --cxxflags (#176195)

https://github.com/llvm/llvm-project/pull/173869 accidentally dropped
rtti and eh flags from `llvm-config --cxxflags`. Then
https://github.com/llvm/llvm-project/pull/174084 restored the rtti
flags. The eh flags were not included with the rationale that they are
not ABI relevant.

This PR restores the eh flags as well. While they are not strictly
necessary, I believe that code that directly interfaces with LLVM almost
certainly does not want to build with exceptions if LLVM is not built
with exceptions. Building in the peculiar `-fexceptions -fno-rtti`
configuration is rarely useful and likely not intended.

On MacOS, this is also relevant because it's not possible to use C++17
headers without `-fno-exceptions` when using older deployment targets.
In that configuration, `-fno-exceptions` is required to interact with
LLVM.


  Commit: fb2c62cf68f0de5f864676761e4a691ab6906b05
      https://github.com/llvm/llvm-project/commit/fb2c62cf68f0de5f864676761e4a691ab6906b05
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll

  Log Message:
  -----------
  [InstSimplify] Avoid poison value for ctz/abs in simplifyWithOpsReplaced() (#176168)

If we drop flags, we'll set the zero_is_poison/int_min_is_poison flag to
false as part of the transform. However, the constant folding was still
performed with the value true, which made constant folding return
poison. This resulted in the pattern failing to match, as the poison
value is not equal to the other select arm.

To avoid this, add some special handling to set the argument to false
during constant folding as well.

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


  Commit: c91fbbd12db7295519e8e618dcf7b8752bfc312d
      https://github.com/llvm/llvm-project/commit/c91fbbd12db7295519e8e618dcf7b8752bfc312d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pclmul.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - add basic X86ISD::PCLMULQDQ handling (#176142)

Now that we're creating X86ISD::PCLMULQDQ nodes in DAG, we need to
handle basic vector simplification - a minor first step towards adding
ISD::CLMUL vector handling

X86ISD::PCLMULQDQ uses the lower/upper i64 element from each 128-bit
lane depending on whether bit0/bit4 are set (for lhs/rhs operands)

These tests were copied from InstCombine which already did something
similar for the pclmulqdq intrinsics


  Commit: de40ef2a3f6900137b92d8da4649db23f48d0aed
      https://github.com/llvm/llvm-project/commit/de40ef2a3f6900137b92d8da4649db23f48d0aed
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/runtime/AArch64/long-jmp-bti-plt.c

  Log Message:
  -----------
  [BOLT][BTI] Patch LLD-generated PLTs to contain BTI landing pad (#173245)

This patch adds the patchPLTEntryForBTI to enable patching PLT entries
generated by LLD.

## Context:

To keep BTI consistent, targets of stubs inserted in LongJmp need to be
patched. As PLTs are not optimized and emitted by BOLT, this patch adds
a helper for patching them in the original .plt section.

For PLTs generated by LLD, this is safe as LLD inserts extra nops to
PLTs which don't already contain a BTI.

PLT entry before patching:
```
   adrp x16, Page(&(.got.plt[n]))
   ldr  x17, [x16, Offset(&(.got.plt[n]))]
   add  x16, x16, Offset(&(.got.plt[n]))
   br   x17
   nop
   nop
```

PLT entry after patching:
```
   bti c
   adrp x16, Page(&(.got.plt[n]))
   ldr  x17, [x16, Offset(&(.got.plt[n]))]
   add  x16, x16, Offset(&(.got.plt[n]))
   br   x17
   nop
```

## Safety considerations:

The PLT entry can become incorrect if shifting the ADRP moves it
across a page boundary.

The PLT entry is 24 bytes, and page size is 4096 (or 16384) bytes.
Their GCD is 8 bytes, meaning that shifting the ADRP is safe, as long as
it's shifted by less than 8 bytes.

The introduced function only shifts the ADRP by one instruction (4
bytes),
meaning there is no need to recompute the ADRP offset.


  Commit: d45fafa41d37a8130dbde0c26f733fa1a55afa98
      https://github.com/llvm/llvm-project/commit/d45fafa41d37a8130dbde0c26f733fa1a55afa98
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness-fixed.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters-header.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp

  Log Message:
  -----------
  [clang-tidy] Add AnalyzeParameters option to misc-const-correctness (#171215)

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


  Commit: 70633659c5dd7494ced987dece3d617bdb1a3711
      https://github.com/llvm/llvm-project/commit/70633659c5dd7494ced987dece3d617bdb1a3711
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ReleaseNotesTemplate.txt

  Log Message:
  -----------
  [clang][docs] Redirect folks from CSA sections for usual Clang crashes (#175935)

Almost in every release there are contributors adding non-CSA entries to
the CSA release docs sections due to confusion.
To reduce the temptation in the future, let's add a reminder.

Note that it's not the end of the world if entries are put in the wrong
section, because I always moved them in the past. It would be simply
more convenient to avoid this.


  Commit: 01e6245af481dac4604e8a25be6bec0dbe36f99d
      https://github.com/llvm/llvm-project/commit/01e6245af481dac4604e8a25be6bec0dbe36f99d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/XCore/XCoreSelectionDAGInfo.cpp
    M llvm/unittests/CodeGen/SelectionDAGTestBase.h
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
    M llvm/unittests/Target/ARM/ARMSelectionDAGTest.cpp
    M llvm/unittests/Target/RISCV/RISCVSelectionDAGTest.cpp

  Log Message:
  -----------
  DAG: Avoid querying libcall info from TargetLowering (#176268)

Libcall lowering decisions should come from the LibcallLoweringInfo
analysis. Query this through the DAG, so eventually the source
can be the analysis. For the moment this is just a wrapper around
the TargetLowering information.


  Commit: 783fbdc54eff8e39457e7116628df8774726ec80
      https://github.com/llvm/llvm-project/commit/783fbdc54eff8e39457e7116628df8774726ec80
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h

  Log Message:
  -----------
  [LLDB][Windows] Store PTY in `ProcessWindows` (#175837)

I noticed that LLDB takes longer to stop than it should. Running a tiny
program like `int main() { return 0; }` in LLDB with `lldb test.exe -o r
-o q` takes about five seconds.

This is caused by the `WaitForMultipleObjects` in
[`ConnectionGenericFile::Read`](https://github.com/llvm/llvm-project/blob/25976e83606f1a7615e3725e6038bb53ee96c3d5/lldb/source/Host/windows/ConnectionGenericFileWindows.cpp#L191-L192)
timing out (it has a timeout of 5s).

It times out, because we never close the PTY created in
[`ProcessLaunchInfo::SetUpPtyRedirection`](https://github.com/llvm/llvm-project/blob/25976e83606f1a7615e3725e6038bb53ee96c3d5/lldb/source/Host/common/ProcessLaunchInfo.cpp#L213).
When we call `target->GetProcessLaunchInfo().GetPTY().Close()` in
`ProcessWindows::OnExitProcess`, we don't access the PTY we created when
setting up the redirection - we're closing a default constructed one.
This is because the target's `m_launch_info` isn't necessarily the
`launch_info` we get in
[`Target::FinalizeFileActions`](https://github.com/llvm/llvm-project/blob/4a8a0593bdecee49331cb5c31a6c9b18d87ea41c/lldb/source/Target/Target.cpp#L3850)
when calling `SetUpPtyRedirection`.

With this PR, we store the PTY that a process was launched with inside
`ProcessWindows`, so we can later close it.

The wait of five seconds and a timed out `WaitForMultipleObjects` sounds
similar to https://github.com/llvm/llvm-project/pull/159308, but it's a
different call to `WaitForMultipleObjects` here. Still, I wonder if we
could do something to detect this earlier. Maybe some warning message or
debug-only assert if these waits time out?


  Commit: f76433761a55d47b31dd65150a0a5b6ae923c673
      https://github.com/llvm/llvm-project/commit/f76433761a55d47b31dd65150a0a5b6ae923c673
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/include/mlir/Dialect/Transform/TuneExtension/TuneExtensionOps.td
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Async/IR/Async.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp

  Log Message:
  -----------
  [mlir][Interfaces] Split successor inputs from region successor (#175815)

This commit simplifies the design of the `RegionBranchOpInterface`. The
property of being a successor input is now independent of the region
branch point.

There is a new API for querying successor inputs:
`RegionBranchOpInterface::getSuccessorInputs(RegionSuccessor)`. Note
that this function does **not** take a `RegionBranchPoint` as parameter.

The `RegionSuccessor` API is now also simpler: it no longer stores
successor inputs. A region successor is simply `Region *`, wrapped
around a convenience API.

Note: This commit is mostly mechanical. Analyses / transformations that
build on top of the `RegionBranchOpInterface` (e.g.,
`visitNonControlFlowArguments` API) can likely be simplified in
follow-up commits.

Note for LLVM integration: Split
`RegionBranchOpInterface::getSuccessorRegion` implementations into two
functions: `getSuccessorRegion` and `getSuccessorInputs. (There are many
examples in this commit.)

RFC:
https://discourse.llvm.org/t/rfc-simplify-regionbranchopinterface-separate-successor-inputs-from-region-successor/89420/7


  Commit: 59ccb7fccee2dcfbb2683909f601730be803eb94
      https://github.com/llvm/llvm-project/commit/59ccb7fccee2dcfbb2683909f601730be803eb94
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [X86] Assume pclmulqdq handling on SSE42 or later in clmul tests (#176146)

The pclmulqdq ISA has been available on all known intel/amd targets with
SSE42, however they aren't included in the x86-64 levels (I'm not sure
why not).

To improve signal:noise ratio in the clmul tests this patch proposes to
add `-mattr=+pclmul` to SSE42 and later RUNs while retaining baseline
x86-64 coverage with AND without pclmul

I really want to avoid a mess similar to the AVX512 ISA permutation test
coverage


  Commit: fe8447d00796bc4795b28b8036b0f49e5f118f1d
      https://github.com/llvm/llvm-project/commit/fe8447d00796bc4795b28b8036b0f49e5f118f1d
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp

  Log Message:
  -----------
  [lld][LoongArch] Clean up CALL30 relocation with setK16 and checkInt (#176311)


  Commit: 3af2e51eb91a96232efc4497059d5c6360cc094b
      https://github.com/llvm/llvm-project/commit/3af2e51eb91a96232efc4497059d5c6360cc094b
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lld/ELF/InputSection.cpp

  Log Message:
  -----------
  [lld][ELF] Deduplicate PC-relative indirect relocation logic for RISC-V and LoongArch (#176312)


  Commit: 2f119133bae79bdd5f03168d88bbe5ccd1bef538
      https://github.com/llvm/llvm-project/commit/2f119133bae79bdd5f03168d88bbe5ccd1bef538
  Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/unittests/Support/ProgramStackTest.cpp
    M mlir/include/mlir/Dialect/Func/Utils/Utils.h
    M mlir/include/mlir/Dialect/LLVMIR/BasicPtxBuilderInterface.td
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    M mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt

  Log Message:
  -----------
  Add missing newlines at EOF; NFC (#176192)


  Commit: cc98eb0380835b5fe4a834783f6b7c78cb02cc19
      https://github.com/llvm/llvm-project/commit/cc98eb0380835b5fe4a834783f6b7c78cb02cc19
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp

  Log Message:
  -----------
  [mlir] Fix build after #175815 (#176332)

Fix this build error, which is reported by some compilers after #175815:

```
error: operands to ?: have different types ‘mlir::Operation::result_range {aka mlir::ResultRange}’ and ‘mlir::ValueRange’
   return successor.isParent() ? getOperation()->getResults() : ValueRange();
```


  Commit: e85e61c05f3c9d8cd9d81fb0b12931afa0611e85
      https://github.com/llvm/llvm-project/commit/e85e61c05f3c9d8cd9d81fb0b12931afa0611e85
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp
    M mlir/test/Dialect/Arith/shard-partition.mlir
    A mlir/test/Dialect/Shard/invalid_annotated.mlir
    M mlir/test/Dialect/Shard/partition.mlir

  Log Message:
  -----------
  [MLIR][shard] checking for correct&full sharding annotations (#176000)

Before trying to partition a block or operation, check that it is fully
annotated with `shard.shard` ops. This gives useful error messages
instead of random errors later on.


  Commit: 04baf1105f53632802e60030a31e0607d1153653
      https://github.com/llvm/llvm-project/commit/04baf1105f53632802e60030a31e0607d1153653
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/multiple-result-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/multiple-result-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll

  Log Message:
  -----------
  [LoopVectorize] Support vectorization of overflow intrinsics (#174835)

Enables support for marking overflow intrinsics `uadd`, `sadd`, `usub`,
`ssub`, `umul` and `smul` as trivially vectorizable.

Fixes #174617

---------

Signed-off-by: vishruth-thimmaiah <vishruththimmaiah at gmail.com>


  Commit: 0a26d907ceec0a64596d334848fa7ec8b163a59e
      https://github.com/llvm/llvm-project/commit/0a26d907ceec0a64596d334848fa7ec8b163a59e
  Author: Davide Cunial <dcunial at proton.me>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    A clang/test/Tooling/clang-extdef-mapping-no-args.cpp
    A clang/test/Tooling/clang-extdef-mapping.cpp
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp

  Log Message:
  -----------
  [clang] Fix options handling in ClangExtDefMapGen.cpp (#176116)

Also, remove some unused includes.

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

Now, running `clang-extdef-mapping` with no options results in the
following error message:

```sh
error: clang-extdef-mapping: Not enough positional command line arguments specified!
Must specify at least 1 positional argument: See: ./build/Debug/bin/clang-extdef-mapping --help
```


  Commit: 8779cff5e979dee6830268cf49a4736b11308e32
      https://github.com/llvm/llvm-project/commit/8779cff5e979dee6830268cf49a4736b11308e32
  Author: Midhunesh <midhunesh.p at ibm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-strings/stdin.test

  Log Message:
  -----------
  [LIT][LLVM-STRINGS]Make stdin tests shell-consistent (#176139)

The fix updates the llvm-strings stdin lit tests to use `printf` instead
of `echo -n` when generating input via stdin.
The behavior of `echo -n` is not portable and varies across shells and
platforms, particularly on AIX where `/bin/sh` handles `-n` and escape
processing differently from GNU-compatible shells. This causes the tests
to fail despite correct llvm-strings functionality.

In contrast, `printf` has well-defined, POSIX-specified semantics and
provides consistent handling of newlines, escape sequences, and
non-printable characters. Using `printf` eliminates the dependency on
shell-specific `echo` behavior and makes the tests deterministic.


  Commit: 10863e2bbb98fac218b1405a52029b63df7e78b2
      https://github.com/llvm/llvm-project/commit/10863e2bbb98fac218b1405a52029b63df7e78b2
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/test/Analysis/block-in-critical-section.cpp

  Log Message:
  -----------
  [analyzer] Teach `unix.BlockInCriticalSection` about `std::scoped_lock` (#176134)

The checker knows that `std::lock_guard` and `std::unique_lock`
introduce critical sections, but doesn't know about the newer
`std::scoped_lock`.


  Commit: 11c0fd4f449cf966ddf38ffd7885963fc14c1a38
      https://github.com/llvm/llvm-project/commit/11c0fd4f449cf966ddf38ffd7885963fc14c1a38
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp

  Log Message:
  -----------
  [libc++][test] Fix `constexpr` stdver. for tests for `find_if(_not)` (#176303)

Until C++20, `std::find_if(_not)` were not `constexpr`, so uses of
`TEST_CONSTEXPR_CXX17` make the test functions ill-formed, no diagnostic
required in C++17 mode.

The uses were introduced in 2b4b26ea84fd9c95d0ff25ce338c15ea5e74a4e4,
while the transformation looked incorrect - `TEST_CONSTEXPR_CXX20`
should be used instead.

Drive-by changes: Fix comments in both changed test files to match the
actually standardized wording.


  Commit: 301c0d91b558a31a8d907b206070427b8eaa60dd
      https://github.com/llvm/llvm-project/commit/301c0d91b558a31a8d907b206070427b8eaa60dd
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml
    M llvm/utils/release/build_llvm_release.bat

  Log Message:
  -----------
  [lldb][windows] switch to Python 3.11 for the non ARM64 release builds (#175796)

This patch is a follow up to
[RFC#89434](https://discourse.llvm.org/t/rfc-sync-python-versions-on-windows/89434).

Python 3.11 is the first official Python.org release to have an arm64
installer on Windows, which is why it's the version used to build the
toolchain on arm64 Windows. The x86 and x64 variants of the toolchain
both use Python 3.10 which can be confusing for users who get different
install dependencies based on their architectures.

This patch syncs all the required Pythons to install the toolchain, by
bumping the requirements to 3.11 for x86, x64 and arm64 Windows.


  Commit: 6934c36a863924c8070ca3b17ddd2b0e449c8d05
      https://github.com/llvm/llvm-project/commit/6934c36a863924c8070ca3b17ddd2b0e449c8d05
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/infer_affine_domain_ovlf.ll
    M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll

  Log Message:
  -----------
  [DA] Use ScalarEvolution::isKnownPredicate (#170919)

DA uses `DependenceInfo::isKnownPredicate` instead of
`ScalarEvolution::isKnownPredicate` in several places. The former is
intended to be a "wrapper" for the later. Specifically, it performs the
following processes:

- Replace `zext(X) cmp zext(Y)` with `X cmp Y`.
- Replace `X >=s Y` with `X - Y >=s 0`
- Replace `X <=s Y` with `X - Y <=s 0`
- Replace `X >s Y` with `X - Y >s 0`
- Replace `X <s Y` with `X - Y <s 0`

The first one can return an incorrect result when the most significant
bit of `X` and `Y` are different. Everything other than the first one
can be incorrect when `X - Y` overflows. Actually, when a `SCEVUnknown`
is involved (e.g., `%n <s %n + 1` will be `0 <s 1`), this function often
returns a result that ignore the possibility of overflow.

This patch removes `DependenceInfo::isKnownPredicate` and replace all
uses of it with `ScalarEvolution::isKnownPredicate`. There is a
degradation in some test cases, but this should be correct.

Resolve #169810


  Commit: f646b9150a9c0109824874b595ed9617d5b8e3ea
      https://github.com/llvm/llvm-project/commit/f646b9150a9c0109824874b595ed9617d5b8e3ea
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/utils/git/ids-check-helper.py

  Log Message:
  -----------
  [ci][ids] Fix pattern prefix check (#176334)

The prefix check did not include the trailing /, so llvm-c headers were
treated like llvm headers, resulting in incorrect suggestions to use
LLVM_ABI where LLVM_C_ABI was already present.

See
https://github.com/llvm/llvm-project/pull/176309#issuecomment-3757987748
for an example.


  Commit: e515529712fc896f5e944fc909a2bf343aca4bab
      https://github.com/llvm/llvm-project/commit/e515529712fc896f5e944fc909a2bf343aca4bab
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    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/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/test/CIR/CodeGen/atomic.c

  Log Message:
  -----------
  [CIR] Add __sync_<OP>_and_fetch builtins (#168347)

Adds support for several `__sync_<OP>_and_fetch` builtins, and several helper methods for emitting atomic fetch + arithmetic operations.

---------

Co-authored-by: Andy Kaylor <akaylor at nvidia.com>


  Commit: fc472ddc94c2589eb186c9814c08cc2881828a58
      https://github.com/llvm/llvm-project/commit/fc472ddc94c2589eb186c9814c08cc2881828a58
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libclc/opencl/include/clc/opencl/synchronization/utils.h
    M libclc/opencl/include/clc/opencl/utils.h

  Log Message:
  -----------
  [libclc][NFC] Don't include 'clc/internal/clc.h' in OpenCL library (#176336)

The file is meant for internal use within the CLC library.


  Commit: d528686f43afb431884869165096ca9ca9bc433b
      https://github.com/llvm/llvm-project/commit/d528686f43afb431884869165096ca9ca9bc433b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h

  Log Message:
  -----------
  [VPlan] Add VPConstantInt for VPIRValues wrapping ConstantInts (NFC) (#175458)

Follow-up to https://github.com/llvm/llvm-project/pull/174282: Introduce
a new VPConstantInt overlay for VPIRValue, to make it easier to check
and access constant int IR values.

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


  Commit: 370eeef8775b0a7ebbf9d7044e3a3745407c988a
      https://github.com/llvm/llvm-project/commit/370eeef8775b0a7ebbf9d7044e3a3745407c988a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Add matchers for reduction result VPInstructions (NFC).

Add dedicated matchers for reduction result VPInstructions, to be
re-used in follow-up patches, including
https://github.com/llvm/llvm-project/pull/167851.


  Commit: 66bf4e0c58b88b6a61b99385edf79c81c839033a
      https://github.com/llvm/llvm-project/commit/66bf4e0c58b88b6a61b99385edf79c81c839033a
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
    M lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/TestFrameVarDILBitFieldExtraction.py

  Log Message:
  -----------
  [lldb] Change bitfield range character from '-' to ':' in DIL (#173410)

Change the bitfield extraction range character from '-' to a more common
':'. Add a deprecation error when '-' is used.


  Commit: 0456bcdd8d9a956191d76145cdaed7345ffa3fc5
      https://github.com/llvm/llvm-project/commit/0456bcdd8d9a956191d76145cdaed7345ffa3fc5
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp

  Log Message:
  -----------
  [CGP] Refactor tail call eligibility checks in `dupRetToEnableTailCallOpts` (NFC)

Tail call eligibility and profitability checks have been combined
into a single helper to reduce code duplication.


  Commit: 3e286c20ae9fc09715a41e0d3d4ce322218ee7f5
      https://github.com/llvm/llvm-project/commit/3e286c20ae9fc09715a41e0d3d4ce322218ee7f5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/clmul-x86.ll

  Log Message:
  -----------
  [X86] clmul-x86.ll - add i64 test coverage to check for crashes (#176342)


  Commit: c838756e2d638bb6cbe96409981fdd18be8b1184
      https://github.com/llvm/llvm-project/commit/c838756e2d638bb6cbe96409981fdd18be8b1184
  Author: unexpectedlydefined <unexpectedlydefined at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    A llvm/test/tools/llvm-dwarfdump/X86/Inputs/coverage-opt.ll
    A llvm/test/tools/llvm-dwarfdump/X86/Inputs/coverage.ll
    A llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/CMakeLists.txt
    A llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  [llvm-dwarfdump][LineCov 1/3] Add variable coverage metrics (#169646)

Patch 1 of 3 to add to llvm-dwarfdump the ability to measure DWARF
coverage of local variables in terms of source lines, as discussed in
this RFC:

https://discourse.llvm.org/t/rfc-debug-info-coverage-tool-v2/83266)

This patch adds the basic variable coverage implementation. By default,
inlined instances are shown separately (displaying the full inlining
chain). Alternatively, a combined view that averages across all inlined
instances can be returned using `--combine-instances`.

In this patch, we simply print a count of source lines over which each
variable is covered. Later patches in the series will add the comparison
against a baseline.


  Commit: 823f7016253d2200825d4a61200cb843b212dfd6
      https://github.com/llvm/llvm-project/commit/823f7016253d2200825d4a61200cb843b212dfd6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-dwarfdump/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c838756e2d63


  Commit: e9952a69936761d67d4b10b17f8d381307b9c4c4
      https://github.com/llvm/llvm-project/commit/e9952a69936761d67d4b10b17f8d381307b9c4c4
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lld/COFF/Writer.cpp

  Log Message:
  -----------
  [lld][COFF][NFC] Fix warnings on 32-bit asserts builds (#176178)

Fixes #130934 (Wsign-compare warnings reported for Wasm Emscripten
builds). I ran into this when building for 32-bit RISC-V.


  Commit: e83021ab164a2038b7ed8c241faa6f1358fd9136
      https://github.com/llvm/llvm-project/commit/e83021ab164a2038b7ed8c241faa6f1358fd9136
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll

  Log Message:
  -----------
  [SelectionDAG][InlineAsm] Check VT isSimple before getSimpleVT (#176323)

Fixes: #170024


  Commit: 3fb914d8512ee778a79cbf81c0d02f03c9fa4436
      https://github.com/llvm/llvm-project/commit/3fb914d8512ee778a79cbf81c0d02f03c9fa4436
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
    M llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr-i32-index-width.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr.ll
    A llvm/test/Transforms/LoopVectorize/expand-ptrtoaddr.ll
    M polly/include/polly/Support/SCEVAffinator.h
    M polly/lib/Support/SCEVAffinator.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Support/ScopHelper.cpp

  Log Message:
  -----------
  [SCEV] Add initial support for ptrtoaddr. (#158032)

Add initial support for PtrToAddr to SCEV, including a new
SCEVPtrToAddrExpr and SCEV expansion support for it.

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


  Commit: 295256f59aaff7e6d502fab4a0675c7c482e2740
      https://github.com/llvm/llvm-project/commit/295256f59aaff7e6d502fab4a0675c7c482e2740
  Author: Karol Zwolak <karolzwolak7 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstSimplify/fcmp.ll

  Log Message:
  -----------
  [InstSimplify] Fall back to the rest of the logic if folding of the consts isn't successfull when simplifying fcmp (#176159)

Fixes #175949.


  Commit: c2a28da5fed9ab447b1cb2f0311ee52fae4ee475
      https://github.com/llvm/llvm-project/commit/c2a28da5fed9ab447b1cb2f0311ee52fae4ee475
  Author: Alexander Weinrauch <alexander.weinrauch at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir

  Log Message:
  -----------
  [AMDGPU] Fix hoist location for s_set_vgpr_msb past SALU program state instructions (#176206)

If we exit the loop at a non SALU state instruction we have to return
the next instruction because we will insert before the instruction we
return. The check before the loop already did this for cases we start on
a non SALU state instruction by returning `I`. This is now done
afterwards.


  Commit: fab06fae0064a2f1208331f9c355a26a4f9777f0
      https://github.com/llvm/llvm-project/commit/fab06fae0064a2f1208331f9c355a26a4f9777f0
  Author: Croose <reuben.cruise at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    A llvm/test/Transforms/Inline/ARM/inline-dotprod.ll

  Log Message:
  -----------
  [ARM] Fix inlining issue in ARM (#169337)

There is an issue on ARM where a function wont be inlined due to
mismatching target features between caller and callee.
The caller has `HasV8Ops` and `FeatureDotProd` and the callee does not,
but AFAIK this should not be a problem.
https://godbolt.org/z/f19h3zT66 is an example showing how the call is
not inlined on armv7.
The expected asm output would be something like:
```asm
.fnstart
	vsdot.s8	q0, q1, d4[0]
	bx	lr
.Lfunc_end0:

```
Thanks to @Amichaxx we managed to narrow it down and now can resolve
this problem by adding `ARM::FeatureDotProd, ARM::HasV8Ops` to
InlineFeaturesAllowed in llvm/lib/Target/ARM/ARMTargetTransformInfo.h,
after which the inlining occurs successfully.

Whilst we're at it we have also added some debugging to make it easier
to tell why (or why not) a function is being inlined for ARM, and a
couple other features that seem to be missing from the list.

This patch was motivated by an issue experienced with rust that was
traced back to llvm, and thus was designed to address that.


  Commit: 9b5907b87551c381d035f6f2ce53075ec0805778
      https://github.com/llvm/llvm-project/commit/9b5907b87551c381d035f6f2ce53075ec0805778
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td

  Log Message:
  -----------
  [AMDGPU] Reimplement scale_src2 encoding using PostEncoderMethod (#176140)

Reimplement #167777 using PostEncoderMethod. This has the advantage that
the disassembler will tolerate any value in the unused scale_src2 field
and it is more consistent with how other unused VALU source fields are
handled since #175753.


  Commit: e841d5fdb096efd994e1182137b57f77f9ec6ecf
      https://github.com/llvm/llvm-project/commit/e841d5fdb096efd994e1182137b57f77f9ec6ecf
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy][NFC] Fix documentation in ReleaseNotes (#176344)


  Commit: 9c2a3d6022398d561122ad21a70ff1787cbbc443
      https://github.com/llvm/llvm-project/commit/9c2a3d6022398d561122ad21a70ff1787cbbc443
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    R llvm/test/tools/llvm-dwarfdump/X86/Inputs/coverage-opt.ll
    R llvm/test/tools/llvm-dwarfdump/X86/Inputs/coverage.ll
    R llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/CMakeLists.txt
    R llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  Revert "[llvm-dwarfdump][LineCov 1/3] Add variable coverage metrics" (#176358)

Reverts llvm/llvm-project#169646

Many buildbot errors


  Commit: 86381a98acde40cf0d2c0ddc0aff046248cceaae
      https://github.com/llvm/llvm-project/commit/86381a98acde40cf0d2c0ddc0aff046248cceaae
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [Maintainers] Fix broken clang-tools-extra link (NFC) (#176345)

Was converted to .rst in #165171


  Commit: ae4c5a0b6ab786749fd17e6bb8ddcbbb60a74985
      https://github.com/llvm/llvm-project/commit/ae4c5a0b6ab786749fd17e6bb8ddcbbb60a74985
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-dwarfdump/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 9c2a3d602239


  Commit: 82780c08a38ab71284052eff39841470b3392ba2
      https://github.com/llvm/llvm-project/commit/82780c08a38ab71284052eff39841470b3392ba2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Handle multiple use fneg(fabs(x)) in SimplifyDemandedFPClass (#176149)

This ends up being smarter than the single use case, so these should
be merged at some point.


  Commit: 8193ab108cc88dc836d46205989a4647d7edd254
      https://github.com/llvm/llvm-project/commit/8193ab108cc88dc836d46205989a4647d7edd254
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/XCore/XCoreSelectionDAGInfo.cpp

  Log Message:
  -----------
  XCore: Use memcpy_align_4 through LibcallImpl (#176363)


  Commit: 85b6d43bf7dbc9a373a44a09f32f95d48ad37d81
      https://github.com/llvm/llvm-project/commit/85b6d43bf7dbc9a373a44a09f32f95d48ad37d81
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/TargetLoweringBase.cpp

  Log Message:
  -----------
  TargetLowering: Avoid getLibcallName in getSafeStackPointerLocation (#176362)


  Commit: 3b1a7479e8fc4402bb0c1089fb4eab0e47ed9b18
      https://github.com/llvm/llvm-project/commit/3b1a7479e8fc4402bb0c1089fb4eab0e47ed9b18
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp

  Log Message:
  -----------
  [mlir][Python] remove stray nb::cast (#176299)

In https://github.com/llvm/llvm-project/pull/155114 we removed
`liveOperations` but forgot this line which was being used to invalidate
operations under a transform root, which currently isn't being used for
anything. So remove.

FYI this led to a subtle double free bug after
https://github.com/llvm/llvm-project/pull/175405:

```python
@test_in_context
def check_builtin():
    module = builtin_d.ModuleOp()
    with module.context, ir.Location.unknown():
        transform_module = builtin_d.Module.create()
        transform_module.operation.attributes["transform.with_named_sequence"] = (
            ir.UnitAttr.get()
        )
        with ir.InsertionPoint(transform_module.body):
            named_sequence = NamedSequenceOp("__transform_main", [any_op_t()], [])
            with ir.InsertionPoint(named_sequence.body):
                YieldOp([])
        interp.apply_named_sequence(
            module,
            transform_module.body.operations[0],
            transform_module,
        )
```

with error 

```
python(7436,0x1f95a93c0) malloc: *** error for object 0x6000002b0000: pointer being freed was not allocated
python(7436,0x1f95a93c0) malloc: *** set a breakpoint in malloc_error_break to debug
```

This is because

```
nb::object obj = nb::cast(payloadRoot);
```
is actually equivalent to
```
nb::object obj = nb::cast(payloadRoot, nb::rv_policy::automatic);
```
which is actually equivalent to
```
nb::object obj = nb::cast(payloadRoot, nb::rv_policy::copy);
```
because I changed the API to `PyOperationBase &payloadRoot` i.e., an
lvalue reference and `nb::rv_policy::automatic` decays to
`nb::rv_policy::copy` for [lvalue
refs](https://nanobind.readthedocs.io/en/latest/api_core.html#_CPPv4N8nanobind9rv_policy9automaticE).


  Commit: 539412914a391d4dd2b74a959afcf1ac49f9e47a
      https://github.com/llvm/llvm-project/commit/539412914a391d4dd2b74a959afcf1ac49f9e47a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/RuntimeLibcallInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp

  Log Message:
  -----------
  GlobalISel: Use LibcallLoweringInfo analysis in legalizer (#170328)

This is mostly boilerplate to move various freestanding utility
functions into LegalizerHelper. LibcallLoweringInfo is currently
optional, mostly because threading it through assorted other
uses of LegalizerHelper is more difficult.

I had a lot of trouble getting this to work in the legacy pass
manager with setRequiresCodeGenSCCOrder, and am not happy with the
result. A sub-pass manager is introduced and this is invalidated,
so we're re-computing this unnecessarily.


  Commit: 135744c0d7cfcebcfad75d7937e3973faf36e4da
      https://github.com/llvm/llvm-project/commit/135744c0d7cfcebcfad75d7937e3973faf36e4da
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Consider nsz when simplifying fabs/fneg uses (#176156)

Later this trick should also be applied in the single use
case.


  Commit: 2eb709b95d8f521aa15401e159fac0729d56a677
      https://github.com/llvm/llvm-project/commit/2eb709b95d8f521aa15401e159fac0729d56a677
  Author: Alexander Weinrauch <alexander.weinrauch at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll

  Log Message:
  -----------
  [AMDGPU] Fix typo in `LowerVGPREncoding` to allow it to hoist past `waitcnt` instructions (#176355)

Fixes a typo which prevented `set_vgpr_msb` to be hoisted past `waitcnt`
instructions.


  Commit: 9e6b65826d40b138e68bb498357b68fe6b28f29f
      https://github.com/llvm/llvm-project/commit/9e6b65826d40b138e68bb498357b68fe6b28f29f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  Hexagon: Avoid using getLibcallName for special memcpy (#176374)

Create the symbol through the RTLIB::LibcallImpl enum.


  Commit: 47689d2e85d50e3d0425d9fe1d17dc52ca3f26bc
      https://github.com/llvm/llvm-project/commit/47689d2e85d50e3d0425d9fe1d17dc52ca3f26bc
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  [llvm][utils][release] Remove mention of sub-project source archives (#176348)

These are no longer provided as of llvm 22:
https://discourse.llvm.org/t/llvm-22-1-0-rc1-released/89479

> Please note: since the last release the subproject tarballs have been
> removed and are no longer provided. See RFC: Do "something" with the
> subproject tarballs in the release page for more details.

There are now only llvm-project and llvm-test-suite archives.


  Commit: 14349bce423034486dc17c2529e458e1142295c1
      https://github.com/llvm/llvm-project/commit/14349bce423034486dc17c2529e458e1142295c1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AVR/AVRISelLowering.cpp

  Log Message:
  -----------
  AVR: Avoid getLibcallName (#176375)

Create the symbol through RTLIB::LibcallImpl


  Commit: bd17d550dd236860a902a2abbf7297d56b0048b8
      https://github.com/llvm/llvm-project/commit/bd17d550dd236860a902a2abbf7297d56b0048b8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  AArch64: Avoid getLibcallName when emitting special mem libcalls (#176376)

Get the symbol through the RTLIB::LibcallImpl enum.


  Commit: 5f697b3f6f81795c1faf6fdb0fe5d2e2d293c2a7
      https://github.com/llvm/llvm-project/commit/5f697b3f6f81795c1faf6fdb0fe5d2e2d293c2a7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  AArch64: Use getLibcallImplCallingConv more consistently (#176377)

This was querying the calling conv from the Libcall instead of
the LibcallImpl.


  Commit: 4afcc4b331022856007fe8696ec59bdaed551fc0
      https://github.com/llvm/llvm-project/commit/4afcc4b331022856007fe8696ec59bdaed551fc0
  Author: Henry Linjamäki <henry.linjamaki at tuni.fi>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/openmp-offload-gpu.c

  Log Message:
  -----------
  Add `-Xoffload-compiler` option (#170467)

... to forward input to clang-linker-wrapper's device compiler
invocation.

(a separate patch as requested in #168043)


  Commit: 9587892183ada4845c899fd309cf6f01aa5addf6
      https://github.com/llvm/llvm-project/commit/9587892183ada4845c899fd309cf6f01aa5addf6
  Author: Henry Linjamäki <henry.linjamaki at tuni.fi>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp

  Log Message:
  -----------
  [Triple] Add "chipstar" OS components (#170655)

This new component is for Clang driver for selecting HIPSPV toolchain.


  Commit: f97f53e1d925fe702c23ad3a120ad3ab40b4eb51
      https://github.com/llvm/llvm-project/commit/f97f53e1d925fe702c23ad3a120ad3ab40b4eb51
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add support for CONV2D_BLOCK_SCALED operator (#172294)

This commit adds support for an MXFP CONV2D operation,
CONV2D_BLOCK_SCALED, added to the specification in
https://github.com/arm/tosa-specification/commit/408a5e53f5a7357adef7121ba3cc88e2225d4231.

This includes:
- Operator definition
- Addition of the EXT_MXFP_CONV extension
- Verification logic for the operator
- Output shape inference for the operator
- Validation checks to ensure compliance with the TOSA specification.


  Commit: 052fb00f24990dda3cc76f55c04a1c2745c311af
      https://github.com/llvm/llvm-project/commit/052fb00f24990dda3cc76f55c04a1c2745c311af
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [clang] Expose -fmodules-disable-diagnostic-validation as clang-cl option (#176285)


  Commit: 554d6ae5a5b2e8c29964927ffecc4b09d56311ef
      https://github.com/llvm/llvm-project/commit/554d6ae5a5b2e8c29964927ffecc4b09d56311ef
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [github] Fix release parameter to uncomment download links step (#176386)

I thought I could remove validate-tag from the "needs" because
release-binaries also "needs" validate-tag. Turns out that we get the
release version from an output of validate-tag and if it isn't in the
"needs" section we get an empty string when substitution happens.
Leading to this error:

./llvm/utils/release/./github-upload-release.py --token "$GITHUB_TOKEN"
--release uncomment_download_links
github-upload-release.py: error: the following arguments are required:
command

Put back validate-tag.

Fixes 822a45f4b4909289f84d119f1e5891b486d74f5e.


  Commit: b86c84ce6381bc1037f3893b063aa019af0fb8eb
      https://github.com/llvm/llvm-project/commit/b86c84ce6381bc1037f3893b063aa019af0fb8eb
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp

  Log Message:
  -----------
  [flang] Handle unused variable (NFC) (#176274)


  Commit: 1056e32785562c16d40a52dcd2a0d4a8a4d39bfb
      https://github.com/llvm/llvm-project/commit/1056e32785562c16d40a52dcd2a0d4a8a4d39bfb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll

  Log Message:
  -----------
  [LV] Precommit additional early-exit tests from #174864.

Pre-commit tests from https://github.com/llvm/llvm-project/pull/174864.


  Commit: 9a2d3ab6adc41d47f96651c07cf1ce543ad1b063
      https://github.com/llvm/llvm-project/commit/9a2d3ab6adc41d47f96651c07cf1ce543ad1b063
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add support for cross-subgroup reduction from wg to sg (#170936)

This PR adds support for cross-sg reduction whilst distributing from
workgroup to subgroup. It has following limitation
1. Cannot reduce to a scalar
2. For cross-sg, only 1:1 decomposition (each sg should be assigned only
one tile in the original WG tile) is supported for now. For example for
a WG tile of size 256x128, sg_layout = [8, 4], sg_data = [16, 16] wont
be supported.


  Commit: 25693dcca6cbc3cedbf945d7d4766de041c3bacb
      https://github.com/llvm/llvm-project/commit/25693dcca6cbc3cedbf945d7d4766de041c3bacb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  Sparc: Avoid passing around libfunc names for f128 operations (#176364)


  Commit: dfcb805dfbffeba7dcb0788f26d59bbf9ae797d9
      https://github.com/llvm/llvm-project/commit/dfcb805dfbffeba7dcb0788f26d59bbf9ae797d9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  X86: Avoid some uses of getLibcallName (#176365)

Query the LibcallImpl, check if it's supported, and generate
the symbol through the enum.


  Commit: f7ee822e0c8e58fef9efba020eef3422e231cb81
      https://github.com/llvm/llvm-project/commit/f7ee822e0c8e58fef9efba020eef3422e231cb81
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/test/Transforms/Attributor/nofpclass-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-nan-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  ValueTracking: Propagate non-nan sources through fmul square (#176243)

ValueTracking: Propagate non-nan sources through fmul square

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


  Commit: 9671aae8d554409cc1e86587f8671b89b0ec0423
      https://github.com/llvm/llvm-project/commit/9671aae8d554409cc1e86587f8671b89b0ec0423
  Author: Oxygen <chenzhuoyu at users.noreply.github.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Transforms/DeadStoreElimination/noop-stores.ll
    M llvm/test/Verifier/alloc-variant-zeroed.ll

  Log Message:
  -----------
  [DSE][Verifier] Respect the calling convention of the function specified by "alloc-variant-zeroed" (#175911)

Require that the calling convention between the zeroed and non-zeroed
variants is the same, and set it appropriate in the DSE transform.


  Commit: 2c16364d75e56379d45cc0a26ca92ba56c0662a2
      https://github.com/llvm/llvm-project/commit/2c16364d75e56379d45cc0a26ca92ba56c0662a2
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][Python] add builtin module transform test (#176388)

See https://github.com/llvm/llvm-project/pull/176299


  Commit: c52a878269e471e844cb64fa1a047603299b3d9f
      https://github.com/llvm/llvm-project/commit/c52a878269e471e844cb64fa1a047603299b3d9f
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-trunc.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Fix G_TRUNC S16 to VCC for pre-GFX8 targets (#176254)


  Commit: 5b4ed872890f38b07a160878d1816ae7087fe20f
      https://github.com/llvm/llvm-project/commit/5b4ed872890f38b07a160878d1816ae7087fe20f
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize rules for [us]addsat/[us]subsat (#176255)


  Commit: 2b03d68398819fe3608c680d6c25aa9d5a043c03
      https://github.com/llvm/llvm-project/commit/2b03d68398819fe3608c680d6c25aa9d5a043c03
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Improve single use fabs SimplifyDemandedFPClass handling (#176359)

SimplifyDemandedFPClass's handling of fabs recently became smarter in
the multiple use case than single. Unify these so the single use case
is equally as smart. This includes propagating ninf / nnan context into
the instruction, and accounting for nsz if the only bit difference is
for zero.


  Commit: 16a21941d509191935a16d83a528b4eb5040619c
      https://github.com/llvm/llvm-project/commit/16a21941d509191935a16d83a528b4eb5040619c
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    R mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/constant_folding.mlir
    A mlir/test/Dialect/Tosa/tosa-layerwise-constant-fold.mlir

  Log Message:
  -----------
  [mlir][tosa] Separate layerwise folding and simple folder tests (NFC) (#172691)

This commit moves the 'simple' folder tests (invoked via
`--canonicalize`) away from other layerwise constant folding tests
(invoked via `--tosa-layerwise-constant-fold`) into a separate test file
to help reduce confusion.

Also rename the layerwise folding test file to reflect the the pass name
that they are invoked by.


  Commit: c25c22427a5d2bd50188aabdb3f78394cdf5270e
      https://github.com/llvm/llvm-project/commit/c25c22427a5d2bd50188aabdb3f78394cdf5270e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb][CMake] Don't condition libc++ requirement on LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS (#175955)

This reverts:
```
commit 78769d51c6b183b6d88fbd1ef825fff7cf3aad21
Author: Adrian Prantl <aprantl at apple.com>
Date:   Tue Nov 4 08:29:47 2025 -0800

    [LLDB] Don't check for libcxx if LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS is off
```

This was needed as an [escape hatch for our ASAN
bot](https://github.com/llvm/llvm-zorg/commit/e78725d94b72227e4e524e9b76900ed197791419)
because we couldn't build libc++ on it. Ever since
https://github.com/llvm/llvm-zorg/pull/702 we can.

Most people wouldn't know to `LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS`
when building LLDB. Which means they'd never know to build libc++, and
thus would have worse test-coverage for our data-formatters.

If we really want such an escape hatch, we might want to name it
something more explicit like `RELAX_DARWIN_LIBCXX_TEST_REQUIREMENTS`.

An alternative is to enable `LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS` by
default.


  Commit: 09ae1bf8b7175962169448565cef0addb4f43a2b
      https://github.com/llvm/llvm-project/commit/09ae1bf8b7175962169448565cef0addb4f43a2b
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.h
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.h
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    A flang/lib/Optimizer/Dialect/FIROperationMoveOpInterface.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M flang/lib/Optimizer/OpenMP/Support/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/Support/FIROpenMPOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/test/Transforms/licm.fir
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h

  Log Message:
  -----------
  [flang] Added OperationMoveOpInterface for controlling LICM. (#175108)

In #173438 I added a FIR specific loop invariant code motion pass.

During the review, Tom pointed out certain limitations about OpenMP
dialect operations that should be taken into consideration during
transformations such as LICM:
https://github.com/llvm/llvm-project/pull/173438#discussion_r2657612148

I also found issues with hoisting operations out of `acc.loop`
operations in certain conditions (see the added test in `licm.fir`).

I am proposing a new operation interface that will allow to control
movement of operations during MLIR transformations. In particular, I
propose two methods (there might be more):
* op.canMoveOutOf(cand) - returns true, if it is allowed to move 'cand'
operation out of 'op'.
* op.canMoveFromDescendant(descendant, cand) - return true, if it is
allowed to move 'cand' out of 'descendant' and into 'op'.

I used the new interface to get rid of explicit OpenMP interfaces checks
in Flang's LICM, and I also used it for `acc.loop` operation (though, I
provided conservative initial implementation).

The new interface is part of FIR dialect, but I think it would better
fit into the core MLIR set of interfaces so that the checks that I make
in Flang's LICM are actually done in
`mlir::moveLoopInvariantCode`. Moreover, other code movement
transformations that may appear in MLIR may also need to use such an
interface.

I would like to get some feedback on whether it is reasonable to move
the interface to core MLIR.


  Commit: 6362bc81a0a7269e062550f37070a0dcac3ad399
      https://github.com/llvm/llvm-project/commit/6362bc81a0a7269e062550f37070a0dcac3ad399
  Author: Kashika Akhouri <akhourik at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp

  Log Message:
  -----------
  [LifetimeSafety] Run analysis in post-order of CallGraph for better annotation propagation (#174178)

Add functionality to analyze functions in the post-order of the call
graph.

The PR includes the following changes:

1. **Call Graph Generation**: Uses `clang::CallGraph` and
`addToCallGraph` to generate a call graph.
2. **Topological Traversal**: Uses `llvm::post_order` to iterate through
the CallGraph.
3. **New Frontend Flag**: The post-order analysis is enabled via a new
frontend flag `-fexperimental-lifetime-safety-inference-post-order`

Example:

```css
#include <iostream>
#include <string>

  std::string_view f_1(std::string_view a);
  std::string_view f_2(std::string_view a);
  std::string_view f_f(std::string_view a);

  std::string_view f_f(std::string_view a) {
    std::string stack = "something on stack";
    std::string_view res = f_2(stack);
    return res;
  }

 std::string_view f_2(std::string_view a) {
    return f_1(a);
  }

 std::string_view f_1(std::string_view a) {
    return a;
  }
```

Ouput:

```
s.cpp:20:26: warning: parameter in intra-TU function should be marked [[clang::lifetimebound]] [-Wexperimental-lifetime-safety-intra-tu-suggestions]
   20 |     std::string_view f_1(std::string_view a)
      |                          ^~~~~~~~~~~~~~~~~~
      |                                             [[clang::lifetimebound]]
s.cpp:22:12: note: param returned here
   22 |     return a;
      |            ^
s.cpp:15:26: warning: parameter in intra-TU function should be marked [[clang::lifetimebound]] [-Wexperimental-lifetime-safety-intra-tu-suggestions]
   15 |     std::string_view f_2(std::string_view a)
      |                          ^~~~~~~~~~~~~~~~~~
      |                                             [[clang::lifetimebound]]
s.cpp:17:12: note: param returned here
   17 |     return f_1(a);
      |            ^~~~~~
s.cpp:11:32: warning: address of stack memory is returned later [-Wexperimental-lifetime-safety-permissive]
   11 |     std::string_view res = f_2(stack);
      |                                ^~~~~
s.cpp:12:12: note: returned here
   12 |     return res;
```

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

---------

Co-authored-by: Utkarsh Saxena <usx at google.com>


  Commit: e7da622677cc2e0ea919e9780f7028bf1578413a
      https://github.com/llvm/llvm-project/commit/e7da622677cc2e0ea919e9780f7028bf1578413a
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/Error.h
    M llvm/unittests/Support/ErrorTest.cpp

  Log Message:
  -----------
  [llvm][Support] Create llvm::formatv variant of llvm::createStringError (#176407)

Currently `llvm::createStringError` only supports printf format
specifiers because it forwards to `llvm::format`.

In LLDB we've been using `llvm::createStringError(llvm::formatv(...),
...` to work around this. It would be convenient to have a version of
the API that takes LLVM format specifiers, so we benefit from the
advantages that come with those.

This patch adds a new `llvm::createStringErrorV` which forwards to
`llvm::formatv` (hence the `V` suffix in the name). I only implemented
`V` variants for the `llvm::createStringError` APIs that take a format
string argument.

As a side-note, `llvm/lib/Frontend/Offloading/PropertySet.cpp`
implements it's own variant of this function (and also calls it
`createStringErrorV`). This patch would allow us to clean that up as
well.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 9391d463891d3a777a8924749401530143399a0f
      https://github.com/llvm/llvm-project/commit/9391d463891d3a777a8924749401530143399a0f
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/AArch64/setcc-redundant-cmlt.ll
    A llvm/test/CodeGen/M68k/setcc-redundant.ll

  Log Message:
  -----------
  [SelectionDAG] Eliminate redundant setcc on comparison results (#171431)

When comparisons produce all-zeros or all-ones in scalars or per lane in
vectors, comparing results of such comparisons against 0 is an identity
operation. This change eliminates redundant comparison instructions
after another comparison operation.


  Commit: 92fb6ad1d6f9188ab9427056368e8c6f5f2daeaa
      https://github.com/llvm/llvm-project/commit/92fb6ad1d6f9188ab9427056368e8c6f5f2daeaa
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp

  Log Message:
  -----------
  ARM: Avoid using getLibcallName (#176418)

Get the symbol name from the LibcallImpl.


  Commit: 72d5925412522d01e48f8d6027e51c2dead11617
      https://github.com/llvm/llvm-project/commit/72d5925412522d01e48f8d6027e51c2dead11617
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/GlobalAlias.h
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/User.h
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/User.cpp

  Log Message:
  -----------
  [IR] Use alloc markers for operator delete variants (#138261)

Follow-up to https://github.com/llvm/llvm-project/pull/129914
This fixes the problem properly by using the data via the allocation
markers.

PS: Sorry for the long delay ;)


  Commit: 1c6d2add766288e2d0d2b089a2b66f7b0f285141
      https://github.com/llvm/llvm-project/commit/1c6d2add766288e2d0d2b089a2b66f7b0f285141
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/Todo/declare-simd-uniform.f90
    A flang/test/Lower/OpenMP/declare-simd.f90
    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:
  -----------
  [OpenMP][Flang][MLIR] Introduce omp.declare_simd op and emit from Flang (#175604)

Changes:
- Adds a new `omp.declare_simd` operation to the OpenMP MLIR dialect
- Lowers Fortran `!$omp declare simd` into `omp.declare_simd` inside the
enclosing function body

mlir to LLVMIR translation and uniform clause will be added in follow-up
PRs.


  Commit: 735a972253c21fbbe4d04fc6578c72fb6492dc93
      https://github.com/llvm/llvm-project/commit/735a972253c21fbbe4d04fc6578c72fb6492dc93
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Make VOP_SDWA_Pseudo inherit from VOP_Pseudo (#176209)

NFC. Tablegen change makes it easier to add fields to VOP_Pseudo


  Commit: b30b4d275f923c3b968f3e704c4d071ecc2c3bad
      https://github.com/llvm/llvm-project/commit/b30b4d275f923c3b968f3e704c4d071ecc2c3bad
  Author: Davide Cunial <dcunial at proton.me>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp

  Log Message:
  -----------
  [NFC][clang] Fix typo and warnings in ClangExtDefMapGen.cpp (#175154)


  Commit: 6f69d68a9ef4a4e3fae634a80f24ea5d77e1fd45
      https://github.com/llvm/llvm-project/commit/6f69d68a9ef4a4e3fae634a80f24ea5d77e1fd45
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir

  Log Message:
  -----------
  [RISCV] Add missing COPY elimination when folding vmerge into mask (#176077)

Found in #176001 (but unfortunately unrelated to its miscompilation),
the following snippet
```
    early-clobber %102:vrm8 = PseudoVZEXT_VF8_M8 undef $noreg, killed undef %326, 16, 6 /* e64 */, 3 /* ta, ma */
    %123:vrm8nov0 = COPY %102
    %124:vmv0 = IMPLICIT_DEF
    %121:vrm8nov0 = PseudoVMERGE_VVM_M8 undef $noreg, killed undef %327, killed undef %123, undef %124, 16, 6 /* e64 */
    %125:vrm8 = COPY killed %121
    BEQ killed undef %325, $x0, %bb.8
    PseudoBR %bb.7
```
is turned into
```
  %123:vrm8nov0 = COPY %121:vrm8nov0
  %124:vmv0 = IMPLICIT_DEF
  early-clobber %121:vrm8nov0 = PseudoVZEXT_VF8_M8_MASK undef %327:vrm8nov0(tied-def 0), killed undef %326:vr, %124:vmv0, 16, 6, 1
  %125:vrm8 = COPY killed %121:vrm8nov0
  BEQ killed undef %325:gpr, $x0, %bb.8
  PseudoBR %bb.7
```
by RISC-V Vector Peephole's vmerge folding. This is problematic because
`%121` is used before its definition. This was caused by the fact that
vector peephole try to sink the new instruction -- in this case
`PseudoVZEXT_VF8_M8_MASK` -- until it's dominated by the mask. But we
forgot to sink all the COPYs of its result like `%123` as well.

This patch fixes this by removing those COPYs after the folding, as all
of their users should be dead at that moment.


  Commit: 5ab2df3469dc6bc3b3e5c60dad160c01784f36dc
      https://github.com/llvm/llvm-project/commit/5ab2df3469dc6bc3b3e5c60dad160c01784f36dc
  Author: Davide Cunial <dcunial at proton.me>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/docs/analyzer/user-docs/CrossTranslationUnit.rst

  Log Message:
  -----------
  [clang][NFC] Update CrossTranslationUnit.rst (#175730)

For PHC-based analysis, it's no longer necessary to manually edit the
file name in externalDefMap.txt.


  Commit: 6f8a7e79db7a7263a570d2204e2c8167be46b40d
      https://github.com/llvm/llvm-project/commit/6f8a7e79db7a7263a570d2204e2c8167be46b40d
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/test/CodeGen/PowerPC/amo-enable.ll

  Log Message:
  -----------
  [PowerPC] Add AMO load builtins for conditional increment/decrement (#169435)

This commit adds 4 Clang builtins for PowerPC AMO load conditional 
increment and decrement operations: 

 __builtin_amo_lwat_cond for 32-bit unsigned operations
 __builtin_amo_ldat_cond for 64-bit unsigned operations
 __builtin_amo_lwat_cond_s for 32-bit signed operations
 __builtin_amo_ldat_cond_s for 64-bit signed operations


  Commit: f821e4b86a429d034e1eb057d93f8bfaf5708cda
      https://github.com/llvm/llvm-project/commit/f821e4b86a429d034e1eb057d93f8bfaf5708cda
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/Expression.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Protocol/MCP/Server.cpp
    M lldb/source/Symbol/Function.cpp

  Log Message:
  -----------
  [lldb][NFC] Replace createStringError/llvm::formatv pairs with createStringErrorV (#176428)

Makes use of the recently introduced `llvm::createStringErrorV` API.
It's designed exactly for this use-case.


  Commit: 4e60639794abc8b0bcbf693c28422b846eb74826
      https://github.com/llvm/llvm-project/commit/4e60639794abc8b0bcbf693c28422b846eb74826
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libcxx/utils/ci/images/libcxx_release_runners.txt

  Log Message:
  -----------
  [libcxx] Bump release runner image version (#176184)

Now that v22 has branched, we need to update the release runner version
so we get appropriate testing on the release branch.


  Commit: 586bdf0de571f7228dca6e9c4216442b9c67a121
      https://github.com/llvm/llvm-project/commit/586bdf0de571f7228dca6e9c4216442b9c67a121
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll

  Log Message:
  -----------
  [AArch64] Treat LD1 as cheap in getVectorInstrCostHelper on Apple cores. (#175970)

On Apple Silicon cores, single-element LD1 have should have the same
performance characteristics as regular loads. Consider the insert for
insertelement (load) as free

In terms of additional code-gen changes, this enables unrolling in more
cases, due to the dynamic cost of vector loops with scalar loads +
insert being estimated more accurately.

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


  Commit: 8dd848e7ae8774c64368934e2a821a2a7adc823c
      https://github.com/llvm/llvm-project/commit/8dd848e7ae8774c64368934e2a821a2a7adc823c
  Author: Artem Belevich <tra at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/cuda-arch-list.cu

  Log Message:
  -----------
  Make sure that driver-provided __CUDA_ARCH_LIST__ can be overridden by user-supplied arguments. (#176301)


  Commit: 65533d3af5bff5b2e8780d0517ab14d4aab6b633
      https://github.com/llvm/llvm-project/commit/65533d3af5bff5b2e8780d0517ab14d4aab6b633
  Author: Tirthankar Mazumder <tmazumder.github at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/icmp-logical.ll
    M llvm/test/Transforms/InstCombine/merge-icmp.ll

  Log Message:
  -----------
  [InstCombine] Fold `(trunc X)` into `X & Mask` inside `decomposeBitTestICmp` (#171195)

Resolves #170020.

Added another case to the `ICmp::EQ`/`ICmp::NE` case in the switch
inside `decomposeBitTestICmp` to convert `trunc X` into a `X & Mask`.


  Commit: f7d32078e5bb118fd6b8802df3ab97baf0f1ed09
      https://github.com/llvm/llvm-project/commit/f7d32078e5bb118fd6b8802df3ab97baf0f1ed09
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CAS/MappedFileRegionArena.h
    A llvm/include/llvm/CAS/OnDiskCASLogger.h
    M llvm/include/llvm/CAS/OnDiskDataAllocator.h
    M llvm/include/llvm/CAS/OnDiskGraphDB.h
    M llvm/include/llvm/CAS/OnDiskKeyValueDB.h
    M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
    M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
    M llvm/lib/CAS/ActionCaches.cpp
    M llvm/lib/CAS/CMakeLists.txt
    M llvm/lib/CAS/DatabaseFile.cpp
    M llvm/lib/CAS/DatabaseFile.h
    M llvm/lib/CAS/MappedFileRegionArena.cpp
    M llvm/lib/CAS/OnDiskCAS.cpp
    A llvm/lib/CAS/OnDiskCASLogger.cpp
    M llvm/lib/CAS/OnDiskDataAllocator.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/lib/CAS/OnDiskKeyValueDB.cpp
    M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
    M llvm/lib/CAS/UnifiedOnDiskCache.cpp
    A llvm/test/tools/llvm-cas/logging.test
    M llvm/unittests/CAS/CMakeLists.txt
    A llvm/unittests/CAS/OnDiskCASLoggerTest.cpp
    M llvm/unittests/CAS/OnDiskGraphDBTest.cpp
    M llvm/unittests/CAS/OnDiskTrieRawHashMapTest.cpp
    M llvm/unittests/CAS/ProgramTest.cpp

  Log Message:
  -----------
  [CAS] Add OnDiskCASLogger to help logging/debugging CAS (#174462)

Adds a CAS logging interface to track mutations of the CAS and action
cache database files. This is designed to aid in the debugging of
data corruption and other issues with the low-level on-disk
representation.

To enable logging, set the environment variable LLVM_CAS_LOG to 1 or 2.
Level 2 includes logging of all allocations inside the index, action
cache, and datapool, which increases the overhead. The log file is
placed inside the top-level directory of the unified cache. For now it
is a human-readable textual format with one line per entry.


  Commit: 5a4529cab841a985a88bb5672d0b354b6c48c224
      https://github.com/llvm/llvm-project/commit/5a4529cab841a985a88bb5672d0b354b6c48c224
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port f7d32078e5bb


  Commit: f8284d500d22d0b20913ac0f62fd542d0ffd5667
      https://github.com/llvm/llvm-project/commit/f8284d500d22d0b20913ac0f62fd542d0ffd5667
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWinEH.h
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWin64EH.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
    M llvm/test/MC/ARM/seh-checks2.s
    M llvm/test/MC/AsmParser/directive_seh.s
    M llvm/test/MC/AsmParser/seh-directive-errors.s
    M llvm/test/MC/COFF/seh-unwindv2.s
    M llvm/test/MC/COFF/seh.s
    M llvm/test/tools/llvm-objdump/COFF/Inputs/win64-unwind.exe.coff-x86_64.asm

  Log Message:
  -----------
  [win] Replace the .seh_startchained and .sehendchained instructions with .seh_splitchained (#172895)

LLVM's existing support for chaining x64 Windows SEH frame infos is
broken. Windows requires that each frame info (including the parent) is
adjacent, but not overlapping, and the whole function is covered (i.e.,
each instruction maps to exactly one frame info). Therefore, having
start/end chaining pseudo instructions doesn't make any sense, as every
"end chain" pseudo would need a start pseudo immediately after it or be
at the end of function.

This change switches having a "split chain" pseudo instruction that ends
the current frame and starts a new chained frame.

Added a release note about the replacement - to my knowledge there is no
one actually using frame info chaining, so it is highly unlikely that it
will break any code.

Split off from #159206


  Commit: 7142687ab0b17fcf3038b2fd75a6072d9252bbf5
      https://github.com/llvm/llvm-project/commit/7142687ab0b17fcf3038b2fd75a6072d9252bbf5
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/CFGuard.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/test/CodeGen/X86/cfguard-checks.ll

  Log Message:
  -----------
  [win][x64] Guarantee shape of tail call to a control flow guard function (#174108)

For the purposes of Import Call Optimization, a tail call to a Control
Flow Guard function must always be lowered as `TAILJMPm64_REX`. This is
useful in general, as we know that the call will be handled via a fixup
rather than needing scratch registers for base+index.

This change introduces a new pseudo-instruction, `TCRETURN_CFG`,
specifically for the purposes of noting that there is a "tail-call
return" control flow guard function call, which is then always lowered
to `TAILJMPm64_REX` instead of relying on pattern matching.


  Commit: c3f761c52a69e7373aa3c3883af9aa73ca6f0e8e
      https://github.com/llvm/llvm-project/commit/c3f761c52a69e7373aa3c3883af9aa73ca6f0e8e
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  Nominate Endilll as Python bindings maintainer (#176416)

We have the python library bindings in Clang and Vlad has been doing all
of the work of a maintainer in terms of code reviews and answering
questions about the python bindings.


  Commit: 47f9e0ab2a0f4c4779fff2643a489efa605e48dc
      https://github.com/llvm/llvm-project/commit/47f9e0ab2a0f4c4779fff2643a489efa605e48dc
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithAndMathToAPFloat/ArithToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/MathToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.h
    M mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
    A mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation-vector.mlir
    M mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation.mlir

  Log Message:
  -----------
  [mlir][math] Add vector support for math-to-apfloat (#172715)

This PR adds vector type support to `math-to-apfloat`.


  Commit: eea41bb40461fc6f22ed0a84d17c1abb2d2fb93e
      https://github.com/llvm/llvm-project/commit/eea41bb40461fc6f22ed0a84d17c1abb2d2fb93e
  Author: David Stone <davidfromonline at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/BTF/BTFParser.h
    M llvm/lib/DebugInfo/BTF/BTFParser.cpp

  Log Message:
  -----------
  [llvm] Replace `OwningArrayRef` with `SmallVector` in `BTFParser` (#169124)

`OwningArrayRef` requires that the size and the capacity are the same.
This prevents reusing memory allocations unless the size happens to be
exactly the same (which is rare enough we don't even try). Switch to
`SmallVector` instead so that we're not repeatedly calling `new[]` and
`delete[]`.


  Commit: 584a5899653d90a218fb7ba4218ce039cd00d54e
      https://github.com/llvm/llvm-project/commit/584a5899653d90a218fb7ba4218ce039cd00d54e
  Author: David Stone <davidfromonline at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/Analysis/CloneDetection.h
    M clang/lib/Analysis/CloneDetection.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/SemaExpr.cpp

  Log Message:
  -----------
  [clang][NFC] `#include "clang/AST/StmtVisitor.h"` where necessary (#172538)


  Commit: 5239c5c168a70750581ea8066c0e0a49ac97b308
      https://github.com/llvm/llvm-project/commit/5239c5c168a70750581ea8066c0e0a49ac97b308
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp

  Log Message:
  -----------
  InstCombine: Fix duplicated code in SimplifyDemandedFPClass fabs handling (#176442)

2b03d68398819fe3608c680d6c25aa9d5a043c03 factored this into a function
and used from the new place, but forgot to delete the old code from
the original location.


  Commit: 18695b27d56508499000a5cedf7dd7694e83a57c
      https://github.com/llvm/llvm-project/commit/18695b27d56508499000a5cedf7dd7694e83a57c
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    A llvm/docs/AIToolPolicy.md
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/Reference.rst

  Log Message:
  -----------
  [docs] Add human-in-the-loop policy for tool-assisted contributions (#154441)

Over the course of 2025, we observed an increase in the volume of
LLM-assisted nuisance contributions to the project. Nuisance
contributions have always been an issue for open-source projects, but
until LLMs, we made do without a formal policy banning such
contributions. However, LLMs are here, so we are adopting this policy,
abbreviated as "human in the loop", which requires that every
contribution has a human author attesting to the value of that
contribution, and that it is high enough quality that it is worth the
time it takes to review the contribution.

This policy evolved over time based on community input from the
following Discourse threads and a few area team and LLVM project council
meetings:
* [Our AI policy vs code of conduct and vs
reality](https://discourse.llvm.org/t/our-ai-policy-vs-code-of-conduct-and-vs-reality/88300)
* [[RFC] LLVM AI tool policy: start small, no slop](https://discourse.llvm.org/t/rfc-llvm-ai-tool-policy-start-small-no-slop/88476)
* [[RFC] LLVM AI tool policy: human in the
loop](https://discourse.llvm.org/t/rfc-llvm-ai-tool-policy-human-in-the-loop/89159)

---------

Co-authored-by: Hubert Tong <hubert.reinterpretcast at gmail.com>
Co-authored-by: maflcko <6399679+maflcko at users.noreply.github.com>


  Commit: dd29183f33abb28d1efc14315409e8f43d06f5e7
      https://github.com/llvm/llvm-project/commit/dd29183f33abb28d1efc14315409e8f43d06f5e7
  Author: fbrv <Fabio.Baravalle at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/combine-smax.ll
    M llvm/test/CodeGen/X86/combine-smin.ll
    M llvm/test/CodeGen/X86/combine-umax.ll
    M llvm/test/CodeGen/X86/combine-umin.ll

  Log Message:
  -----------
  [DAG] Allow MIN/MAX signedness flip when operands are known-negative (#174469)

Extend the existing DAGCombine logic in visitIMINMAX so that signed and
unsigned MIN/MAX can be flipped not only when both operands are known
non-negative but also when both operands are known negative. This
replaces the old SignBitIsZero checks with computeKnownBits and explicit
tests for non-negative or negative operands while keeping all existing
legality and saturation gating in place. Add regression tests to cover
both the known-negative case and the known-non-negative case.

Fixes #174325


  Commit: a30120fb84c5dd49f79f9b7b270ee1ad591acf57
      https://github.com/llvm/llvm-project/commit/a30120fb84c5dd49f79f9b7b270ee1ad591acf57
  Author: Anshul Nigham <nigham at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86LoadValueInjectionRetHardening.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [NewPM] port x86-lvi-ret to new pass manager (#176242)


  Commit: 9b409e3651440c847dfa043683c587c9474eb801
      https://github.com/llvm/llvm-project/commit/9b409e3651440c847dfa043683c587c9474eb801
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/test/ELF/mips-mgot.s
    M lld/test/ELF/mips-tls-64.s
    M lld/test/ELF/mips-tls.s

  Log Message:
  -----------
  [ELF][Mips] Fix addend for preemptible static TLS

If the symbol is preemptible the addend should be 0, not our
definition's VA. Note that by using addAddendOnlyRelocIfNonPreemptible
the generic Elf_Rel code will ensure the VA is written out as the addend
if the symbol is non-preemptible, and so writeTo only needs to write out
the VA in the case that we don't call it (so long as we make sure to
call relocateAlloc to actually apply any such relocations).

Reviewers: MaskRay

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


  Commit: 10e1bd7ad066e4b0bbb8fe1bfa8bb23e8748fc0e
      https://github.com/llvm/llvm-project/commit/10e1bd7ad066e4b0bbb8fe1bfa8bb23e8748fc0e
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h

  Log Message:
  -----------
  [Support][NFC] Use default move constr/assign for DomTree (#176423)

Added in 5e10e21d28496ba40ccd385740d7d1b4bb1368e4, hopefully MSVC can
generate the correct code 11 years later? (If not, we probably have
other problems, too? Unfortunately, I couldn't find information on what
the actual problem was.)

The explicit move constructor/assignment are error-prone to
modifications, because it is easy to forget updating them when modifying
members.


  Commit: 09a4058474dfee09f031b9ef0e4872e75256c1c3
      https://github.com/llvm/llvm-project/commit/09a4058474dfee09f031b9ef0e4872e75256c1c3
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/lib/Parser/source.cpp
    A flang/test/Driver/input-from-stdin/debug-info-filename.f90

  Log Message:
  -----------
  [flang][debuginfo] Use <stdin> for file name when reading from stdin

Currently, the DIFile debuginfo nodes use "standard input" as the file
name when compiling with -g and reading input from stdin. This has been
changed to "<stdin>" for consistency with clang and gfortran.

Fixes #60288


  Commit: b318625b2e867c723b4447d061e80a5e74472035
      https://github.com/llvm/llvm-project/commit/b318625b2e867c723b4447d061e80a5e74472035
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst

  Log Message:
  -----------
  [NFC][NVPTX] Reformat NVPTXUsage to use 80 col width (#176425)


  Commit: 0ee7accf6610325c94cec5270b42f4160a4116fc
      https://github.com/llvm/llvm-project/commit/0ee7accf6610325c94cec5270b42f4160a4116fc
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp

  Log Message:
  -----------
  [clangd] Support `=default` in DefineOutline to find insertion point (#175618)

Since #128164, the DefineOutline tweak is looking for a good insertion
point by looking at where neighboring functions are defined. That
heuristic didn't yet handle `= default`. This commit adds support for
it.


  Commit: 725bb5b9feb690657d9dc69dfc55aeb1249b4721
      https://github.com/llvm/llvm-project/commit/725bb5b9feb690657d9dc69dfc55aeb1249b4721
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_ast_print.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_messages.cpp

  Log Message:
  -----------
  [OpenMP][Clang] Parsing/Sema support for `use_device_ptr(fb_preserve/fb_nullify)`. (2/4) (#170578)

Depends on #169603.
    
This is the `use_device_ptr` counterpart of #168905.
    
With OpenMP 6.1, a `fallback` modifier can be specified on the
`use_device_ptr` clause to control the behavior when a pointer lookup
fails, i.e. there is no device pointer to translate into.
    
The default is `fb_preserve` (i.e. retain the original pointer), while
`fb_nullify` means: use `nullptr` as the translated pointer.

Dependent PR: #173930.


  Commit: 42065cfd74dfd95916cc50cf4d324083585a9210
      https://github.com/llvm/llvm-project/commit/42065cfd74dfd95916cc50cf4d324083585a9210
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    R clang/test/Modules/pr149404-02.cppm
    R clang/test/Modules/pr172241.cppm

  Log Message:
  -----------
  Revert "[Serialization] Stop demote var definition as declaration" (#176441)

Reverts #172430 (c560f1cf03aa06c0bdd00c5a9b558c16d882af6f).

Causes some failures like `error: static assertion expression is not an
integral constant expression` and `error: substitution into constraint
expression resulted in a non-constant expression` in modules builds.
Repro TBD.


  Commit: 616af49f06001c9f338e5161e58ca60d66c5b476
      https://github.com/llvm/llvm-project/commit/616af49f06001c9f338e5161e58ca60d66c5b476
  Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/or-load.ll
    A llvm/test/Transforms/AggressiveInstCombine/AMDGPU/fold-loads-multiple-uses.ll
    M llvm/test/Transforms/AggressiveInstCombine/X86/or-load.ll

  Log Message:
  -----------
  [AggressiveInstCombine] Allow load folding for root inst with multiple uses. (#176101)

The load folding optimization was very conservative by requiring the
root OR instruction to have a single use. This prevented optimization
when to fold loads when only the root had multiple uses.

For example:
  %val = or i32 ...     ; Assembles 4 bytes to i32
  %use1 = call @foo(%val)
  %use2 = call @bar(%val)


  Commit: cbea5631a2641f716175a8e0f676df7ae5b3ac70
      https://github.com/llvm/llvm-project/commit/cbea5631a2641f716175a8e0f676df7ae5b3ac70
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/Transforms/IPO/ConstantMerge.cpp
    A llvm/test/Transforms/GlobalMerge/metadata1.ll
    A llvm/test/Transforms/GlobalMerge/metadata2.ll

  Log Message:
  -----------
  GlobalMerge: Do not merge globals with non-dbg metadata.

As noticed during the review of #149260, this transformation
is not necessarily correct for all metadata types.

Reviewers: efriedma-quic

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


  Commit: ec399ef172338e42642c8fe894dc753a2a34b98d
      https://github.com/llvm/llvm-project/commit/ec399ef172338e42642c8fe894dc753a2a34b98d
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithAndMathToAPFloat/CMakeLists.txt

  Log Message:
  -----------
  [mlir] fix math-to-apfloat after #172715 (#176462)


  Commit: 5e2f43bc0d9361d2b9c00a9812ad51978148c981
      https://github.com/llvm/llvm-project/commit/5e2f43bc0d9361d2b9c00a9812ad51978148c981
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/test/Integration/complex-div-to-llvm.f90

  Log Message:
  -----------
  [flang][AIX] update test to handle different alignments (NFC) (#176431)


  Commit: ae99a75f5eae70a463a7d1162fc3ed7ff34320f9
      https://github.com/llvm/llvm-project/commit/ae99a75f5eae70a463a7d1162fc3ed7ff34320f9
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/test/CodeGen/AArch64/seh-minimal-prologue-epilogue.ll

  Log Message:
  -----------
  [llvm][aarch64] MachO platforms do not use .seh_ (#176456)


  Commit: 2bcd2f2371655bfa6dc52a6c639a5a1284a37673
      https://github.com/llvm/llvm-project/commit/2bcd2f2371655bfa6dc52a6c639a5a1284a37673
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Track moved declarations to prevent false positives (#170007)

Prevent false positives in lifetime safety analysis when variables are
moved using `std::move`.

When a value is moved using `std::move`, ownership is transferred from
the original variable to another. The lifetime safety analysis was
previously generating false positives by warning about
use-after-lifetime when the original variable was destroyed after being
moved. This change prevents those false positives by tracking moved
declarations and exempting them from loan expiration checks.

- Added tracking for declarations that have been moved via `std::move`
in the `FactsGenerator` class
- Added a `MovedDecls` set to track moved declarations in a
flow-insensitive manner
- Implemented detection of `std::move` calls in `VisitCallExpr`
- Modified `handleLifetimeEnds` to skip loans for declarations that have
been moved
- Added a test case demonstrating that warnings are suppressed for moved
variables

```cpp
void silenced() {
  MyObj b;
  View v;
  {
    MyObj a;
    v = a;
    b = std::move(a); // No warning for 'a' being moved.
  }
  (void)v;
}
```

Fixes https://github.com/llvm/llvm-project/issues/167290
Fixes https://github.com/llvm/llvm-project/issues/175273


  Commit: 20428877097586987e9e807dfaadae846457605a
      https://github.com/llvm/llvm-project/commit/20428877097586987e9e807dfaadae846457605a
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/MIRLangRef.rst
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp

  Log Message:
  -----------
  Reland "[NFC][MI] Tidy Up RegState enum use (1/2)" (#176277)

This Change is to prepare to make RegState into an enum class. It:
- Updates documentation to match the order in the code.
- Brings the `get<>RegState` functions together and makes them
`constexpr`.
- Adopts the `get<>RegState` where RegStates were being chosen with
ternary operators in backend code.
- Introduces `hasRegState` to make querying RegState easier once it is
an enum class.
- Adopts `hasRegState` where equivalent was done with bitwise
arithmetic.
- Introduces `RegState::NoFlags`, which will be used for the lack of
flags.
- Documents that `0x1` is a reserved flag value used to detect if
someone is passing `true` instead of flags (due to implicit bool to
unsigned conversions).
- Updates two calls to `MachineInstrBuilder::addReg` which were passing
`false` to the flags operand, to no longer pass a value.
- Documents that `getRegState` seems to have forgotten a call to
`getEarlyClobberRegState`.

This PR relands llvm/llvm-project#176091 (commit
1d616cdca3aba9d22f120888bb6b09b75ca90b92) which was reverted in
llvm/llvm-project#176190 (commit
6309cd8668fc2ae589f156b23f86821f4ce5b7ea).


  Commit: 255af949a7591cf064af71a992deff06e67413ac
      https://github.com/llvm/llvm-project/commit/255af949a7591cf064af71a992deff06e67413ac
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/matrix-type-indexing.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Update indexed matrix elements individually (#176216)

Fixes #174629

This PR is similar to that of #169144 but for matrices.

When storing to a matrix element or matrix row, `insertelement`
instructions have been replaced by GEPs followed by stores to individual
matrix elements. There is no longer storing of the entire matrix to
memory all at once, thus avoiding data races when writing to independent
matrix elements from multiple threads.


  Commit: 4a4fa0a7307215565f8d73411b1d51dd979b22df
      https://github.com/llvm/llvm-project/commit/4a4fa0a7307215565f8d73411b1d51dd979b22df
  Author: Rohan Jacob-Rao <rohanjr at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [NFC][Clang][-Wunsafe-buffer-usage] Rename variable to upper camel case. (#176286)

Trivial renaming following the [style
guide](https://llvm.org/docs/CodingStandards.html#name-types-functions-variables-and-enumerators-properly).

This is mostly to familiarize myself with the workflow for contributing
to LLVM.


  Commit: e36ddff7a475bd18d68fbdaa6e4a8ad924f85490
      https://github.com/llvm/llvm-project/commit/e36ddff7a475bd18d68fbdaa6e4a8ad924f85490
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Add scalable check to SinkStoreInfo helper.

Bail out on scalable vectors in helper. Currently this is not causing
issues, but fixes a potential crash that would be exposed by a follow-up
change.

Test would exposes the issue in the future has been added in
8c5352cf3e14ec0c56f592091899d229de8436a7.


  Commit: 2282f60e6936478de32e500582c72497dd4c22f5
      https://github.com/llvm/llvm-project/commit/2282f60e6936478de32e500582c72497dd4c22f5
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    A lld/test/wasm/debug-weak-unused.s
    M lld/wasm/InputFiles.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Fix crash in debug info relocation against shared symbols (#176460)

When a weakly defined function is not include because its defined in
shared object we should use the tombstone value during relocation of
debug info.

Fixes: https://github.com/emscripten-core/emscripten/issues/26044


  Commit: 828261ebb83b351ba282b65c6b64179221e9ab56
      https://github.com/llvm/llvm-project/commit/828261ebb83b351ba282b65c6b64179221e9ab56
  Author: Stefan Weigl-Bosker <stefan at s00.xyz>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/arm64-clrsb.ll
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_print.txt
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_wo=0.5_print.txt
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/rv32p.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/rv64p.ll

  Log Message:
  -----------
  [GISel] Add G_CTLS Opcode and combines, lower to cls(w) (#175069)

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

- Added a G_CTLS opcode and some pattern matching. This is the
GlobalISel equivalent to
https://github.com/llvm/llvm-project/pull/173417
- Add legalization for aarch64 and riscv

```
// Folds (ctlz (xor x, (sra x, bitwidth-1))) -> (add (ctls x), 1). 
// Folds (ctlz (or (shl (xor x, (sra x, bitwidth-1)), 1), 1) -> (ctls x) (clang aarch64)
```


  Commit: 762a44f2c3cac98b8d3823936a620ea173cfef96
      https://github.com/llvm/llvm-project/commit/762a44f2c3cac98b8d3823936a620ea173cfef96
  Author: Max <mx at icj.me>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-in-static-sized-array.cpp

  Log Message:
  -----------
  [clang][Wunsafe-buffer-usage] Add -Wunsafe-buffer-usage-in-static-sized-array (#176466)

This PR adds support for toggling on/off warnings around static sized
arrays. This supports / addresses
https://github.com/llvm/llvm-project/issues/87284, for those who use
-fsanitize=array-bounds which inserts checks for fixed sized arrays
already.


  Commit: 6c496a1e5f8d79ac9d370d90a964010be6e16914
      https://github.com/llvm/llvm-project/commit/6c496a1e5f8d79ac9d370d90a964010be6e16914
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logbf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logbf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logbf128.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 logbf128 to Header Only. (#176234)

builds with both Clang and GCC 12.2.

Closes #175362.


  Commit: 37da38eb1ac00c6434d5a62af691cbf679e58c70
      https://github.com/llvm/llvm-project/commit/37da38eb1ac00c6434d5a62af691cbf679e58c70
  Author: Jiří Filek <52356396+fileho at users.noreply.github.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/rdrand-builtins.c

  Log Message:
  -----------
  [CIR][X86] Implement rdrand/rdseed builtins (#175439)

Add support for rdrand and rdseed builtins.

Part of #167765


  Commit: dac308c7d35fcef1b4267413dc040b1b7c4151ba
      https://github.com/llvm/llvm-project/commit/dac308c7d35fcef1b4267413dc040b1b7c4151ba
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logbf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logbf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logbf16.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 logbf16 to Header Only. (#176231)

builds with both Clang and GCC 12.2.

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


  Commit: 716b54784f1b52283285fb8597c35244bb8c2759
      https://github.com/llvm/llvm-project/commit/716b54784f1b52283285fb8597c35244bb8c2759
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logbf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logbf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logbf.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 logbf to Header Only. (#176222)

builds with both Clang and GCC 12.2.

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


  Commit: 074653aa5305e9ff68fe475e3528315be22157c0
      https://github.com/llvm/llvm-project/commit/074653aa5305e9ff68fe475e3528315be22157c0
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Process/wasm/ProcessWasm.cpp
    M lldb/source/Plugins/Process/wasm/ProcessWasm.h

  Log Message:
  -----------
  [lldb] Fix llvm_unreachable for invalid Wasm address (#176464)

We had an llvm_unreachable following a switch on the WasmAddress's type.
However, the type is encoded in a larger 64 bit address, and therefore
it's possible to create an invalid value that doesn't map back on one of
the enum types.

We could try to diagnose that in the wrapper, or treat all invalid types
the same. I took the latter approach because it makes it easier to show
the invalid type after the fact in an error message.

rdar://168314695


  Commit: fae5760fd1ae807a4b480bc0de47c21102146dd5
      https://github.com/llvm/llvm-project/commit/fae5760fd1ae807a4b480bc0de47c21102146dd5
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp

  Log Message:
  -----------
  [CIR] Upstream handling for member ptr function compare (#176029)

This adds handling for compare expressions involving member pointer to
functions.


  Commit: a3a8e82e883b9f0c778eedeacffb40339f3418d8
      https://github.com/llvm/llvm-project/commit/a3a8e82e883b9f0c778eedeacffb40339f3418d8
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    A clang/cmake/caches/Pico.cmake

  Log Message:
  -----------
  CMake cache file for building Pico SDK toolchain (#113267)

This cache file demonstrates how to build a complete baremetal
Clang/LLVM toolchain that can be used to build the Pico SDK.


  Commit: a84d74355e741ba5b9fd68eff24216d086de09f2
      https://github.com/llvm/llvm-project/commit/a84d74355e741ba5b9fd68eff24216d086de09f2
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
    M lldb/unittests/Instruction/RISCV/TestRISCVEmulator.cpp

  Log Message:
  -----------
  [lldb] Support both RISCV-32 and RISCV-64 in GetRegisterInfo (#176472)

`GetRegisterInfo` hardcodes to use `RegisterInfoPOSIX_riscv64` instead
of checking the triple to determine whether to use
`RegisterInfoPOSIX_riscv64` or `RegisterInfoPOSIX_riscv32`.

Someone put up a [PR](https://github.com/llvm/llvm-project/pull/175262)
for this, but seems to have removed their account and the associated PR
with it.

Fixes #175092


  Commit: 7950a88b04bfeb61d223951738d5d7901f245d01
      https://github.com/llvm/llvm-project/commit/7950a88b04bfeb61d223951738d5d7901f245d01
  Author: Argyrios Kyrtzidis <kyrtzidis at apple.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Jobserver.cpp

  Log Message:
  -----------
  [llvm/Support] Remove unnecessary includes from `Jobserver.cpp`, NFC (#176473)


  Commit: 08bcd7cb00d09f188e791be5821365b24fe58d92
      https://github.com/llvm/llvm-project/commit/08bcd7cb00d09f188e791be5821365b24fe58d92
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/hypotf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/hypotf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/hypotf.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 hypotf to Header Only. (#175679)

builds correctly with both Clang and GCC 12.2.

Closes #175338.


  Commit: da34f9bb45243d5338e6e0b69413e9e165470053
      https://github.com/llvm/llvm-project/commit/da34f9bb45243d5338e6e0b69413e9e165470053
  Author: Eli Friedman <efriedma at qti.qualcomm.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/test/CodeGen/AArch64/arm64-windows-calls.ll
    M llvm/test/CodeGen/AArch64/win64_vararg2.ll
    M llvm/test/CodeGen/AArch64/wineh-pac.ll
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair2.mir
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll

  Log Message:
  -----------
  [AArch64] Fix Windows prologue handling to pair more registers. (#170214)

Currently, there's code to suppress pairing, but we don't actually need
to suppress that; we just need to suppress the formation of
pre-decrement/post-increment instructions.

Pairing saves an instruction in some cases, and enables packed unwind in
some cases.


  Commit: bbafff175276cf78bf78481e759470c04a3b1fd8
      https://github.com/llvm/llvm-project/commit/bbafff175276cf78bf78481e759470c04a3b1fd8
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h

  Log Message:
  -----------
  [AMDGPU] NFC: Add a comment (#176435)


  Commit: 0f739e758129b0d475e73e1614bd9c40629111d4
      https://github.com/llvm/llvm-project/commit/0f739e758129b0d475e73e1614bd9c40629111d4
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Use lambda in fmaak/fmamk f16 folding. NFC (#176258)


  Commit: 997fdefa4c6da36f521d921a1292812498596bcd
      https://github.com/llvm/llvm-project/commit/997fdefa4c6da36f521d921a1292812498596bcd
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/llogbf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/llogbf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/llogbf.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 llogbf to Header Only. (#176494)

builds with both Clang and GCC 12.2.

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


  Commit: c70fc1a9d8e9f4d4f9afd3ff964d182aa52322cc
      https://github.com/llvm/llvm-project/commit/c70fc1a9d8e9f4d4f9afd3ff964d182aa52322cc
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    A llvm/test/CodeGen/X86/nocf_check_musttail.ll

  Log Message:
  -----------
  [X86] Separate sibcall checks from guaranteed TCO (#176479)

Rename IsEligibleForTailCallOptimization to isEligibleForSiblingCallOpt.
LLVM supports two other ways to bypass this logic: musttail and
ShouldGuaranteeTCO. The result of this function doesn't really control
tail call eligibility, and returning false from it is not sufficient to
block tail call emission. Rename it to clarify the code.

Move the calling convention match check, which is the only thing that
matters in the guaranteed TCO case, out of this sibcall eligibility
check.

Move the GOT early binding check into the sibcall eligibility check,
since it is bypassed in either guaranteed TCO case. When that [diff
landed](https://reviews.llvm.org/D9799), it did not have exceptions for
`musttail`, but later in 9ff2eb1ea596a the two guaranteed tail call
cases were made to override this check, forcing lazy binding, which I
agree is the right tradeoff.

Based on my reading of the code, it is now *impossible* for a `musttail`
call to not be emitted as a tail call in the x86 SDISel backend, the
only exception being the "cf-protection-branch" check, so I added a test
to cover that case.


  Commit: 6397207d613d003f6e6bc7f7ed06fba98a872d90
      https://github.com/llvm/llvm-project/commit/6397207d613d003f6e6bc7f7ed06fba98a872d90
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ilogbl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ilogbl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogbl.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 ilogbl to Header Only. (#176500)

builds with both Clang and GCC 12.2.

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


  Commit: 022888ec1c0b06ee68ca34c14257a11b85ac0105
      https://github.com/llvm/llvm-project/commit/022888ec1c0b06ee68ca34c14257a11b85ac0105
  Author: Anonmiraj <nabilmalek48 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fsqrtf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fsqrtf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fsqrtf128.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 fsqrtf128 to Header Only. (#175686)

builds correctly with both Clang and GCC 12.2.

Closes #175333.


  Commit: 1f9c53c6a35ecfdf81a4f80169e31860c5158d51
      https://github.com/llvm/llvm-project/commit/1f9c53c6a35ecfdf81a4f80169e31860c5158d51
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M flang/lib/Parser/program-parsers.cpp
    A flang/test/Semantics/cuf-proc-attr-error.cuf

  Log Message:
  -----------
  [flang][cuda] Emit better error when subprogram attribute is absent or bad (#176501)

this patch update the parser for CUDA Fortran subprogram attribute to
emit more precise error.

Instead of having error like: 

```
error: expected 'END'
      attributes(managed) integer function fooj()
      ^
```

The parser will emit: 
```
 expected DEVICE, GLOBAL, GRID_GLOBAL, or HOST attribute
  attributes(managed) integer function fooj()
             ^
```


  Commit: 8021b024fbe4882376a817fc2f668b653fb8a85f
      https://github.com/llvm/llvm-project/commit/8021b024fbe4882376a817fc2f668b653fb8a85f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/Expression.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Protocol/MCP/Server.cpp
    M lldb/source/Symbol/Function.cpp
    M llvm/include/llvm/Support/Error.h
    A llvm/include/llvm/Support/ErrorExtras.h
    M llvm/unittests/Support/ErrorTest.cpp

  Log Message:
  -----------
  [llvm][Support] Move llvm::createStringErrorV to a new ErrorExtras.h header (#176491)

Introducing `llvm::createStringErrorV` caused a `0.5%` compile-time
regression because it's an inline function in a core header. This moves
the API to a new header to prevent including this function in files that
don't need it.

Also includes the header in the source files that have been using
`createStringErrorV` (which currently is just LLDB).


  Commit: 56522e464877f0d299463afc4df3bc636ac6d4e4
      https://github.com/llvm/llvm-project/commit/56522e464877f0d299463afc4df3bc636ac6d4e4
  Author: Sterling-Augustine <saugustine at google.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M libc/test/src/strings/CMakeLists.txt
    A libc/test/src/strings/wide_read_memory_test.cpp

  Log Message:
  -----------
  Create a poor-developer's msan for libc wide read functions. (#170586)

Most libcs optimize functions like strlen by reading in chunks larger
than a single character. As part of "the implementation", they can
legally do this as long as they are careful not to read invalid memory.

However, such tricks prevents those functions from being tested under
the various sanitizers.

This PR creates a test framework that can report when one of these
functions read or write in an invalid way without using the sanitizers.


  Commit: f53c2e69d919ee3b44dd30f7a75ee25d55eab8a9
      https://github.com/llvm/llvm-project/commit/f53c2e69d919ee3b44dd30f7a75ee25d55eab8a9
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCall.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/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp

  Log Message:
  -----------
  [CIR] Upstream support for calling through method pointers (#176063)

This adds support to CIR for calling functions through pointer to method
pointers with the Itanium ABI for x86_64 targets. The ARM-specific
handling of method pointers is not-yet implemented.


  Commit: 719a8eb4e63f0cea2385001fc169c677b83cdaad
      https://github.com/llvm/llvm-project/commit/719a8eb4e63f0cea2385001fc169c677b83cdaad
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [RISCV][llvm] Remove outdated FIXME in calling convention. NFC (#176350)


  Commit: 483c6834a213249ca27dc3569dd0ddb040356b2f
      https://github.com/llvm/llvm-project/commit/483c6834a213249ca27dc3569dd0ddb040356b2f
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/Support/CodeGen.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp

  Log Message:
  -----------
  [NFC][win] Use an enum for the cfguard module flag (#176461)

Currently the `cfguard` module flag can be set to 1 (emit tables only,
no checks) or 2 (emit tables and checks).

This change formalizes that definition by moving these values into an
enum, instead of just having them documented in comments.

Split out from #176276


  Commit: 387e6e2b705309dd23633e4606735b464e1e1694
      https://github.com/llvm/llvm-project/commit/387e6e2b705309dd23633e4606735b464e1e1694
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/trivial-ctor-const-init.cpp

  Log Message:
  -----------
  [CIR] Upstream support co_return of values from co_await (#173174)

This PR adds support for returning the result of a `co_await` via
`co_return`. A new variable, `__coawait_resume_rval`, is introduced to
store the returned value.


  Commit: 02f9a268175cba743e741f1e000b9f4bf0b3a99a
      https://github.com/llvm/llvm-project/commit/02f9a268175cba743e741f1e000b9f4bf0b3a99a
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xchg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xor.mir

  Log Message:
  -----------
  [AMDGPU] Add legalization rules for atomic ops (#175253)

Implement rules for G_ATOMICRMW_{ADD, SUB, XCHG, AND, OR, XOR}.


  Commit: 17b01bbc67c484068e174d9e9a80089102bea0e8
      https://github.com/llvm/llvm-project/commit/17b01bbc67c484068e174d9e9a80089102bea0e8
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py

  Log Message:
  -----------
  [lldb] Enable chaining multiple scripted frame providers per thread (#172849)

This patch allows threads to have multiple SyntheticFrameProviderSP
instances that chain together sequentially. Each provider receives the
output of the previous provider as input, creating a transformation
pipeline.

It changes `Thread::m_frame_provider_sp` to a vector, adds provider
parameter to SyntheticStackFrameList to avoid calling back into
`Thread::GetFrameProvider()` during frame fetching, updated
`LoadScriptedFrameProvider()` to chain providers by wrapping each
previous provider's output in a `SyntheticStackFrameList` for the next
provider and finally, loads ALL matching providers in priority order
instead of just the first one.

The chaining works as follows:
```
  Real Unwinder Frames
      ↓
  Provider 1 (priority 10) → adds/transforms frames
      ↓
  Provider 2 (priority 20) → transforms Provider 1's output
      ↓
  Provider 3 (priority 30) → transforms Provider 2's output
      ↓
  Final frame list shown to user
  ```

This patch also adds a test for this (test_chained_frame_providers) to verify that 3 providers chain correctly: `AddFooFrameProvider`, `AddBarFrameProvider`, `AddBazFrameProvider`.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 86c2f5d67863254f1d5b2fcd10f402d8e2f99da4
      https://github.com/llvm/llvm-project/commit/86c2f5d67863254f1d5b2fcd10f402d8e2f99da4
  Author: Daniel Thornburgh <mysterymath at gmail.com>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/M68k/M68kInstrControl.td
    M llvm/test/MC/M68k/Control/Classes/MxCALL.s

  Log Message:
  -----------
  [M68k][MC] Add support for the two remaining 68000 JSR addr modes (#176532)

These are (d16,An) and (d8,An,Xn).


  Commit: aabad4d2be9f84805a6cc72787ec4b57514ad140
      https://github.com/llvm/llvm-project/commit/aabad4d2be9f84805a6cc72787ec4b57514ad140
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-01-16 (Fri, 16 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    A llvm/test/CodeGen/X86/tailcallpic.ll
    R llvm/test/CodeGen/X86/tailcallpic1.ll
    R llvm/test/CodeGen/X86/tailcallpic2.ll
    R llvm/test/CodeGen/X86/tailcallpic3.ll

  Log Message:
  -----------
  [X86] Enable sibcalls through 32-bit function pointers (#176518)

x86_32 is pretty dead, but I think this was an unintended consequence of
a change I reviewed and landed back in 2015 (80956a01425ee0), and the
code didn't match the comments, so it's worth fixing.

I added an ExternalSymbol case to cover sin at PLT, which has test
coverage.

I also combined the 3 relevant tests and made them use CHECK-LABEL, so
now this test uses LLVM test best practices circa 2018.


  Commit: 92ca5e82846f12dea1ada3af2662c136177f5d1a
      https://github.com/llvm/llvm-project/commit/92ca5e82846f12dea1ada3af2662c136177f5d1a
  Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-ir2vec/CMakeLists.txt
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
    R llvm/tools/llvm-ir2vec/llvm-ir2vec.h
    A llvm/tools/llvm-ir2vec/utils/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/utils/utils.cpp
    A llvm/tools/llvm-ir2vec/utils/utils.h

  Log Message:
  -----------
  [NFC][IR2Vec][MIR2Vec] llvm-ir2vec refactor - move Tool class implementations into a separate utils file (#174133)

# Refactoring Tool class implementation into a separate utils file
- Addresses https://github.com/llvm/llvm-project/issues/141839

## Summary

This patch extracts the core functionality of llvm-ir2vec's Tool classes
into a separate emb-tool class files to enable code reuse and future
extensibility. This is the next step toward adding Python bindings
interfaces to IR2Vec/MIR2Vec.

## Motivation

Currently, all llvm-ir2vec functionality is contained together. This
makes it difficult to:
- Reuse the embedding generation logic in other contexts
- Create language bindings (Python, etc.)
- Build additional tools on top of IR2Vec/MIR2Vec
- Maintain clear separation between CLI interface and core logic

## Changes

### New Library Structure

- `emb-tool.cpp`: Core embedding tool implementation
- `emb-tool.h`: Public API header
 
### Tool Refactoring

- **Updated `llvm-ir2vec.cpp`**:
  - Now uses `EmbTool` library instead of implementing logic directly
  - Simplified to focus on command-line argument parsing and I/O

## Benefits

1. **Separation of Concerns**: Clear boundary between core logic and CLI
interface
2. **Code Reusability**: Core functionality available for other uses
3. **Maintainability**: Single source of truth for embedding logic
4. **Future Extensibility**: Foundation for language bindings and
additional tools
5. **No Functional Changes**: Command-line tool behavior remains
identical

## Testing

- All existing llvm-ir2vec tests continue to pass
- No changes to tool behavior or output format
- Library properly links all required LLVM components

## Future Work

This refactoring enables:
- Python bindings (planned follow-up patch)
- Additional tools built on top of the library

---------


  Commit: f24eafa6556b8899b6ec6ccde95d97d4620d3fd1
      https://github.com/llvm/llvm-project/commit/f24eafa6556b8899b6ec6ccde95d97d4620d3fd1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp

  Log Message:
  -----------
  GlobalISel: Use LibcallLoweringInfo more in IRTranslator (#176412)


  Commit: 25e81394ce1cec0f7e6e46fb20d50a1ac1ff0083
      https://github.com/llvm/llvm-project/commit/25e81394ce1cec0f7e6e46fb20d50a1ac1ff0083
  Author: David Green <david.green at arm.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-copy-vector-crash.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-minmaxv.ll
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/combine-sdiv.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Generate WZR for constants < 32bits. (#176106)

I believe how this should work is that a GPR G_CONSTANT is legalized at
least in regbankselect, but this helps clean up some gisel
inefficiencies and prevent some regressions in #175810.


  Commit: 7cbd8d509ca0514ed9b0a4fc48e78f91dd46e46f
      https://github.com/llvm/llvm-project/commit/7cbd8d509ca0514ed9b0a4fc48e78f91dd46e46f
  Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-ir2vec/utils/CMakeLists.txt

  Log Message:
  -----------
  [NFC] Adding intrinsics_gen dependency to address emb_utils buildbot fixup (#176539)

Addressing build_bot failure
https://lab.llvm.org/buildbot/#/builders/10/builds/20789


  Commit: 0a9d480fadf07aaaee8ccfa26a2a2afa3f621499
      https://github.com/llvm/llvm-project/commit/0a9d480fadf07aaaee8ccfa26a2a2afa3f621499
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    A clang/test/CodeGen/LoongArch/targetattr-la32.c
    A clang/test/CodeGen/LoongArch/targetattr-la64.c
    R clang/test/CodeGen/LoongArch/targetattr.c
    M clang/test/Driver/loongarch-march.c
    M clang/test/Driver/loongarch-mtune.c
    M clang/test/Preprocessor/init-loongarch.c
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp
    M llvm/lib/TargetParser/LoongArchTargetParser.cpp
    M llvm/test/CodeGen/LoongArch/target-abi.ll

  Log Message:
  -----------
  [clang][LoongArch] Add support for LoongArch32 (#172619)

This patch adds support for LoongArch32, as introduced in
la-toolchain-conventions v1.2.

Co-authored-by: Sun Haiyong <sunhaiyong at zdbr.net>
Link:
https://github.com/loongson/la-toolchain-conventions/releases/tag/releases%2Fv1.2
Link:
https://gcc.gnu.org/pipermail/gcc-patches/2025-December/703312.html


  Commit: 0d481bf0b9523b5089d70b561dafa5e80615178f
      https://github.com/llvm/llvm-project/commit/0d481bf0b9523b5089d70b561dafa5e80615178f
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryBuilder.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryExtractor.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/TUSummary/ExtractorRegistry.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockTUSummaryBuilder.h
    A clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
    M llvm/include/llvm/Support/Registry.h

  Log Message:
  -----------
  [clang][ssaf] Add the TUSummaryExtractorRegistry (#173290)

This patch adds the TUSummaryExtractorRegistry for plugging in custom
summary extractors.
This also adds a fake TUSummaryBuilder to observe the side effects of
inserting into the registry.
The original TUSummaryBuilder class will be used to create EntityIDs and
to map those to summary "facts" in the shape of "TUSummaryData" objects,
but that part is not yet upstreamed.
The important point is that TUSummaryBuilders have a use beyond just testing.

---------

Co-authored-by: Jan Korous <jkorous at apple.com>


  Commit: 6b86e24ec1785ab13bbc1e136a85537460b15fb2
      https://github.com/llvm/llvm-project/commit/6b86e24ec1785ab13bbc1e136a85537460b15fb2
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    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][SIInsertWaitcnt] Address review feedback for waitcnt profiling expansion (#175922)


  Commit: 9696c8bd620890387b258a116b9f244d91454627
      https://github.com/llvm/llvm-project/commit/9696c8bd620890387b258a116b9f244d91454627
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/pr176548.ll

  Log Message:
  -----------
  [InstCombine] Bail out on intrinsics with struct return types (#176556)

After https://github.com/llvm/llvm-project/pull/174835, overflow
intrinsics can be vectorized. But `foldShuffledIntrinsicOperands`
doesn't support shuffling vectors inside the struct return value.

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


  Commit: b0892615622a0799afda17ff04604672a69c855d
      https://github.com/llvm/llvm-project/commit/b0892615622a0799afda17ff04604672a69c855d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [X86] clmul.ll - remove unused SSE checks (#176568)


  Commit: dc3a902abed72c58577950cc5c909d7670e4caa8
      https://github.com/llvm/llvm-project/commit/dc3a902abed72c58577950cc5c909d7670e4caa8
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_enums.py
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Use existing AvailabilityKind enum for code completion availability (#160296)

This adresses point 4 from #156680. This is a necessary step before
`CompletionChunk.Kind` can be removed.

The `ChunkCompletion.Kind` implements `__str__` and `__repr__`
differently from our other enum classes. I have adapted the `__repr__`
of `CompletionString` to stringify the availability of the chunk
differently so that it still looks the same as before.

Also introduce a temporary `AvailabilityKindCompat` to ensure that
`__str__` returns the same format, while also leaving a deprecation
warning that this will be removed in a future release.

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: 1978b15e0c3bf1dc67501fbf4ecd352aaa2fa10c
      https://github.com/llvm/llvm-project/commit/1978b15e0c3bf1dc67501fbf4ecd352aaa2fa10c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/clmul-x86.ll

  Log Message:
  -----------
  [X86] Add support for llvm.clmul.i64 on 32-bit targets (#176449)

Add ReplaceNodeResults expansion for llvm.clmul.i64 on 32-bit x86
targets


  Commit: ad24d2e9a5a9ea33dce43bf4223cd1ccad8fdcc9
      https://github.com/llvm/llvm-project/commit/ad24d2e9a5a9ea33dce43bf4223cd1ccad8fdcc9
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/Parser/cxx2b-lambdas.cpp

  Log Message:
  -----------
  [clang] Don't assert on paren-less lambdas with dependent return type (#176296)

The initial implementation of C++23 style lambdas without parameter
lists, 0620e6f4b76a9, removed `DeclLoc`, which was used to intitialize
`DeclEndLoc`.

This code was then moved around a bit in behavior-preserving ways in
https://reviews.llvm.org/D124351 and 2eb1e75f42d7e09e.

If a lambda has no parentheses, no exception-specification,
attribute-specifier, *and* a decltype() return type (which leads to
`ParseTrailingReturnType` returning a range where
`Range.getEnd().isValid()` is false), then we no longer set a valid
`DeclEndLoc`. Fix this by restoring `DeclLoc` and using it as it was
used before 0620e6f4b76a9.

Fixes #176256.


  Commit: 4bc2e4b4c13c1f73ef655d17b2f7ca30589610b7
      https://github.com/llvm/llvm-project/commit/4bc2e4b4c13c1f73ef655d17b2f7ca30589610b7
  Author: Manasij Mukherjee <manasijm at nvidia.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-add.ll

  Log Message:
  -----------
  [InstCombine] Add new pattern to foldICmpAddConstant (#175876)

icmp ult (add nuw X, (lshr A, ShAmtC)), C --> icmp ult A, C 
when C <= (1 << ShAmtC)
Pattern found in ffmpeg according to the report

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

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


  Commit: d1304b635bb66b08c9556ef650410517fc486eab
      https://github.com/llvm/llvm-project/commit/d1304b635bb66b08c9556ef650410517fc486eab
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [NFC][AArch64] Allocate AArch64Subtarget on the heap instead of stack (#176488)


  Commit: a6c075eb65a728ff7437d6145882635e5ef0025b
      https://github.com/llvm/llvm-project/commit/a6c075eb65a728ff7437d6145882635e5ef0025b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/utils/BUILD.gn

  Log Message:
  -----------
  [gn] port 92ca5e82846f (llvm-ir2vec utils lib)


  Commit: 70e6e17675658bfe86109ce9a8383c9ee0c278b6
      https://github.com/llvm/llvm-project/commit/70e6e17675658bfe86109ce9a8383c9ee0c278b6
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAlignment.cpp
    M llvm/test/Transforms/InferAlignment/ptrtoint.ll

  Log Message:
  -----------
  [InferAlign] Eliminate trunc ptr to log2(align) pattern (#176562)

Fold trunc ptrtoint/ptrtoaddr to N -> 0 when all N bits are zero due to
alignment.

To Avoid regression due to icmp_ne(and(x,1),0) -> trunc(x) fold
https://github.com/llvm/llvm-project/issues/172888

Proof: https://alive2.llvm.org/ce/z/ZS-QJL


  Commit: a51eab9492c9d79f5717975bfa659d91e27985a3
      https://github.com/llvm/llvm-project/commit/a51eab9492c9d79f5717975bfa659d91e27985a3
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp

  Log Message:
  -----------
  [mlir][memref] Add a `ViewOp::getMixedSizes` (#176561)

This PR adds a useful `getMixedSizes` method for memref.view.


  Commit: 010805988cb2df5c06d742f2cb13347f1208113c
      https://github.com/llvm/llvm-project/commit/010805988cb2df5c06d742f2cb13347f1208113c
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0d481bf0b952


  Commit: 459990dcf7d4afc9d47dcae63a287bd7682b9a17
      https://github.com/llvm/llvm-project/commit/459990dcf7d4afc9d47dcae63a287bd7682b9a17
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll

  Log Message:
  -----------
   [VPlan] Replace PhiR operand of ComputeFindIVResult with VPIRFlags. #174026  (#175461)

Replace the Phi recipe operand of ComputeFindIVResult with VPIRFlags,
building on top of https://github.com/llvm/llvm-project/pull/174026.

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


  Commit: 59e855729ddb6c4c81842cd20efdf0aee73e306a
      https://github.com/llvm/llvm-project/commit/59e855729ddb6c4c81842cd20efdf0aee73e306a
  Author: David Green <david.green at arm.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
    M llvm/test/Analysis/CostModel/AArch64/arith-widening.ll
    M llvm/test/Analysis/CostModel/AArch64/cast.ll
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AArch64/cttz_elts.ll
    M llvm/test/Analysis/CostModel/AArch64/fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/fp-conversions-odd-vector-types.ll
    M llvm/test/Analysis/CostModel/AArch64/masked_ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/no-sve-no-neon.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fpext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptrunc.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-itofp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-trunc.ll
    M llvm/test/Analysis/CostModel/AArch64/vector-select.ll

  Log Message:
  -----------
  [AArch64] Remove AdjustCost from getCastInstrCost. (#143073)

This adds costsize (and latency / code-lat) costs for AArch64's
getCastInstr. This mostly affects how much unrolling is performed, and
helps bring the codesize cost in line with the number of instructions we
generate.


  Commit: 421d50b5bf806a39c204bd468cab57e32c95233b
      https://github.com/llvm/llvm-project/commit/421d50b5bf806a39c204bd468cab57e32c95233b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/find-last.ll

  Log Message:
  -----------
  [LV] Add additional tests for miscompile caused by 2abd6d6d7a.

Add tests showing mis-compiles caused by 2abd6d6d7a (#158088).


  Commit: 2ba7f11bce7f9c3cc4563524b5fbf7e664aa8862
      https://github.com/llvm/llvm-project/commit/2ba7f11bce7f9c3cc4563524b5fbf7e664aa8862
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M flang/include/flang/Lower/DirectivesCommon.h
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake] Enable warnings for PCH (#176566)

CMake unfortunately disables this by default...


  Commit: 0ece3574d28d36ef1ed8d2344538ed782bd6111c
      https://github.com/llvm/llvm-project/commit/0ece3574d28d36ef1ed8d2344538ed782bd6111c
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-binaries: Pass user-token to upload-release-artifact (#176410)

This is necessary in order to be ablet to upload the artifact and was
omitted from a8ccd42ab23af6848929a638cd6b099953c7e491.


  Commit: 048589eb92d0a2a5c20fef7ff9adc210c4160025
      https://github.com/llvm/llvm-project/commit/048589eb92d0a2a5c20fef7ff9adc210c4160025
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  workflows/upload-release-artifact: Fix spelling error in yaml tag (#176447)


  Commit: 1a208185b99e7352e41ac9d249a285f15421796d
      https://github.com/llvm/llvm-project/commit/1a208185b99e7352e41ac9d249a285f15421796d
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M libc/hdr/CMakeLists.txt

  Log Message:
  -----------
  [libc][CMake] Add dependency on ELF headers for elf_proxy target (#176557)

Fixes parallel build problem for check-libc target where headers are
generated after they are needed. I think this was likely caused by
https://github.com/llvm/llvm-project/pull/172766.


  Commit: dae679d5c6e62d4bb4d6bc5c599497d5146fbbc4
      https://github.com/llvm/llvm-project/commit/dae679d5c6e62d4bb4d6bc5c599497d5146fbbc4
  Author: Teja Alaghari <teja.alaghari at amd.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp

  Log Message:
  -----------
  [TwoAddressInstruction][NPM] Conditionally preserve SlotIndexes in NPM (#173536)

In the New PM, `SlotIndexesAnalysis` should only be preserved when
`LiveIntervals` was cached and available, as `SlotIndexes` are only
maintained when `LiveIntervals` analysis is available.

This fixes potential stale `SlotIndexes` issues when running with NPM
where `LiveIntervals` analysis wasn't requested by prior passes.


  Commit: 5995fe951f5771a0853bed441313d24cbfaca316
      https://github.com/llvm/llvm-project/commit/5995fe951f5771a0853bed441313d24cbfaca316
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/test/Transforms/LoopVectorize/find-last.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp.ll

  Log Message:
  -----------
  [VPlan] Normalize selects to always select the data op when cond is true.

Fix a miscompile in the FindLast handling by normalizing selects
with the phi node as the first op to ones that select the data value
when the condition is true, by swapping operands and inverting the
condition.

This should ensure correct codegen for both cases.

Select normalization:
https://alive2.llvm.org/ce/z/yFdivK

Fixes a miscompile reported for 2abd6d6d7ac (#158088).


  Commit: 6f26b1c92d50c993a1cb5bbef587d5c0b6d90149
      https://github.com/llvm/llvm-project/commit/6f26b1c92d50c993a1cb5bbef587d5c0b6d90149
  Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix build failure caused by tools/llvm-ir2vec/*.h not found (#176573)

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

cc @nishant-sachdeva


  Commit: 585efb4c74c865b548876abc594939c40d262f6e
      https://github.com/llvm/llvm-project/commit/585efb4c74c865b548876abc594939c40d262f6e
  Author: Nick Kreeger <nick.kreeger at microsoft.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/VerificationUtils.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Utils/VerificationUtils.cpp
    M mlir/test/Dialect/Bufferization/invalid.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][Utils] Add verifyRanksMatch helper (NFC) (#175880)

This change builds on https://github.com/llvm/llvm-project/pull/174336,
which introduced shared VerificationUtils with an initial
verifyDynamicDimensionCount() method.

This patch adds a new verifyRanksMatch() verification utility that
checks if two shaped types have matching ranks and emits consistent
error messages. The utility is applied to several ops across multiple
MLIR dialects.

---------

Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>


  Commit: ae425ab913afc3f7a8326dfa0b06bc46746b2cc7
      https://github.com/llvm/llvm-project/commit/ae425ab913afc3f7a8326dfa0b06bc46746b2cc7
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [mlir][nfc] Fix function definition names post #175880 (#176586)

Ensure that the input argument names for `verifyRanksMatch` in the
function definition match those in the declaration.


  Commit: 284ef1b4acff8d1d9b962a5cd0497fc9255b52cf
      https://github.com/llvm/llvm-project/commit/284ef1b4acff8d1d9b962a5cd0497fc9255b52cf
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/MachineCSE.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/test/Transforms/JumpThreading/domtree-updates.ll

  Log Message:
  -----------
  [Support][NFCI] Store DomTree children as linked list (#176409)

Reduce the size of a DomTreeNodeBase from 80 to 56 bytes by not storing
the children in a SmallVector. Instead, store children as forward-linked
list. This also avoids extra allocations for nodes with many children.
Additionally, DomTreeNodeBase is now trivially destructible.

A lot of code depends on the order of nodes in the dominator tree, so
make sure that the order is the same when inserting nodes. (Not having
to do this would save 8 bytes per node.)

NewGVN uses the order of nodes in the dominator tree in a way that is
not entirely clear to me (https://reviews.llvm.org/D28129). I kept the
semantics as, but now this is the only external user of
addChild/removeChild, which actually should be private.

https://llvm-compile-time-tracker.com/compare.php?from=263802c56b4db3fc9b6ed9fd313499cb03ca44da&to=43e0c0c5b663b3a4067252fc0addbaccefd0014d&stat=instructions:u


  Commit: 1c4e03aa2619339248c77b0f0ebd564e766415ef
      https://github.com/llvm/llvm-project/commit/1c4e03aa2619339248c77b0f0ebd564e766415ef
  Author: Anshul Nigham <nigham at google.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86ReturnThunks.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/attr-function-return.mir

  Log Message:
  -----------
  [NewPM] port x86-return-thunks to new pass manager (#176226)

Test: https://gist.github.com/nigham/f430f76b06478449e0d228c88f9db8ff


  Commit: ea3a965eb192f10b4a7de9f0262f8f6f86067bb7
      https://github.com/llvm/llvm-project/commit/ea3a965eb192f10b4a7de9f0262f8f6f86067bb7
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86LoadValueInjectionRetHardening.cpp
    M llvm/lib/Target/X86/X86ReturnThunks.cpp
    M llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp

  Log Message:
  -----------
  [X86][NewPM] Cleanup some minor issues in recently ported passes

* Ensure passes implemented as single functions are marked as static to
  enforce internal linkage.
* Avoid the use of temporary variables to hold pass output status that
  only have one user/do not change any ordering guarantees.


  Commit: 694c4d6539cc1db500031f8c5612fa0a77a407fc
      https://github.com/llvm/llvm-project/commit/694c4d6539cc1db500031f8c5612fa0a77a407fc
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang/docs/analyzer/checkers.rst
    A clang/include/clang/Analysis/AnnexKDetection.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    A clang/lib/Analysis/AnnexKDetection.cpp
    M clang/lib/Analysis/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/analyzer-config.c
    A clang/test/Analysis/security-deprecated-buffer-handling-report-modes.c

  Log Message:
  -----------
  [clang][analyzer] Add ReportInC99AndEarlier option to DeprecatedOrUnsafeBuf… (#168704)

…ferHandling checker

The checker may report warnings for deprecated buffer handling functions
(memcpy, memset, memmove, etc.) even when not compiling with C11
standard if the new option "ReportInC99AndEarlier" is set to true.

These functions are deprecated in C11, but may still be problematic in
earlier C standards.


  Commit: 2070646c2e427ed65cad6d23547fc10980f318ac
      https://github.com/llvm/llvm-project/commit/2070646c2e427ed65cad6d23547fc10980f318ac
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [X86][NewPM] Use -NEXT FileCheck suffix for NPM test (#176592)

Otherwise when someone adds a pass to the pipeline the test still
passes.


  Commit: f8538803004d9c62037edceb745f6f3387b5d045
      https://github.com/llvm/llvm-project/commit/f8538803004d9c62037edceb745f6f3387b5d045
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M .ci/buildbot/worker.py
    A offload/ci/.gitignore
    A offload/ci/openmp-offload-amdgpu-clang-flang.py
    A offload/ci/openmp-offload-amdgpu-runtime.py

  Log Message:
  -----------
  [Offload][CI] Convert openmp-offload-amdgpu staging bots to ScriptedBuilder (#174991)

Convert the first AMDGPU buildbots to use the ScriptedBuilder introduced
llvm-zorg. For the motivation, see
https://github.com/llvm/llvm-zorg/pull/648.

Since the production buildbot still needs to be restarted for
ScriptedBuilder to work, only convert the builders that are currently in
staging for now. These are:

 * openmp-offload-amdgpu-runtime
 * openmp-offload-amdgpu-clang-flang

Both of them happen to be OpenMPBuilder.getOpenMPCMakeBuildFactory-based
builders before this change. They also set an environment variable that
the previous ScriptedBuilder did not, so we are adding support.

The corresponding llvm-zorg change is
https://github.com/llvm/llvm-zorg/pull/697.


  Commit: ec080ab8bdc66808b0b7bba605b49103f1c82d0a
      https://github.com/llvm/llvm-project/commit/ec080ab8bdc66808b0b7bba605b49103f1c82d0a
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh

  Log Message:
  -----------
  [CI] Disable precompiled headers in pre-commit CI (#176563)

Spliced out from #176420 to make sure that CI is fine without PCH, which
are currently used by Flang.


  Commit: 1c6d603676adb57b71e7823557c92779309736dd
      https://github.com/llvm/llvm-project/commit/1c6d603676adb57b71e7823557c92779309736dd
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/package.json

  Log Message:
  -----------
  [mlir][vscode] Add actions for publishing to openvsx. (#176593)


  Commit: 811fb223af2b3e2d68c99b346f4b75dcf3de3417
      https://github.com/llvm/llvm-project/commit/811fb223af2b3e2d68c99b346f4b75dcf3de3417
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h

  Log Message:
  -----------
  [WebAssembly] Mark extract.last.active as having invalid cost.

Currently the WebAssembly backend crashes when trying to lower some
extract.last.active intrinsic calls. Mark their cost as invalid
temporarily, to avoid them being introduced by the loop
vectorizer after 2abd6d6d7ac (#158088).


  Commit: 123acb24da31a378224994fcfa373f8008111892
      https://github.com/llvm/llvm-project/commit/123acb24da31a378224994fcfa373f8008111892
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll

  Log Message:
  -----------
  [LV] Add missing coverage for LV cost model code paths.

Add a set of tests that expose crashes with some upcoming and pending
patches.


  Commit: f316a39f6bfe486109b9bbac8f9aeadf18829cc1
      https://github.com/llvm/llvm-project/commit/f316a39f6bfe486109b9bbac8f9aeadf18829cc1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 694c4d6539cc


  Commit: f64b69b60559183022165cc3acad8a6c7cdacbe2
      https://github.com/llvm/llvm-project/commit/f64b69b60559183022165cc3acad8a6c7cdacbe2
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/pdll-grammar.json

  Log Message:
  -----------
  [mlir][vscode] Fix PDLL grammar character class regex (#176601)

The character class [aA-zZ_0-9] incorrectly matches characters between
ASCII 90-97 (Z-a range), which includes: [ \ ] ^ _ `. This should be
[a-zA-Z_0-9] for proper identifier matching.


  Commit: d5e14afb7879853acf8f00429520728791cc934d
      https://github.com/llvm/llvm-project/commit/d5e14afb7879853acf8f00429520728791cc934d
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/language-configuration.json
    M mlir/utils/vscode/package.json

  Log Message:
  -----------
  [mlir][vscode] Add angle bracket support to MLIR language configuration (#176602)

Add angle brackets (<>) to brackets, autoClosingPairs, and
surroundingPairs for better editing of types like tensor<3xf32>. Also
add colorizedBracketPairs for visual distinction between nested bracket
types.


  Commit: 17ff9b3c67ab62f77b2dd5cba98fa0011f14d9a2
      https://github.com/llvm/llvm-project/commit/17ff9b3c67ab62f77b2dd5cba98fa0011f14d9a2
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang/docs/analyzer/checkers.rst
    R clang/include/clang/Analysis/AnnexKDetection.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    R clang/lib/Analysis/AnnexKDetection.cpp
    M clang/lib/Analysis/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/analyzer-config.c
    R clang/test/Analysis/security-deprecated-buffer-handling-report-modes.c

  Log Message:
  -----------
  Revert "[clang][analyzer] Add ReportInC99AndEarlier option to DeprecatedOrUnsafeBuf…" (#176603)

Reverts llvm/llvm-project#168704
Checking what causes the clang-bolt buildbot failure.


  Commit: 462673a378bd2267cfa61c34473061e996164832
      https://github.com/llvm/llvm-project/commit/462673a378bd2267cfa61c34473061e996164832
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/package.json

  Log Message:
  -----------
  [mlir][vscode] Update dev dependencies (#176604)

Update to match vscode-clangd.


  Commit: 676b2925f9f0a4b075bac2bd84b37aabedf62429
      https://github.com/llvm/llvm-project/commit/676b2925f9f0a4b075bac2bd84b37aabedf62429
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/package.json

  Log Message:
  -----------
  [mlir][vscode] Update engine (#176605)


  Commit: b8e3276310a80f636c6c6f3dc7d473438aed8767
      https://github.com/llvm/llvm-project/commit/b8e3276310a80f636c6c6f3dc7d473438aed8767
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/package-lock.json

  Log Message:
  -----------
  [mlir][vscode] Update lock file to match (#176608)


  Commit: d3dad646717af63c5aa39ac5ff2a7b7261fdd66e
      https://github.com/llvm/llvm-project/commit/d3dad646717af63c5aa39ac5ff2a7b7261fdd66e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 17ff9b3c67ab


  Commit: 49cd8429e5802b0827023e0776268548da5dfd20
      https://github.com/llvm/llvm-project/commit/49cd8429e5802b0827023e0776268548da5dfd20
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M mlir/utils/vscode/package-lock.json

  Log Message:
  -----------
  [mlir][vscode] Remove resolved from lock file (#176611)


  Commit: 739e997c3e7ba4cc8f467d61d26ae64e60e81d70
      https://github.com/llvm/llvm-project/commit/739e997c3e7ba4cc8f467d61d26ae64e60e81d70
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [libc] Remove ballot on slab find (#176606)

Summary:
This negatively impacts performance, while the other changes in the
initial PR slightly improved it. This was originally done to make Volta
independent thread scheduling work, but that doesn't seem to work
correctly all the time either so we should make this faster.


  Commit: 38be580aeef2fe3adf50b24854f39dad4a45c283
      https://github.com/llvm/llvm-project/commit/38be580aeef2fe3adf50b24854f39dad4a45c283
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-binaries: Fix attestation artifact name (#176417)

We were contructing the attestation artifact name using the arch and the
OS of the current runner instead of using the runner that the builds
were done on. This led to a conflict in artifact names between all the
release binary jobs.


  Commit: b0eddb4256a6e584a1779d5901676b94d572fef3
      https://github.com/llvm/llvm-project/commit/b0eddb4256a6e584a1779d5901676b94d572fef3
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-binaries: Run this job once a week to catch regressions (#176008)

This will increase the chances that we can have this job working for the
first release candidate.


  Commit: 5b91175ad8c0b6c67aecb35487dfd84e3fc0fff1
      https://github.com/llvm/llvm-project/commit/5b91175ad8c0b6c67aecb35487dfd84e3fc0fff1
  Author: Rohan Jacob-Rao <rohanjr at google.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst

  Log Message:
  -----------
  [NFC][clang-tidy] Update documentation for StatusOr check. (#176498)

Specifically:
1. Avoid the "or" suffix for variable names per
[abseil.io/tips/181](https://abseil.io/tips/181)
2. Replace DCHECK with CHECK which works in non-debug mode
3. Suggest init-capture in workaround for lambda captures
4. Reduce one line length to satisfy `doc8`


  Commit: 74379c2d442b86c2c057f469b8531ef194aec3fb
      https://github.com/llvm/llvm-project/commit/74379c2d442b86c2c057f469b8531ef194aec3fb
  Author: David Stone <davidfromonline at gmail.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Basic/LLVM.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/CGData/CGDataPatchItem.h
    M llvm/include/llvm/CodeGen/PBQP/Math.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  [llvm][clang] Remove `llvm::OwningArrayRef` (#169126)

`OwningArrayRef` has several problems.

The naming is strange: `ArrayRef` is specifically a non-owning view, so
the name means "owning non-owning view".

It has a const-correctness bug that is inherent to the interface.
`OwningArrayRef<T>` publicly derives from `MutableArrayRef<T>`. This
means that the following code compiles:

```c++
void const_incorrect(llvm::OwningArrayRef<int> const a) {
	a[0] = 5;
}
```

It's surprising for a non-reference type to allow modification of its
elements even when it's declared `const`. However, the problems from
this inheritance (which ultimately stem from the same issue as the weird
name) are even worse. The following function compiles without warning
but corrupts memory when called:

```c++
void memory_corruption(llvm::OwningArrayRef<int> a) {
	a.consume_front();
}
```

This happens because `MutableArrayRef::consume_front` modifies the
internal data pointer to advance the referenced array forward. That's
not an issue for `MutableArrayRef` because it's just a view. It is an
issue for `OwningArrayRef` because that pointer is passed as the
argument to `delete[]`, so when it's modified by advancing it forward it
ceases to be valid to `delete[]`. From there, undefined behavior occurs.

It is less convenient than `llvm::SmallVector` for construction. By
combining the `size` and the `capacity` together without going through
`std::allocator` to get memory, it's not possible to fill in data with
the correct value to begin with. Instead, the user must construct an
`OwningArrayRef` of the appropriate size, then fill in the data. This
has one of two consequences:

1. If `T` is a class type, we have to first default construct all of the
elements when we construct `OwningArrayRef` and then in a second pass we
can assign to those elements to give what we want. This wastes time and
for some classes is not possible.
2. If `T` is a built-in type, the data starts out uninitialized. This
easily forgotten step means we access uninitialized memory.

Using `llvm::SmallVector`, by constrast, has well-known constructors
that can fill in the data that we actually want on construction.

`OwningArrayRef` has slightly different performance characteristics than
`llvm::SmallVector`, but the difference is minimal.

The first difference is a theoretical negative for `OwningArrayRef`: by
implementing in terms of `new[]` and `delete[]`, the implementation has
less room to optimize these calls. However, I say this is theoretical
because for clang, at least, the extra freedom of optimization given to
`std::allocator` is not yet taken advantage of (see
https://github.com/llvm/llvm-project/issues/68365)

The second difference is slightly in favor of `OwningArrayRef`:
`sizeof(llvm::SmallVector<T>) == sizeof(void *) * 3` on pretty much any
implementation, whereas `sizeof(OwningArrayRef) == sizeof(void *) * 2`
which seems like a win. However, this is just a misdirection of the
accounting costs: array-new sticks bookkeeping information in the
allocated storage. There are some cases where this is beneficial to
reduce stack usage, but that minor benefit doesn't seem worth the costs.
If we actually need that optimization, we'd be better served by writing
a `DynamicArray` type that implements a full vector-like feature set
(except for operations that change the size of the container) while
allocating through `std::allocator` to avoid the pitfalls outlined
earlier.


  Commit: 4c49144a42eb1927d34b77c77f0722a97930d296
      https://github.com/llvm/llvm-project/commit/4c49144a42eb1927d34b77c77f0722a97930d296
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/canonicalize.mlir

  Log Message:
  -----------
  [mlir][memref] Refactor `ViewOpShapeFolder` (#176567)

This PR makes the following changes to ViewOpShapeFolder:
- Add comments for `ViewOpShapeFolder`.
- Drop the redundant offset check.
- Simplify the implementation by introducing
`foldDynamicToStaticDimSizes`.
- Add missing test coverage.


  Commit: 0a7cafc51db6895f2e00eb47ee6e08d587735f7e
      https://github.com/llvm/llvm-project/commit/0a7cafc51db6895f2e00eb47ee6e08d587735f7e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Remove temporary vector from FactorScope. NFC (#176547)

Operate directly on the vector in the ScopeMatcher.


  Commit: 5ff8d3add1a231aea3a3ee4307930b3aaa31c643
      https://github.com/llvm/llvm-project/commit/5ff8d3add1a231aea3a3ee4307930b3aaa31c643
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Print MCRegister::NoRegister instead of 0 in generated isel table. NFC (#176295)


  Commit: e8a0b40d6c4c36329fb4ff66a0aa5fee40a3d4df
      https://github.com/llvm/llvm-project/commit/e8a0b40d6c4c36329fb4ff66a0aa5fee40a3d4df
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-17 (Sat, 17 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/test/Transforms/SCCP/get_vector_length-intrinsic.ll

  Log Message:
  -----------
  [SCCP] Correct range calculation for get.vector.length to use getUnsignedMax instead of getUpper. (#176493)

getUpper returns 1 more than the maxium value included in the range.
This may be 0. We should not use this in a umin. Instead we should
get the maximum value included in the range and use that for the umin.
Then convert that to Upper for the new range by adding 1.

The test was manually reduced from a downstream failure, but I couldn't
get it behave exactly the same way without more instructions. It should
be enough to show an incorrect range being calculated.

Fixes #176471


  Commit: 4ea251707c604cc35d42792e6c790f791b4f8277
      https://github.com/llvm/llvm-project/commit/4ea251707c604cc35d42792e6c790f791b4f8277
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/doc8.ini

  Log Message:
  -----------
  [clang-tidy][NFC] Update doc8 config (#176622)


  Commit: 5475cab729a9593b5a4aeb6967af5099f6dde3e3
      https://github.com/llvm/llvm-project/commit/5475cab729a9593b5a4aeb6967af5099f6dde3e3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/test/CodeGen/NVPTX/no-stack-protector-libcall-error.ll
    M llvm/test/CodeGen/X86/stack-protector-atomicrmw-xchg.ll
    M llvm/test/Transforms/StackProtector/cross-dso-cfi-stack-chk-fail.ll
    A llvm/test/Transforms/StackProtector/missing-analysis.ll
    M llvm/test/Transforms/StackProtector/stack-chk-fail-alias.ll

  Log Message:
  -----------
  StackProtector: Use LibcallLoweringInfo analysis (#170329)


  Commit: 36801a5b808ade6598c704dbb1e1e0462a0110f7
      https://github.com/llvm/llvm-project/commit/36801a5b808ade6598c704dbb1e1e0462a0110f7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/test/CodeGen/AMDGPU/idemponent-atomics.ll
    M llvm/test/CodeGen/AMDGPU/private-memory-atomics.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/pcsections.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-private-gas.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization-preserve-name.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fsub.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-nand.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-simplify-cfg-CAS-block.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-integer-ops-0-to-add-0.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-cmpxchg-flat-maybe-private.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-load.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-store.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/unaligned-atomic.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v7.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v8.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll
    M llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-expand.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/load-store-atomic.ll
    M llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-double.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-float.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cmpxchg.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/issue55983.ll
    M llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/partword.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-libcall.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-initial-load.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll
    A llvm/test/Transforms/AtomicExpand/X86/missing-analysis.ll

  Log Message:
  -----------
  AtomicExpand: Use LibcallLoweringInfo analysis (#176384)


  Commit: 8640fb32a6d6f52682b5be983e35e440673bdf2a
      https://github.com/llvm/llvm-project/commit/8640fb32a6d6f52682b5be983e35e440673bdf2a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/test/CodeGen/AArch64/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare.ll
    M llvm/test/CodeGen/X86/dwarf_eh_resume.ll
    A llvm/test/Transforms/DwarfEHPrepare/missing-analysis.ll

  Log Message:
  -----------
  DwarfEHPrepare: Use LibcallLoweringInfo analysis (#176380)


  Commit: a4975a80899c3a310e856386bd6d4c7cf8c21f79
      https://github.com/llvm/llvm-project/commit/a4975a80899c3a310e856386bd6d4c7cf8c21f79
  Author: David Green <david.green at arm.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll

  Log Message:
  -----------
  [CGP][AArch64] Do not sink instructions that might read/write memory. (#176182)

The test case's call instruction was being sank past the point where the
memory
it accessed was valid. Add a check that CGP does not try to sink
instruction that
might be invalid to move.

Fixes #176095


  Commit: f4de9b89e9489deda24b6143c574ee8688d4a734
      https://github.com/llvm/llvm-project/commit/f4de9b89e9489deda24b6143c574ee8688d4a734
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix llvm-ir2vec


  Commit: 7b6751916cf74692df9c331ecdc731c42addafdf
      https://github.com/llvm/llvm-project/commit/7b6751916cf74692df9c331ecdc731c42addafdf
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Support] Use bump ptr allocator for domtree nodes (#102516)

Avoids one heap allocation per basic block per dominator tree and
improves data locality.


  Commit: 6c80beea68a535cfe66350613f797061c3eca872
      https://github.com/llvm/llvm-project/commit/6c80beea68a535cfe66350613f797061c3eca872
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp

  Log Message:
  -----------
  [mlir][dataflow] Fix the LDBG print content of liveness-analysis (NFC) (#176542)


  Commit: 3457e7efc386d4ed8f05977bb8827eae840b85da
      https://github.com/llvm/llvm-project/commit/3457e7efc386d4ed8f05977bb8827eae840b85da
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll

  Log Message:
  -----------
  [VPlan] Match inverted logical AND/OR for select costs.

VPlan transforms may invert logical AND/OR selects, which can impact
costs on targets the select is not cheap but the boolean AND/OR is.
Also match the inverted logical AND/OR to improve accuracy of the
cost estimation and fixes the underlying issue for the cost
divergence between legacy and VPlan-based cost model that caused
the revert of 01d34eb38fa058 in ed004cf42bf57c.


  Commit: f006cd76790e0d7cf34b8c1dbd6be7baf4842158
      https://github.com/llvm/llvm-project/commit/f006cd76790e0d7cf34b8c1dbd6be7baf4842158
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp

  Log Message:
  -----------
  [clang-repl] Skip out-of-process execution due to compiler-rt path mismatch (#176198)

On some setups (Solaris), clang-repl attempts to enable out-of-process
execution,
but fails to locate the ORC runtime due to a mismatch between the
toolchain’s
expected compiler-rt path and the actual on-disk layout.

Specifically, ToolChain::getCompilerRT() relies on
getArchNameForCompilerRTLib(),
which returns an architecture name that does not match the Solaris
compiler-rt
directory naming. As a result, the ORC runtime (orc_rt) is not detected
at the
correct path, even though it exists under
lib/clang/<version>/lib/sunos/.

As an initial workaround, special-case Solaris in
getArchNameForCompilerRTLib() to return "sunos", aligning the expected
path with
the system layout and preventing clang-repl from attempting
out-of-process
execution on Solaris.

Note that compiler-rt libraries on Solaris are suffixed with -<arch>
(e.g.
liborc_rt-x86_64.a) to support multilib configurations, which is not yet
fully
handled by the current lookup logic. A more complete solution will
require
revisiting compiler-rt path resolution for Solaris.

The discussion is available here:
https://github.com/llvm/llvm-project/pull/175322


  Commit: 9e087a6ed0c0c0ef5d72fd27aa1ce65ce82786f7
      https://github.com/llvm/llvm-project/commit/9e087a6ed0c0c0ef5d72fd27aa1ce65ce82786f7
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M mlir/utils/textmate/mlir.json
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/tsconfig.json

  Log Message:
  -----------
  [mlir][vscode] Update to capture angle brackets in types/attrs (#176665)

This updates the grammar of these types so that it is shown. Expanding
what scopes are shown.

Also enabled skipLibCheck.


  Commit: 75db543532afc45d367ec9647393db60c452d58d
      https://github.com/llvm/llvm-project/commit/75db543532afc45d367ec9647393db60c452d58d
  Author: Artem Dergachev <noqnoqneo at gmail.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  [analyzer] Update my maintainer email.


  Commit: 497a6d672263343f58eae5a5e697484f4899fbdc
      https://github.com/llvm/llvm-project/commit/497a6d672263343f58eae5a5e697484f4899fbdc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll

  Log Message:
  -----------
  Recommit "[VPlan] Only use isAddressSCEVForCost in legacy getAddressAccSCEV"

This reverts commit ed004cf42bf57ca79b57bc3076ef83a8477426ea.

The original commit exposed an independent cost issue, triggering an
assertion. That issue has been fixed in 3457e7efc3.

Reland the patch now that the assertion has been fixed.


  Commit: 636f34ea5614c5f6834580ee68a50163e542459f
      https://github.com/llvm/llvm-project/commit/636f34ea5614c5f6834580ee68a50163e542459f
  Author: Thomas Symalla <github at thomassymalla.de>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Support/Regex.cpp
    M llvm/lib/Support/regcomp.c
    A llvm/test/FileCheck/backref-limit.txt
    M llvm/test/FileCheck/capture-limit.txt
    M llvm/unittests/Support/RegexTest.cpp

  Log Message:
  -----------
  [regex][FileCheck] Support back-references up to 20. (#174150)

Support `\g{n}`-style back references in `regcomp` as well by increasing
the limit from 9 to 20 and adding additional parsing. Update the limit
checks in FileCheck. The limit can theoretically be removed by
reallocating the regex-matchers internal arrays but I don't find a use
case for that as of now.

Update a test that now should pass when using more than 9
back-references.

Add a new test that tests for the error message explicitly..


  Commit: ae1bd068db293c494c4c6314da3b9d138706460d
      https://github.com/llvm/llvm-project/commit/ae1bd068db293c494c4c6314da3b9d138706460d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Replace PhiR operand of ComputeAnyOfResult with VPIRFlags. (#175657)

Replace the Phi recipe operand of ComputeAnyOfVResult with VPIRFlags,
building on top of https://github.com/llvm/llvm-project/pull/174026.

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


  Commit: eb773961aac45593ce126ed258d82c3c3abbaa93
      https://github.com/llvm/llvm-project/commit/eb773961aac45593ce126ed258d82c3c3abbaa93
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/test/Transforms/SafeStack/AArch64/abi.ll
    M llvm/test/Transforms/SafeStack/AArch64/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/AArch64/unreachable.ll
    M llvm/test/Transforms/SafeStack/ARM/abi.ll
    M llvm/test/Transforms/SafeStack/ARM/debug.ll
    M llvm/test/Transforms/SafeStack/ARM/setjmp.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
    M llvm/test/Transforms/SafeStack/X86/abi.ll
    M llvm/test/Transforms/SafeStack/X86/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/X86/addr-taken.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace-error.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/array-aligned.ll
    M llvm/test/Transforms/SafeStack/X86/array.ll
    M llvm/test/Transforms/SafeStack/X86/byval.ll
    M llvm/test/Transforms/SafeStack/X86/call.ll
    M llvm/test/Transforms/SafeStack/X86/cast.ll
    M llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
    M llvm/test/Transforms/SafeStack/X86/coloring.ll
    M llvm/test/Transforms/SafeStack/X86/coloring2.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep.ll
    M llvm/test/Transforms/SafeStack/X86/constant-geps.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc-dynamic.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
    M llvm/test/Transforms/SafeStack/X86/dynamic-alloca.ll
    M llvm/test/Transforms/SafeStack/X86/escape-addr-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store2.ll
    M llvm/test/Transforms/SafeStack/X86/escape-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-casted-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-invoke.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-negative.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-ptrtoint.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-phi-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-select-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-vector.ll
    M llvm/test/Transforms/SafeStack/X86/invoke.ll
    M llvm/test/Transforms/SafeStack/X86/layout-frag.ll
    M llvm/test/Transforms/SafeStack/X86/layout-region-split.ll
    M llvm/test/Transforms/SafeStack/X86/memintrinsic-oob-read.ll
    A llvm/test/Transforms/SafeStack/X86/missing-analysis.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/no-attr.ll
    M llvm/test/Transforms/SafeStack/X86/no-crash-on-lifetime.ll
    M llvm/test/Transforms/SafeStack/X86/phi-cycle.ll
    M llvm/test/Transforms/SafeStack/X86/phi.ll
    M llvm/test/Transforms/SafeStack/X86/pr54784.ll
    M llvm/test/Transforms/SafeStack/X86/ret.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp2.ll
    M llvm/test/Transforms/SafeStack/X86/sink-to-use.ll
    M llvm/test/Transforms/SafeStack/X86/ssp.ll
    M llvm/test/Transforms/SafeStack/X86/store.ll
    M llvm/test/Transforms/SafeStack/X86/struct.ll

  Log Message:
  -----------
  SafeStack: Use LibcallLoweringInfo analysis pass (#176379)


  Commit: c7af813b5213ccf4d1fbe42c2bffbde8de5ffd75
      https://github.com/llvm/llvm-project/commit/c7af813b5213ccf4d1fbe42c2bffbde8de5ffd75
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [DAG] expandCLMUL - if a target supports CLMUL+CLMULH then CLMULR can be merged from the results (#176644)

If a target supports CLMUL + CLMULH, then we can funnel shift the
results together to form CMULR.

Helps x86 PCLMUL targets particularly


  Commit: 3dc5259bc8908a516ea3c90278339d5d40e397d5
      https://github.com/llvm/llvm-project/commit/3dc5259bc8908a516ea3c90278339d5d40e397d5
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/copyables-with-parent-scalars-in-phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/matching-insert-point-for-nodes.ll

  Log Message:
  -----------
  [SLP]Do not build bundle for copyables, with parents used in PHI node

If the copyables have parents, used in PHI nodes, this causes complex
schedulable/non-schedulable dependecies, which require complex
processing, but with small profitability. Cut such case early for now to
prevent compiler crashes and compile time blow up.

Fixes #176658


  Commit: 86d35771342c99d974c1965f45454862926d13a8
      https://github.com/llvm/llvm-project/commit/86d35771342c99d974c1965f45454862926d13a8
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

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

  Log Message:
  -----------
  [X86] Simplify hasCalleePopSRet, NFCI (#176519)

The implementation was rewritten for clarity, and the extra boolean
parameter to the sibcall eligibility check was removed in favor of
recalculating this property. The compile time impact should be
negigible, the vast majority of callers will return early on the
TT.isX86_32() check.

The comments now try to clarify which platforms have this
callee-pop-sret behavior, which was always hard for me to figure out
from the previous code.

I was able to remove two ambiguous checks for `canGuaranteeTCO`, and
what those checks were really doing was checking for `fastcc` and other
calling conventions that pass arguments in registers. Instead of looking
for the `inreg` IR attribute, now the code looks at the CCValAssign to
check if it the pointer is passed in memory or registers, so it works
smoothly with conventions like `fastcc` that don't require explicit
`inreg` annotations.


  Commit: 6cc18a8e4338dbbeb29b4a57af89e0cc0aca7be9
      https://github.com/llvm/llvm-project/commit/6cc18a8e4338dbbeb29b4a57af89e0cc0aca7be9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Support more GEP-like recipes in getSCEVExprForVPValue (NFCI)

Support VPWidenGEPRecipe, VPInstructions and VPRelpicateRecipe with
GEP-like opcodes in getSCEVExprForVPValue via a new matcher binding
source element type and operands.

This is used in code paths when computing SCEV expressions in the
VPlan-based cost model, which should produce costs matching the legacy
cost model.


  Commit: ff6531399d53f5a17c3315dc49adb2296398d964
      https://github.com/llvm/llvm-project/commit/ff6531399d53f5a17c3315dc49adb2296398d964
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/CUDA/cuda.h
    A clang-tools-extra/test/clang-tidy/infrastructure/cuda-basic.cu

  Log Message:
  -----------
  [clang-tidy] Add documentation and smoke test for CUDA (#173699)

As of AI usage: Gemini 3 was used to refine the wording and style of the
documentation text.

Closes #173677


  Commit: b140fb2f05d20d26d334cc94b235aaa5358c2d62
      https://github.com/llvm/llvm-project/commit/b140fb2f05d20d26d334cc94b235aaa5358c2d62
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/canonicalize.mlir

  Log Message:
  -----------
  [mlir][memref] Support folding memref.load from global splat constants (#176627)

This change extends the memref.load folding hook to fold loads from
global constant memrefs initialized with splat values.


  Commit: 447a1dbc43d228347dc5694c3cdd1f37dadb3b5d
      https://github.com/llvm/llvm-project/commit/447a1dbc43d228347dc5694c3cdd1f37dadb3b5d
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupSetCC.cpp
    M llvm/test/CodeGen/X86/apx/setzucc.ll

  Log Message:
  -----------
  [X86][APX] Ignore the use of EFLAGS when ZU is enabled (#176645)

Since we don't need to insert the XOR instruction.

Fixes redundant MOVXZ in https://godbolt.org/z/s9Kq6TPoW


  Commit: 7f96336a2277f783294c9fda53fea93a7b2c8570
      https://github.com/llvm/llvm-project/commit/7f96336a2277f783294c9fda53fea93a7b2c8570
  Author: Tianle Liu <tianle.l.liu at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/LTO/LTOBackend.cpp
    A llvm/test/ThinLTO/X86/thinlto-savetemps-mod.ll

  Log Message:
  -----------
  [LTOBackend] Add -filter-save-modules= for save-temps to only dump specific modules. (#175696)

Only if module's name contains a string in -filter-save-modules, will
its temp BC files be saved. If -filter-save-modules= not set, all
modules' BC files will be saved. This feature is more useful for ThinLto
when huge numbers of modules are built separately. Using
-filter-save-modules= can reduce build time and size of generated files,
even avoid crash if some other unrelated files have issues during BC
files dumping.


  Commit: fb3a5b05671fddd13524745a8f415207ab96d6b4
      https://github.com/llvm/llvm-project/commit/fb3a5b05671fddd13524745a8f415207ab96d6b4
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-profgen/coff-profile.test
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.h

  Log Message:
  -----------
  [PseudoProbe] Support loading pseudo probe from debug binary (#175698)

Pseudo probe and DWARF sections can occupy a significant amount of space
in binary for large application. An executable PE image file should not
be larger than 2GB on Windows. To support LBR collection for those large
applications, user can use llvm-objcopy to strip those debug sections
and produce a smaller binary for profiling. The original binary can then
be used as the debug binary to load pseudo probe and DWARF info.


  Commit: 02eb33b41a2644e1e35069c8a72d29facd5b4d2f
      https://github.com/llvm/llvm-project/commit/02eb33b41a2644e1e35069c8a72d29facd5b4d2f
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/LoongArch/load-itofp-combine.ll

  Log Message:
  -----------
  [LoongArch][NFC] Add tests for sitofp(load) combine (#165521)


  Commit: 0e4c326a930b0c6d54608d411469f48934c05b80
      https://github.com/llvm/llvm-project/commit/0e4c326a930b0c6d54608d411469f48934c05b80
  Author: Mend Renovate <bot at renovateapp.com>
  Date:   2026-01-18 (Sun, 18 Jan 2026)

  Changed paths:
    M .github/workflows/ids-check.yml

  Log Message:
  -----------
  [Github] Update actions/upload-artifact action to v6 (#176677)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | major | `v5.0.0` → `v6.0.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>actions/upload-artifact (actions/upload-artifact)</summary>

###
[`v6.0.0`](https://redirect.github.com/actions/upload-artifact/compare/v5.0.0...v6.0.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v5.0.0...v6.0.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:eyJjcmVhdGVkSW5WZXIiOiI0Mi43NC41IiwidXBkYXRlZEluVmVyIjoiNDIuNzQuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->


  Commit: 2a8a694b508df2fa519283afa0211f4cd04cab6c
      https://github.com/llvm/llvm-project/commit/2a8a694b508df2fa519283afa0211f4cd04cab6c
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    A 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

  Log Message:
  -----------
  [RISCV][llvm] Handle calling convention for P extension fixed vectors (#176093)

P extension packed SIMD types are passed in GPRs. For types larger than
XLen (e.g. v8i8 on RV32), they are split and passed via the 2XLen
mechanism, similar to i64 on RV32.

FIXME: Need to figure out the mechanism when P and V are enabled at the
same time.

stack on: https://github.com/llvm/llvm-project/pull/176193


  Commit: 1887fca885b7e68fa754e108408d2896671b9244
      https://github.com/llvm/llvm-project/commit/1887fca885b7e68fa754e108408d2896671b9244
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [RISCV][llvm] Handle sub-register vector shifts for P-extension (#176109)

For sub-register width vectors (v2i16, v4i8) on RV64 with P-extension,
the type legalizer widens them to legal types, i.e. v4i16, v8i8, before
they're getting unrolled, so they'll be redundant computation for higher
part of register.
The correct way to handle is similar to widening div/rem where there's
undef padded for high part.

stack on: https://github.com/llvm/llvm-project/pull/176093


  Commit: 6efff59302332e9534c0c060e5e5c046dee5f8ca
      https://github.com/llvm/llvm-project/commit/6efff59302332e9534c0c060e5e5c046dee5f8ca
  Author: VASU SHARMA <44048872+vasu-the-sharma at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp

  Log Message:
  -----------
  [UBSAN] [NFC] resolve clang-format errors (#175716)

PR to resolve clang-format errors in the files:

- `clang/lib/CodeGen/CGExprAgg.cpp`
- `clang/lib/CodeGen/CGExprCXX.cpp`
- `clang/lib/CodeGen/CGClass.cpp`

Co-authored-by: vasu-ibm <Vasu.Sharma2 at ibm.com>


  Commit: 72b9ae5a9e35dbe2418f057f757d82bfce570150
      https://github.com/llvm/llvm-project/commit/72b9ae5a9e35dbe2418f057f757d82bfce570150
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFoldMemOffset.cpp
    A llvm/test/CodeGen/RISCV/fold-mem-offset-zilsd.ll

  Log Message:
  -----------
  [RISCV] Add Zilsd to RISCVFoldMemOffset (#176544)


  Commit: 4ab36d89a85a01994637077a8e7bacc2561a4db3
      https://github.com/llvm/llvm-project/commit/4ab36d89a85a01994637077a8e7bacc2561a4db3
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/Value.h
    M llvm/lib/IR/Value.cpp
    M mlir/unittests/IR/RemarkTest.cpp

  Log Message:
  -----------
  [IR][NFC] Inline Value::getContext() (#176662)

For non-LTO builds, this is a frequently called function consisting of
just two instructions. Most files that include Value.h also include
Type.h, so the added compile time cost is very low.


  Commit: 5070a45ac825caf348c34b033ec820ac9c1d198c
      https://github.com/llvm/llvm-project/commit/5070a45ac825caf348c34b033ec820ac9c1d198c
  Author: Crivens6 <42982502+Crivens6 at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst

  Log Message:
  -----------
  [Kaleidoscope] Update tutorial ch4 to match example code document (#172395)

The assert line has been removed as it does not compile and is not
present in the code document. References to the assert in the tutorial
have also been removed.

ExprSymbol.getAddress().toPtr<double (*)()>(); has been changed to
ExprSymbol.toPtr<double (*)()>(); to match the code document's use of
newer API. Reference to the getAdress() function has also been removed.

Co-authored-by: Christyllin <DiskworldWizzard at Gmail.com>


  Commit: 5dcb977eb41d3341879b65a957daa1db9a17ceb3
      https://github.com/llvm/llvm-project/commit/5dcb977eb41d3341879b65a957daa1db9a17ceb3
  Author: Crivens6 <42982502+Crivens6 at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst

  Log Message:
  -----------
  [Kaleidoscope] Update tutorial ch2 to match example code document (#172392)

This change syncs the tutorial with the example code document for
chapter 2. This is necessary to lookup the top level expression with the
JIT in chapter 4.

Co-authored-by: Christyllin <DiskworldWizzard at Gmail.com>


  Commit: 58a99d4e3dd00bfefb0ff8fee13c1882b0f84474
      https://github.com/llvm/llvm-project/commit/58a99d4e3dd00bfefb0ff8fee13c1882b0f84474
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/BranchRelaxation.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp

  Log Message:
  -----------
  [CodeGen][NPM] Update dominator tree and post dominator tree consistently (#173485)

These passes run "RenumberBlocks()" on Machine function which renders
the dominator tree analyses in the cache stale (though passes may not
change anything structurally). we need to update the block numbers in
the cached analyses if we are to return PreservedAnalysis::all(). This
is not an issue with legacy PM since none of these passes preserve
dominator tree analyses anyway.


  Commit: 767a04c9bb76cc991cfb2e5483db66522c8d2728
      https://github.com/llvm/llvm-project/commit/767a04c9bb76cc991cfb2e5483db66522c8d2728
  Author: Seraphimt <svet58585 at mail.ru>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr8.mir

  Log Message:
  -----------
  Fix typo in condition AArch64InstrInfo::copyPhysReg. (#173450)

Minor fix typo.
Main issue:
https://github.com/llvm/llvm-project/issues/169959

I did research and found file with tests but I couldn't figure out how
cover this change. if this needs to be added then please advise.
@tomershafir


  Commit: a2d8950f207b029d8caef010e0ae589c1f8674bc
      https://github.com/llvm/llvm-project/commit/a2d8950f207b029d8caef010e0ae589c1f8674bc
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/load-itofp-combine.ll

  Log Message:
  -----------
  [LoongArch] Convert ld to fld when result is only used by sitofp (#165523)

If the result of an integer load is only used by an integer-to-float
conversion, use a fp load instead. This eliminates an
integer-to-float-move (movgr2fr) instruction.


  Commit: b12e070b9238e68ad678b8c6d3d6e01d6f13728f
      https://github.com/llvm/llvm-project/commit/b12e070b9238e68ad678b8c6d3d6e01d6f13728f
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl

  Log Message:
  -----------
  [OpenCL] Set KHR extensions minimum version to OpenCL 1.0 (2nd try) (#176681)

Motivation is similar to 25cfdaa4e9dc. Their spec don't specify a
required OpenCL version. Targets may expose them before OpenCL 1.2. Set
KHR extensions (depth images, mipmaps, subgroups, kernel clock, dot
product, ext_float_atomics, extended_bit_ops, cles_khr_int64) to
availability 1.0.
Changes to opencl-c.h:
* Relax header and test guards to allow extension macros whenever any
OpenCL C version is defined.
* Relax cl_khr_depth_images guard to allow cl_khr_depth_images, OpenCL
C++, or OpenCL C 2.0+, since image2d_depth_t and image2d_array_depth_t
types require that coverage.
* Guard image1d_t, image1d_array_t and image2d_array_t types with OpenCL
C++ or OpenCL C 1.2+ to match with OpenCL C spec.

Relates to https://github.com/KhronosGroup/OpenCL-CTS/pull/2376.

Update: The first attempt was reverted in #175993, but the regression
described in #175993 should be fixed in ROCm/llvm-project's opencl-c.h.
See https://github.com/llvm/llvm-project/pull/175993#issuecomment-3762586432


  Commit: 792670a4003cba8636713916bed89a0b991fb32d
      https://github.com/llvm/llvm-project/commit/792670a4003cba8636713916bed89a0b991fb32d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/InlineAsm.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
    M llvm/test/CodeGen/X86/seh-unwind-inline-asm-codegen.ll

  Log Message:
  -----------
  [X86][WinEH] Insert nop after unwinding inline assembly (#176393)

As discussed on https://github.com/llvm/llvm-project/pull/144745, insert
a nop after unwinding inline assembly, as it may end on a call.

While the change itself is trivial, I ended up having to do two
infrastructure changes:
* The unwind flag needs to be propagated to ExtraInfo of the
MachineInstr.
* The MachineInstr needs to be passed through to emitInlineAsmEnd(), and
the method needs to be non-const.

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


  Commit: 0899e8a3ccedca3d07abf8a7b435ac1b9d93dc2c
      https://github.com/llvm/llvm-project/commit/0899e8a3ccedca3d07abf8a7b435ac1b9d93dc2c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-aggregates.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Split aggregate tests for SimplifyDemandedFPClass to new fie (#176702)

This is a workaround; currently alive2 silently errors when trying to
verify transforms on some of these cases.


  Commit: 671f3bc8cdcfe62b1f76426b42a53ba8fa47aebb
      https://github.com/llvm/llvm-project/commit/671f3bc8cdcfe62b1f76426b42a53ba8fa47aebb
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [clang][LoongArch] Guard FCSR intrinsics with __loongarch_hard_float (#176545)

Link:
https://gcc.gnu.org/pipermail/gcc-patches/2025-December/703313.html


  Commit: dc26c7e14d49b41302fb260c269d1dd919bb48b5
      https://github.com/llvm/llvm-project/commit/dc26c7e14d49b41302fb260c269d1dd919bb48b5
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    A clang/test/Analysis/std-c-library-functions-char-uchar-conv.c

  Log Message:
  -----------
  [clang][analyzer] StdLibraryFunctionsChecker getcwd fix (#175794)

`StdLibraryFunctionsChecker` contained the following condition for
`getcwd`:
```
           .Case({NotNull(0),
                  ArgumentCondition(1, WithinRange, Range(1, SizeMax)),
                  ReturnValueCondition(BO_EQ, ArgNo(0))},
                 ErrnoMustNotBeChecked, GenericSuccessMsg)
```
In this case argument 1 should be not zero and return value is set to be
equal to argument 1. This would mean that return value is implicitly not
zero. But for unknown reason (probably analyzer inaccuracy) it can occur
that the return value is still assumable to be zero after this condition
was applied. This results in false positive if `ErrnoChecker` is enabled
because when the return value is 0 value of `errno` should be allowed to
be read but in this case it is not.
The bug is fixed by adding an extra (theoretically redundant) condition
for the return value to be non-zero.

Fixes #175136


  Commit: 4885d1fcf6d8d2a86d0579439cf0a96122106ad1
      https://github.com/llvm/llvm-project/commit/4885d1fcf6d8d2a86d0579439cf0a96122106ad1
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/www/builtins.py

  Log Message:
  -----------
  Fix typo in clang/www/builtins.py (#174304)

`__builtin_ia32_subss` appeared in the list twice


  Commit: 5104e7783e56d06d70c41d92c30275ad917c7533
      https://github.com/llvm/llvm-project/commit/5104e7783e56d06d70c41d92c30275ad917c7533
  Author: Islam Imad <143586474+Islam-Imad at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16fma.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16fma.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16fma.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 f16fma to header only (#176244)

closes #175320

Part of #175313


  Commit: ff5e583dbe2c6dd678e2ec78a14e2209d16c246d
      https://github.com/llvm/llvm-project/commit/ff5e583dbe2c6dd678e2ec78a14e2209d16c246d
  Author: Thomas Symalla <github at thomassymalla.de>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/FileCheck/backref-limit.txt

  Log Message:
  -----------
  [FileCheck] Add %ProtectFileCheckOutput to backref-limit.txt test. (#176705)

This test passes locally and asserts as intended, but fails on BuildBot.


  Commit: d88138d3483cdfb8d674fae2e8bb0fa6dd1ac75a
      https://github.com/llvm/llvm-project/commit/d88138d3483cdfb8d674fae2e8bb0fa6dd1ac75a
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M bolt/test/runtime/AArch64/long-jmp-bti-plt.c

  Log Message:
  -----------
  [BOLT] Fix long-jmp-bti-plt.c test (#176709)

The test checked for exact addresses in disassembly. This was failing on
some platforms.

Fix: changed test to check for regular expressions


  Commit: db98b99f1eae0d3cc8f19b76db24f0039b5935de
      https://github.com/llvm/llvm-project/commit/db98b99f1eae0d3cc8f19b76db24f0039b5935de
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/tcgen05-ld-red.ll

  Log Message:
  -----------
  [LLVM][NVPTX] Add support for tcgen05.ld.red Instruction (#175919)

This commit adds support for tcgen05.ld.red instruction with tests under tcgen05-ld-red.ll


  Commit: 5b454fb11b0f5c64e4b53297bb5ef12171638d79
      https://github.com/llvm/llvm-project/commit/5b454fb11b0f5c64e4b53297bb5ef12171638d79
  Author: Lukas Sommer <lukas.sommer at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tensor/Transforms/EmptyOpPatterns.cpp
    M mlir/test/Dialect/Tensor/fold-empty-op.mlir

  Log Message:
  -----------
  [mlir][tensor] Preserve encoding when folding empty (#176427)

Addresses a long-standing TODO to not drop the encoding when folding a
`tensor.empty` with a reshape operation (`tensor.expand_shape`,
`tensor.collapse_shape`).

---------

Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>


  Commit: 78481a2444b1d4bf9369b722af3a645e72ba5535
      https://github.com/llvm/llvm-project/commit/78481a2444b1d4bf9369b722af3a645e72ba5535
  Author: Ryan Cowan <ryan.cowan at arm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/indexed-store-memsize.mir

  Log Message:
  -----------
  [AArch64][GISel] Use MachineMemoryOperand size when choosing indexed store (#175747)

A miss-compile occurs at o2 or above when using GlobalISel. The error
occurs due to the GlobalMerge pass moving two variables together & a
store of the incorrect size overwriting one of the two merged variables.

Currently, `AArch64InstructionSelector` uses the size of LLT when
choosing which pre/post indexed store to choose. In this case, the size
of the LLT is 32 when the value being stored is 16. By changing this
selector to look at the size of the MMO we can avoid this issue.

---------

Co-authored-by: Nathan Corbyn <me at nathancorbyn.com>


  Commit: 4a880833b7a441a3e9222f7bd0128f1dc74b1a96
      https://github.com/llvm/llvm-project/commit/4a880833b7a441a3e9222f7bd0128f1dc74b1a96
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Transforms/RemoveDeadValues.cpp

  Log Message:
  -----------
  [mlir][NFC] `remove-dead-values`: Get canonicalization patterns from ops (#176712)

Collect canonicalization patterns from the region branch ops (instead of
populating all canonicalization patterns).

Addresses a
[comment](https://github.com/llvm/llvm-project/pull/173505#discussion_r2675222999)
on a merged PR.


  Commit: 593103465326850f23bc9a6078ae7fb01065d46e
      https://github.com/llvm/llvm-project/commit/593103465326850f23bc9a6078ae7fb01065d46e
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/test/CoverageMapping/ctor.cpp
    M clang/test/CoverageMapping/includehell.cpp
    M clang/test/CoverageMapping/macros.c
    M llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp

  Log Message:
  -----------
  CoverageMappingWriter.cpp: Append yet another comarison, endLoc.

This was the part of #125407.

For "Same Kind and same startLoc", reorder records BY endLoc DESC, to
prioritize wider Regions with the same startLoc.


  Commit: 0e304e6d9f306ead81fc5177b8a497af0d416a73
      https://github.com/llvm/llvm-project/commit/0e304e6d9f306ead81fc5177b8a497af0d416a73
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp

  Log Message:
  -----------
  GlobalISel: Use LibcallLoweringInfo more in LegalizerHelper (#176411)

Avoid using TargetLowering for libcall information.


  Commit: 3d90b7a2d7333ead420b18baece183249404329a
      https://github.com/llvm/llvm-project/commit/3d90b7a2d7333ead420b18baece183249404329a
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Separate flag for format-attributed functions (#175749)

PR #173096 extended -Wunsafe-buffer-usage-in-libc-call to apply to all
functions with the 'format' attribute.

This change moves those warnings behind a separate
-Wunsafe-buffer-usage-in-format-attr-call flag (implicitly enabled by
-Wunsafe-buffer-usage), allowing projects to decide whether they want to
opt in to this or not.


  Commit: e697dba370a0da6bc491c8438aec562ad1f8e057
      https://github.com/llvm/llvm-project/commit/e697dba370a0da6bc491c8438aec562ad1f8e057
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp

  Log Message:
  -----------
  Fix a warning triggered by #152260 [-Wunused-variable]


  Commit: 9f19d1895d37fca90c9f1ff763fa5ffd7133a07e
      https://github.com/llvm/llvm-project/commit/9f19d1895d37fca90c9f1ff763fa5ffd7133a07e
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-teams-clauses-trunc-ext.mlir

  Log Message:
  -----------
  [OpenMP] Fix truncation/extension bug when calling __kmpc_push_num_teams (#173067)

This PR fixes a bug when the lower and upper bound for the number of
teams was not an `int32`, but a different type. In this case, an
internal compiler would trigger due to a mismatching call to
`__kmpc_push_num_teams`.


  Commit: d2c5892c226342bd11341e5bd75c8b5152bde9a9
      https://github.com/llvm/llvm-project/commit/d2c5892c226342bd11341e5bd75c8b5152bde9a9
  Author: Jerry Dang <kuroyukiasuna at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Support/KnownBits.cpp
    A llvm/test/CodeGen/AArch64/sat-trunc-knownbits.ll
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [SelectionDAG] Add TRUNCATE_SSAT_S/U and TRUNCATE_USAT_U to canCreateUndefOrPoison and computeKnownBits (#152143) (#168809)

1. Implement `SelectionDAG::computeKnownBits` for TRUNCATE_SSAT_S/U and
TRUNCATE_USAT_U
2. Saturating truncation operations are well-defined for all inputs and
cannot create poison or undef values. This allows the optimizer to
eliminate unnecessary freeze instructions after these operations.

Fixes #152143


  Commit: e43331f94a594421180ee783b5b92e5dea70f4c9
      https://github.com/llvm/llvm-project/commit/e43331f94a594421180ee783b5b92e5dea70f4c9
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    A lldb/test/API/terminal/hidden_frame_markers/Makefile
    A lldb/test/API/terminal/hidden_frame_markers/TestHiddenFrameMarkers.py
    A lldb/test/API/terminal/hidden_frame_markers/main.cpp

  Log Message:
  -----------
  [lldb] add a marker before hidden frames (#167550)

**This patch adds a marker to make hidden frames more explicit.**

---

Hidden frames can be confusing for some users, who see that the indexes
of the frames in a backtrace are not contiguous. This patch aims to
lessen the confusion by adding a delimiter for the first and last non
hidden frame, i.e the boundaries.

IDE's like Xcode and VSCode represent those in the UI by having the
hidden frames either greyed out or collapsed.

It's not possible to do this in the CLI, therefore, this patch makes use
of 2 unicode characters to mark the beginning and end of the hidden
frames range.

This patch depends on:
- https://github.com/llvm/llvm-project/pull/168603

# Examples

In the example below, frame `#2` to `#7` are is hidden, and therefore,
frame `#1` is the first non hidden frame of the range while frame `#8`
is the last non hidden frame:
<img width="488" height="112" alt="Screenshot 2025-11-18 at 18 41 11"
src="https://github.com/user-attachments/assets/a21431da-9729-4cf0-a6bc-024aa306fc45"
/>

If the selected frame is one of the 2 boundary frames, we replace the
delimiter character with the select character (`*`).

<img width="487" height="111" alt="Screenshot 2025-11-18 at 18 41 03"
src="https://github.com/user-attachments/assets/5616fa81-6db6-457d-9d1e-bbe46e710c26"
/>
<img width="488" height="111" alt="Screenshot 2025-11-18 at 18 40 55"
src="https://github.com/user-attachments/assets/93dfa6cf-0956-4718-b31c-f965ec72b56d"
/>


  Commit: 4b8ff4c63d681ac7376bb874f0302538ac9a6d27
      https://github.com/llvm/llvm-project/commit/4b8ff4c63d681ac7376bb874f0302538ac9a6d27
  Author: Jack <jack.slingsby at imgtec.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Math/IR/MathOps.td
    M mlir/lib/Dialect/Math/Transforms/ExpandOps.cpp
    M mlir/test/Dialect/Math/expand-math.mlir

  Log Message:
  -----------
  [mlir][math] Fix the semantics of math.clampf (#175012)

The `math.clampf` op is semantically incorrect when compared to both the
CUDA reference implementation and the SPIRV spec, both of which have a
clamp op.
- Fix the definition of `math.clampf` to agree with CUDA and SPIRV
- Explicitly state when `math.clampf` produces `ub.poison`
- Update the ExpandOps pass to reflect the corrected semantics


  Commit: bfe6668130055bf719a664fef309f035cb02f7c7
      https://github.com/llvm/llvm-project/commit/bfe6668130055bf719a664fef309f035cb02f7c7
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Strip VPWidenSelectSC from VPRecipeTy (NFC) (#176722)

WidenSelect has been removed in 16830b2 ([VPlan] Remove
VPWidenSelectRecipe, use VPWidenRecipe instead, #174234).


  Commit: f74c2668ccc6aa36dac4ba42b9eff98ac167b481
      https://github.com/llvm/llvm-project/commit/f74c2668ccc6aa36dac4ba42b9eff98ac167b481
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/ModuleList.h
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
    M lldb/source/Target/ModuleCache.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/unittests/Core/ModuleListTest.cpp

  Log Message:
  -----------
  [lldb][Module][NFC] Remove unused always_create parameter to GetSharedModule (#176325)

No caller sets this to `true`. Initially added for and set by
`SymbolFileDWARFDebugMap` (see
`616f490777a4f35269a23abee851680134050065`). This was then removed
shortly after in:
```
commit 762f7135e290696595b6c7233245581f59eeb07c
Author: Greg Clayton <gclayton at apple.com>
Date:   Sun Sep 18 18:59:15 2011 +0000

    Don't put modules for .o files into the global shared module list. We
    used to do this because we needed to find the shared pointer for a .o
    file when the .o file's module was needed in a SymbolContext since the
    module in a symbol context was a shared pointer. Now that we are using
    intrusive pointers we don't have this limitation anymore since any
    instrusive shared pointer can be made from a pointer to an object
    all on its own.
```

At this point it's more of a foot-gun, because forcing it to true has
potentially significant performance implications (e.g.,
https://github.com/swiftlang/llvm-project/pull/12126/changes/a5eaa05dce15231f7a1de360b4e6634145c7dfc9)


  Commit: be037864f969ca47c61d17e1d1c65cb21477650a
      https://github.com/llvm/llvm-project/commit/be037864f969ca47c61d17e1d1c65cb21477650a
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [mlir][affine] Use `lookupNearestSymbolFrom` to simplify code (NFC) (#176679)


  Commit: 22057b04bf2e74133e15f1bb9c8f519fd96b34fe
      https://github.com/llvm/llvm-project/commit/22057b04bf2e74133e15f1bb9c8f519fd96b34fe
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    A llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-no-widen.ll

  Log Message:
  -----------
  [InstCombine] Fix crash on large integers in visitShl (#176723)

Do not call getExtendedType without first checking if the type can be
extended.

Solves SWDEV-547672


  Commit: 7533573aaf4bbbd16fc362bb1670dcea2c7e2ef9
      https://github.com/llvm/llvm-project/commit/7533573aaf4bbbd16fc362bb1670dcea2c7e2ef9
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8-fake16.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt

  Log Message:
  -----------
  [AMDGPU][NFC] Templatise and round-trip gfx11_asm_vop3_dpp8.s (#176450)

Prepared as a series of smaller commits as the cumulative diff is pretty
much unreviewable.
    
Supposed to help getting rid of lots of differences in the disassembler
counterpart of this test sitting downstream in the True16 branch.
    
I tried to make sure all important cases that were on the disassembler
side of the test, both upstream and downstream, are reflected in the
combined asm/disasm test.


  Commit: c61d5f9814ea5f88a43dfe5fae7cb79798ac0c5d
      https://github.com/llvm/llvm-project/commit/c61d5f9814ea5f88a43dfe5fae7cb79798ac0c5d
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/unittests/DAP/ProtocolTypesTest.cpp

  Log Message:
  -----------
  [lldb-dap][NFC] Address comments grammar. (#176233)

From
https://github.com/llvm/llvm-project/pull/175930#pullrequestreview-3667183086


  Commit: 9c75d2739499805d9e3e23fb308463d317487571
      https://github.com/llvm/llvm-project/commit/9c75d2739499805d9e3e23fb308463d317487571
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [lldb][DWARFASTParserClang][NFC] Remove obsolete DEBUG_PRINTF

Uncommenting `ENABLE_DEBUG_PRINTF` wasn't compiling on top-of-tree. This code may have been useful for debugging locally in the past but it doesn't seem compelling to keep this in the source-tree. Especially because it doesn't compile, indicating it's most likely not used.

This patch removes `DEBUG_PRINTF` entirely.


  Commit: cf4cf854df3c878813b9fa568ae04858b39633d8
      https://github.com/llvm/llvm-project/commit/cf4cf854df3c878813b9fa568ae04858b39633d8
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Remove redundant allow_completion parameter to GetCompleteQualType

No caller sets this parameter to `false`. It's odd that we would provide
such an option to a user. This gets used whenever we want to
ensure/check that a type has a definition. Never do we actually want to
expose the underlying mechanism of whether the type has been lazily
completed or not. A more dedicated API could introduced for this
purpose if we really wanted one.


  Commit: 41e231cae38028473dd327e8de5f65792b521ffe
      https://github.com/llvm/llvm-project/commit/41e231cae38028473dd327e8de5f65792b521ffe
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  [LifetimeSafety] Read lifetimebound attribute on implicit 'this' from all redeclarations (#176188)

Fix handling of `lifetimebound` attributes on implicit `this` parameters across function redeclarations.

Previously, the lifetime analysis would miss `lifetimebound` attributes on implicit `this` parameters if they were only present on certain redeclarations of a method. This could lead to false negatives in the lifetime safety analysis. This change ensures that if any redeclaration of a method has the attribute, it will be properly detected and used in the analysis.

I can't seem to work around the crash in the earlier attempt https://github.com/llvm/llvm-project/pull/172146.

Reproducer of the original crash:

```cpp
struct a {
  a &b() [[_Clang::__lifetimebound__]];
};
a &a::b() {}
```
This only crashes with `-target i686-w64-mingw32`. `bin/clang++ -c a.cpp` works fine.
Problematic merging logic:
```cpp
 // If Old has lifetimebound but New doesn't, add it to New.
  if (OldLBAttr && !NewLBAttr) {
    QualType NewMethodType = New->getType();
    QualType AttributedType =
        S.Context.getAttributedType(OldLBAttr, NewMethodType, NewMethodType);
    TypeLocBuilder TLB;
    TLB.pushFullCopy(NewTSI->getTypeLoc());
    AttributedTypeLoc TyLoc = TLB.push<AttributedTypeLoc>(AttributedType); // Crashes.
    TyLoc.setAttr(OldLBAttr);
    New->setType(AttributedType);
    New->setTypeSourceInfo(TLB.getTypeSourceInfo(S.Context, AttributedType));
  }
```

<details>
<summary>Crash</summary>

```
clang++: /REDACTED//llvm-project/clang/lib/Sema/TypeLocBuilder.cpp:89: TypeLoc clang::TypeLocBuilder::pushImpl(QualType, size_t, unsigned int): Assertion `TLast == LastTy && "mismatch between last type and new type's inner type"' failed.
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.      Program arguments: bin/clang++ -target i686-w64-mingw32 -c /REDACTED//a.cpp
1.      /REDACTED//a.cpp:4:11: current parser token '{'
 #0 0x000055971cfcb838 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /REDACTED//llvm-project/llvm/lib/Support/Unix/Signals.inc:842:13
 #1 0x000055971cfc9374 llvm::sys::RunSignalHandlers() /REDACTED//llvm-project/llvm/lib/Support/Signals.cpp:109:18
 #2 0x000055971cfcaf0c llvm::sys::CleanupOnSignal(unsigned long) /REDACTED//llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3
 #3 0x000055971cf38116 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /REDACTED//llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
 #4 0x000055971cf38116 CrashRecoverySignalHandler(int) /REDACTED//llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:390:51
 #5 0x00007fe9ebe49df0 (/lib/x86_64-linux-gnu/libc.so.6+0x3fdf0)
 #6 0x00007fe9ebe9e95c __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #7 0x00007fe9ebe49cc2 raise ./signal/../sysdeps/posix/raise.c:27:6
 #8 0x00007fe9ebe324ac abort ./stdlib/abort.c:81:3
 #9 0x00007fe9ebe32420 __assert_perror_fail ./assert/assert-perr.c:31:1
#10 0x000055971f969ade clang::TypeLocBuilder::pushImpl(clang::QualType, unsigned long, unsigned int) /REDACTED//llvm-project/clang/lib/Sema/TypeLocBuilder.cpp:93:3
#11 0x000055971f237255 clang::QualType::hasLocalQualifiers() const /REDACTED//llvm-project/clang/include/clang/AST/TypeBase.h:1065:37
#12 0x000055971f237255 clang::ConcreteTypeLoc<clang::UnqualTypeLoc, clang::AttributedTypeLoc, clang::AttributedType, clang::AttributedLocInfo>::isKind(clang::TypeLoc const&) /REDACTED//llvm-project/clang/include/clang/AST/TypeLoc.h:392:26
#13 0x000055971f237255 clang::AttributedTypeLoc clang::TypeLoc::castAs<clang::AttributedTypeLoc>() const /REDACTED//llvm-project/clang/include/clang/AST/TypeLoc.h:79:5
#14 0x000055971f237255 clang::AttributedTypeLoc clang::TypeLocBuilder::push<clang::AttributedTypeLoc>(clang::QualType) /REDACTED//llvm-project/clang/lib/Sema/TypeLocBuilder.h:106:47
#15 0x000055971f280cc8 clang::AttributedTypeLoc::setAttr(clang::Attr const*) /REDACTED//llvm-project/clang/include/clang/AST/TypeLoc.h:1035:30
#16 0x000055971f280cc8 mergeLifetimeBoundAttrOnMethod(clang::Sema&, clang::CXXMethodDecl*, clang::CXXMethodDecl const*) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:4497:11
#17 0x000055971f280cc8 clang::Sema::MergeCompatibleFunctionDecls(clang::FunctionDecl*, clang::FunctionDecl*, clang::Scope*, bool) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:4528:5
#18 0x000055971f27eb1f clang::Sema::MergeFunctionDecl(clang::FunctionDecl*, clang::NamedDecl*&, clang::Scope*, bool, bool) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:0:0
#19 0x000055971f29c256 clang::Sema::CheckFunctionDeclaration(clang::Scope*, clang::FunctionDecl*, clang::LookupResult&, bool, bool) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:12371:9
#20 0x000055971f28dab0 clang::Declarator::setRedeclaration(bool) /REDACTED//llvm-project/clang/include/clang/Sema/DeclSpec.h:2738:51
#21 0x000055971f28dab0 clang::Sema::ActOnFunctionDeclarator(clang::Scope*, clang::Declarator&, clang::DeclContext*, clang::TypeSourceInfo*, clang::LookupResult&, llvm::MutableArrayRef<clang::TemplateParameterList*>, bool&) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:10877:9
#22 0x000055971f2890fc clang::Sema::HandleDeclarator(clang::Scope*, clang::Declarator&, llvm::MutableArrayRef<clang::TemplateParameterList*>) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:0:11
#23 0x000055971f2aab99 clang::Sema::ActOnStartOfFunctionDef(clang::Scope*, clang::Declarator&, llvm::MutableArrayRef<clang::TemplateParameterList*>, clang::SkipBodyInfo*, clang::Sema::FnBodyKind) /REDACTED//llvm-project/clang/lib/Sema/SemaDecl.cpp:15904:15
#24 0x000055971efab286 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) /REDACTED//llvm-project/clang/lib/Parse/Parser.cpp:1364:23
#25 0x000055971f013b40 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) /REDACTED//llvm-project/clang/lib/Parse/ParseDecl.cpp:2268:18
#26 0x000055971efaa54f clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) /REDACTED//llvm-project/clang/lib/Parse/Parser.cpp:0:10
#27 0x000055971efa9e36 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) /REDACTED//llvm-project/clang/lib/Parse/Parser.cpp:1202:12
#28 0x000055971efa8df8 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) /REDACTED//llvm-project/clang/lib/Parse/Parser.cpp:0:14
#29 0x000055971efa7574 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) /REDACTED//llvm-project/clang/lib/Parse/Parser.cpp:743:10
#30 0x000055971ef9c0ee clang::ParseAST(clang::Sema&, bool, bool) /REDACTED//llvm-project/clang/lib/Parse/ParseAST.cpp:169:5
#31 0x000055971dbcdad6 clang::FrontendAction::Execute() /REDACTED//llvm-project/clang/lib/Frontend/FrontendAction.cpp:1317:10
#32 0x000055971db3c5fd llvm::Error::getPtr() const /REDACTED//llvm-project/llvm/include/llvm/Support/Error.h:278:42
#33 0x000055971db3c5fd llvm::Error::operator bool() /REDACTED//llvm-project/llvm/include/llvm/Support/Error.h:241:16
#34 0x000055971db3c5fd clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /REDACTED//llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1006:23
#35 0x000055971dcb4f9c clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /REDACTED//llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:310:25
#36 0x000055971a5e655e cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /REDACTED//llvm-project/clang/tools/driver/cc1_main.cpp:304:15
#37 0x000055971a5e29cb ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>) /REDACTED//llvm-project/clang/tools/driver/driver.cpp:226:12
#38 0x000055971a5e4c1d clang_main(int, char**, llvm::ToolContext const&)::$_0::operator()(llvm::SmallVectorImpl<char const*>&) const /REDACTED//llvm-project/clang/tools/driver/driver.cpp:0:12
#39 0x000055971a5e4c1d int llvm::function_ref<int (llvm::SmallVectorImpl<char const*>&)>::callback_fn<clang_main(int, char**, llvm::ToolContext const&)::$_0>(long, llvm::SmallVectorImpl<char const*>&) /REDACTED//llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#40 0x000055971d9bfe79 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::$_0::operator()() const /REDACTED//llvm-project/clang/lib/Driver/Job.cpp:442:30
#41 0x000055971d9bfe79 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::$_0>(long) /REDACTED//llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:12
#42 0x000055971cf37dbe llvm::function_ref<void ()>::operator()() const /REDACTED//llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:0:12
#43 0x000055971cf37dbe llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) /REDACTED//llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:426:3
#44 0x000055971d9bf5ac clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const /REDACTED//llvm-project/clang/lib/Driver/Job.cpp:442:7
#45 0x000055971d98422c clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const /REDACTED//llvm-project/clang/lib/Driver/Compilation.cpp:196:15
#46 0x000055971d984447 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const /REDACTED//llvm-project/clang/lib/Driver/Compilation.cpp:246:13
#47 0x000055971d99ee08 llvm::SmallVectorBase<unsigned int>::empty() const /REDACTED//llvm-project/llvm/include/llvm/ADT/SmallVector.h:83:46
#48 0x000055971d99ee08 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) /REDACTED//llvm-project/clang/lib/Driver/Driver.cpp:2265:23
#49 0x000055971a5e2303 clang_main(int, char**, llvm::ToolContext const&) /REDACTED//llvm-project/clang/tools/driver/driver.cpp:414:21
#50 0x000055971a5f2527 main /usr/local/google/home/usx/build/tools/clang/tools/driver/clang-driver.cpp:17:10
#51 0x00007fe9ebe33ca8 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#52 0x00007fe9ebe33d65 call_init ./csu/../csu/libc-start.c:128:20
#53 0x00007fe9ebe33d65 __libc_start_main ./csu/../csu/libc-start.c:347:5
#54 0x000055971a5e0361 _start (bin/clang+++0x6636361)
clang++: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 23.0.0git (https://github.com/llvm/llvm-project.git 282a065c5bb36186c05b903980d1d3a37fce2175)
Target: i686-w64-windows-gnu
Thread model: posix
InstalledDir: /usr/local/google/home/usx/build/bin
Build config: +assertions
clang++: note: diagnostic msg: 
********************
```

</details>


  Commit: 91291ac3d00b577dad62ccc450757ff0d0fc6918
      https://github.com/llvm/llvm-project/commit/91291ac3d00b577dad62ccc450757ff0d0fc6918
  Author: Aryan Kadole <aryankadole95 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [DAG] Add ISD::CLMUL/H/R to isCommutativeBinOp (#176615)

Resolves #176351.


  Commit: 5e5d6389f60178bc3bfe602a0cabe578453df577
      https://github.com/llvm/llvm-project/commit/5e5d6389f60178bc3bfe602a0cabe578453df577
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll

  Log Message:
  -----------
  [LV] Allow loops with multiple early exits in legality checks. (#176403)

This patch removes the single uncountable exit constraint, allowing
loops with multiple early exits, if the exits form a dominance chain and
all other constraints hold for all uncountable early exits.

While legality now accepts such loops, vectorization is not yet
supported. VPlan support will be added in a follow up:
https://github.com/llvm/llvm-project/pull/174864

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


  Commit: 9b64509862cbda3db7d4bc03e1f27ed3387e9ee8
      https://github.com/llvm/llvm-project/commit/9b64509862cbda3db7d4bc03e1f27ed3387e9ee8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [X86] combine-pclmul.ll - add tests showing failure to merge shuffles into X86ISD::PCLMULQDQ node control mask (#176741)


  Commit: 09efc282c2fd5f7f012bc25856b679cc4f0f484c
      https://github.com/llvm/llvm-project/commit/09efc282c2fd5f7f012bc25856b679cc4f0f484c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/clmul-vector.ll

  Log Message:
  -----------
  [X86] clmul-vector.ll - add missing clmulr_v2i64 test coverage (#176743)


  Commit: 3ca7a729901851f4a6f83e9783ee393cca46fd12
      https://github.com/llvm/llvm-project/commit/3ca7a729901851f4a6f83e9783ee393cca46fd12
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    M lldb/test/API/tools/lldb-dap/completions/main.cpp
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/unittests/DAP/LLDBUtilsTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Fix Completions Request crash (#176211)

lldb-dap currently crashes when the first character is non ascii. This
is because we assume that the request column is ascii based instead of
UTF16 code units,
and end up in the middle of a character code point. causing an assertion
since we cannot not send invalid UTF-8 values.

This also handles the case in multilines and the column is outside the
range of the text.

Move completion description to the `CompletionItem.detail` property.


  Commit: 302565b39ec66d97010e0a1ca98355929371600d
      https://github.com/llvm/llvm-project/commit/302565b39ec66d97010e0a1ca98355929371600d
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Move VPDerivedIVRecipe::execute to VPlanRecipes (NFC) (#176577)


  Commit: 09b45640a7e95bed856ffadd168a155c1b2240e0
      https://github.com/llvm/llvm-project/commit/09b45640a7e95bed856ffadd168a155c1b2240e0
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    R lldb/test/API/terminal/hidden_frame_markers/Makefile
    R lldb/test/API/terminal/hidden_frame_markers/TestHiddenFrameMarkers.py
    R lldb/test/API/terminal/hidden_frame_markers/main.cpp

  Log Message:
  -----------
  Revert "[lldb] add a marker before hidden frames (#167550)" (#176747)


  Commit: 42764ec59bc41979663a291fec1c5afdcf0b3fe8
      https://github.com/llvm/llvm-project/commit/42764ec59bc41979663a291fec1c5afdcf0b3fe8
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/test/API/lang/cpp/function-template-parameter-pack/TestFunctionTemplateParameterPack.py

  Log Message:
  -----------
  [lldb][test] TestFunctionTemplateParameterPack.py: XFAIL instead of skip

This test doesn't trigger an assertion on top-of-tree. Turn this into an
XFAIL instead.

Found this test because I'm working on improving parameter pack support
in the expression evaluator.


  Commit: af7c10618b47989e11b75a494f50a4e4812a7930
      https://github.com/llvm/llvm-project/commit/af7c10618b47989e11b75a494f50a4e4812a7930
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/test/Bitcode/invalid-record-strtab.ll
    M llvm/test/Bitcode/invalid.test
    M llvm/test/Bitcode/pr18704.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll

  Log Message:
  -----------
  [BitcodeReader] Improve error messages

Avoid using "Invalid record" for all errors. At least mention
what kind of record it is.


  Commit: 777c7b85ff218b043f67d5bedebb2338f9c1c149
      https://github.com/llvm/llvm-project/commit/777c7b85ff218b043f67d5bedebb2338f9c1c149
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix handling of reference-type DeclRefExpr (#176728)

Fix handling of reference-typed DeclRefExpr in lifetime analysis

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

This PR fixes a bug in the lifetime analysis where reference-typed DeclRefExpr nodes were incorrectly handled. The analysis was incorrectly removing the outer layer of origin for reference types, which led to missing some dangling reference warnings.

The fix adds a check to only remove the outer layer of origin when the declaration is not a reference type.


  Commit: 31f5be4ce54107ed8adc79d773a7dbf5c7640938
      https://github.com/llvm/llvm-project/commit/31f5be4ce54107ed8adc79d773a7dbf5c7640938
  Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A lld/test/ELF/dtlto/timetrace.test
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [DTLTO] Add DTLTO-specific LTO input handling time-trace scopes (#175799)

Add time-trace scopes to the DTLTO-specific input-handling code to
improve observability and debugging.

These scopes are tested via LLD, as the primary purpose of this code is
to support member files of non-thin archives as DTLTO inputs.
`llvm-lto2` does not currently support archives. Adding archive support
to `llvm-lto2` solely for testing these scopes does not appear to be
worthwhile.

As part of this change, the deletion of temporary DTLTO input files has
been moved. Cleanup now occurs after LTO has completed, rather than
during destruction of the LTO object. This is required since by the time
the LTO object is destroyed, time-traces have already been finalized, so
no additional trace data can be recorded.

Recording time-trace data for temporary file deletion is important, as
this has been a source of performance issues in the past and an area
where we expect to make further performance improvements if supported by
the data.

SIE internal tracker: TOOLCHAIN-21021


  Commit: fb953283af3fb246f815961ad2fbe7938936c7f5
      https://github.com/llvm/llvm-project/commit/fb953283af3fb246f815961ad2fbe7938936c7f5
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Linux.cpp
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/dfsan/dfsan_platform.h
    M compiler-rt/test/dfsan/custom.cpp
    M compiler-rt/test/dfsan/lit.cfg.py
    M compiler-rt/test/dfsan/origin_endianness.c
    M compiler-rt/test/dfsan/pair.cpp
    M compiler-rt/test/dfsan/struct.c
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp

  Log Message:
  -----------
  [dfsan] Add dataflow sanitizer support for SystemZ  (#168991)

Add SystemZ specific changes for dataflow sanitizer on top of following
two common code changes
i) Fix Endianness issue
[#162881](https://github.com/llvm/llvm-project/pull/162881)
ii) Fix ShadowAddress computation
[#162864](https://github.com/llvm/llvm-project/pull/162864[](url))

See conversation in original
pr#[#162195](https://github.com/llvm/llvm-project/pull/162195)


  Commit: 230f6ab1b84eef24444b86d6ffb18bd2e31822a9
      https://github.com/llvm/llvm-project/commit/230f6ab1b84eef24444b86d6ffb18bd2e31822a9
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A lldb/test/Shell/Expr/TestObjCIncompleteSuperclass.test

  Log Message:
  -----------
  [lldb][test] Add a test for evaluating Obj-C types with an incomplete super-class

LLDB currently crashes when the super-class of an Objective-C type can't
be completed (i.e., has no definition). For Foundation types such as
`NSObject`, the debug-info would usually only contain forward
declarations. The definitions live in the Clang module `.pcm` files. But
if the source of the definition fails to be loaded (e.g., if we just
delete the module cache), then we can no longer guarantee that the
super-class has a definition. This breaks a key Clang invariant, which
requires base-classes to have definitions by the time we try to lay them
out. This patch adds an XFAILed test for such scenario.

rdar://168440264


  Commit: 6c53fb5dfe5df705348ba75c3918e16a8dbdba55
      https://github.com/llvm/llvm-project/commit/6c53fb5dfe5df705348ba75c3918e16a8dbdba55
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/arm64-cvt-bitcast.ll

  Log Message:
  -----------
  [AArch64] Remove redundant fmovs when bitcasting from ext/trunc of bitcast (#175983)

The following can be used to reinterpret & extend a float, returning the
result as a double with the upper bits cleared:
  return bit_cast<double>((uint64_t)bit_cast<uint32_t>(x))

this currently results in two fmovs being generated, i.e.
  fmov    w8, s0
  fmov    d0, x8
  ret

This patch adds a pattern to improve this by using a single `fmov s0, s0`
instead, and also for the case where the integer value is truncated.


  Commit: d12019d5e52fd36651f29d5485875e847990172d
      https://github.com/llvm/llvm-project/commit/d12019d5e52fd36651f29d5485875e847990172d
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/lib/Conversion/ShardToMPI/CMakeLists.txt
    M mlir/lib/Conversion/ShardToMPI/ShardToMPI.cpp
    M mlir/lib/Dialect/Shard/Transforms/Transforms.cpp
    M mlir/test/Conversion/ShardToMPI/convert-shard-to-mpi.mlir

  Log Message:
  -----------
  [mlir][shard,mpi] lowering shard.all_slice in shard-to-mpi (#176438)

Lowering shard.all_slice in shard-to-mpi and reusing lowering for
shard.processmultindex.


  Commit: d1e02cd31ebc5b1908da76fdc6bf751bb9ea4a34
      https://github.com/llvm/llvm-project/commit/d1e02cd31ebc5b1908da76fdc6bf751bb9ea4a34
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp

  Log Message:
  -----------
  [clang-tidy] Improve readability-enum-initial-value diagnostic message (#176485)

Enhance the readability-enum-initial-value checker to list which
enumerators
are not initialized in notes. This makes it easier for users to identify
which
specific enumerators need explicit initialization.


  Commit: 8b77480a48dc4e643c0c61481b54ff4d821501b3
      https://github.com/llvm/llvm-project/commit/8b77480a48dc4e643c0c61481b54ff4d821501b3
  Author: Maurice Heumann <MauriceHeumann at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Parallel.cpp

  Log Message:
  -----------
  [Support] Join threads when stopping ThreadPoolExecutor (#166054)

When building LLVM as DLL, the `ThreadPoolExecutor` can cause deadlocks
on Windows.

The threads were previously only joined when the destructor of the
`ThreadPoolExecutor` is called, not when it's stopped. Destruction
happens when unloading the DLL, when the global destructors are called.

On Windows, `std::thread` uses `FreeLibraryAndExitThread` to cleanup a
thread. This requires access to the loader lock, when a thread
terminates. However, when destroying the pool, the loader lock is also
held, as the DLL is being unloaded. If the threads did not end fast
enough, the destructor would wait for them to join. At the same time,
the threads would wait for the destructor to release the loader lock.

Joining the threads when stopping the pool fixes that, as it ensures the
threads are stopped when calling `llvm_shutdown`, outside the loader
lock.


  Commit: ba2bd3fbba3a3d3985ba62144bb49e600ea469a4
      https://github.com/llvm/llvm-project/commit/ba2bd3fbba3a3d3985ba62144bb49e600ea469a4
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/source/Expression/IRInterpreter.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combiner-load-store-indexing.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll

  Log Message:
  -----------
  Use AllocaInst::getAllocationSize instead of manual size calculations (#176486)

Replace patterns that manually compute allocation sizes by multiplying
getTypeAllocSize(getAllocatedType()) by the array size with calls to the
getAllocationSize(DL) API, which handles this correctly and concisely,
returning nullopt for VLAs.

This fixes several places that were not accounting for array allocations
when computing sizes, simplifies code that was doing this manually, and
adds some explicit isFixed checks where implied convert was being used.

This PR is because now that we have opaque pointers, I hate that some
AllocaInst still has type information being consumed by some passes
instead of just using the size, since passes rarely handle that type
information well or correctly. I hope this will grow into a sequence of
commits to slowly eliminate uses of getAllocatedType from AllocaInst.
And similarly later to remove type information from GlobalValue too (it
can be replaced with just dereferenceable bytes, similar to arguments).

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 44f59bae39f0576b1807b18fafc1d56e83ef660f
      https://github.com/llvm/llvm-project/commit/44f59bae39f0576b1807b18fafc1d56e83ef660f
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/module/iso_c_binding.f90

  Log Message:
  -----------
  [flang] Fix ISO_C_BINDING type sizes for Windows (#172034)

Fix several ISO_C_BINDING type parameters for Windows compatibility:

- c_long/c_unsigned_long: Use 32-bit on Windows (LLP64 data model)
- c_long_double: Use 64-bit (kind=8) on Windows ARM64

https://github.com/Windows-on-ARM-Experiments/mingw-woarm64-build/issues/9#issuecomment-2573385824
- c_unsigned_long_long: Explicitly use c_uint64_t instead of depending
on c_unsigned_long
- c_uintmax_t: Use 64-bit on Windows (consistent with MSVC/MinGW)

Fixes issue reported in
https://github.com/msys2/MINGW-packages/pull/16579

🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 07a0e0fb31f1b4bee62d3947394c3a2e4e8a81d8
      https://github.com/llvm/llvm-project/commit/07a0e0fb31f1b4bee62d3947394c3a2e4e8a81d8
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/test/benchmarks/algorithms/modifying/copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_if.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/replace.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/sample.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/shuffle.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/swap_ranges.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.binary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.unary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/adjacent_find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/any_all_none_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/count.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/equal.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_end.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_first_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/is_permutation.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/mismatch.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/is_partitioned.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_point.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/stable_partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted_until.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/stable_sort.bench.cpp
    M libcxx/test/benchmarks/iterators/distance.bench.cpp

  Log Message:
  -----------
  [libc++] Remove benchmarks for ranges algorithms that have a std equivalent (#176138)

We're currently running all the algorithms benchmarks for the `std` and
`ranges` variants, even though almost all the algorithms share the same
code. This makes running the benchmarks on a large set of commits very
slow and costly. This reduced running the `algorithm/` subdirectory from
~4 hours to roughtly 2.5 hours.

Fixes #175973


  Commit: 0fadf42fea3fab2351cd00806def4418fb36b54f
      https://github.com/llvm/llvm-project/commit/0fadf42fea3fab2351cd00806def4418fb36b54f
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp

  Log Message:
  -----------
  [LLDB][NFC] use llvm::StringRef instead of std::string (#176748)


  Commit: da9551946990b16d4c4d717adc97c9a28a8f3470
      https://github.com/llvm/llvm-project/commit/da9551946990b16d4c4d717adc97c9a28a8f3470
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp

  Log Message:
  -----------
  [mlir][Interfaces][NFC] Improve return type of `getTerminatorPredecessorOrNull` (#176714)

The terminator is always a `RegionBranchTerminatorOpInterface` (or
"null"). There is no other way to construct a `RegionBranchPoint`.

Note: `RegionBranchPoint::predecessor` is still a `Operation *` due to
layering constraints. Storing a `RegionBranchTerminatorOpInterface`
would require a full definition of `RegionBranchTerminatorOpInterface`,
but `RegionBranchTerminatorOpInterface` cannot be defined before
`RegionBranchPoint` because it has default interface implementations
that construct a `RegionBranchPoint`.


  Commit: cdf551b80f346dcdb901c21ec880211f6a4317c9
      https://github.com/llvm/llvm-project/commit/cdf551b80f346dcdb901c21ec880211f6a4317c9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/Maintainers.md

  Log Message:
  -----------
  [libc++] Update maintainer list (#175044)

Libc++ has not had an official list of maintainers beyond its lead
maintainer. The LLVM Area Teams are seeking to update the list of
maintainers for subprojects, and I thought it would make sense to
document the de-facto maintainership status.


  Commit: ca0e6b7ebd9bdf33df93f3155adb97e260231f5d
      https://github.com/llvm/llvm-project/commit/ca0e6b7ebd9bdf33df93f3155adb97e260231f5d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    A llvm/test/CodeGen/Hexagon/constp-signed.ll

  Log Message:
  -----------
  [HexagonConstantPropagation] Use getSigned() (#176715)

The value is created via sign extension from a 32-bit value, so we
should use getSigned().


  Commit: 07bedda4d3612f61cde7ffdb4652d89e9d8f66d3
      https://github.com/llvm/llvm-project/commit/07bedda4d3612f61cde7ffdb4652d89e9d8f66d3
  Author: Fady Farag <com.webkit.iidmsa at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/src/experimental/time_zone.cpp

  Log Message:
  -----------
  [libc++] Remove redundant code after static_assert(false) (#176294)

Eliminate unreachable code after static_assert(false).


  Commit: 1537f743ac12bb610240cebd43abb8d721beebe9
      https://github.com/llvm/llvm-project/commit/1537f743ac12bb610240cebd43abb8d721beebe9
  Author: Fady Farag <com.webkit.iidmsa at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/docs/Contributing.rst
    M libcxx/lib/abi/README.TXT
    M libcxx/src/CMakeLists.txt
    M libcxx/src/include/refstring.h
    M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.permissions/permissions.pass.cpp

  Log Message:
  -----------
  [libc++] Use correct Apple platform naming (#176290)

`macOS` is Apple's official branding since 2016. Use the correct
branding instead.


  Commit: 4b066c7fff3455dc547fabb676583391febe41e9
      https://github.com/llvm/llvm-project/commit/4b066c7fff3455dc547fabb676583391febe41e9
  Author: Ryutaro Okada <140468571+sakupan102 at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgRelayoutOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/BlockPackMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/PackAndUnpackPatterns.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/python/mlir/dialects/linalg/__init__.py
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/roundtrip.mlir
    M mlir/test/python/dialects/linalg/ops.py

  Log Message:
  -----------
  [mlir][linalg] Extend linalg.pack and linalg.unpack to accept memref (#167675)

Extend linalg.pack and linalg.unpack to accept memref operands in
addition to tensors. As part of this change, we now disable all
transformations when these ops have memref semantics.

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

---------

Signed-off-by: Ryutaro Okada <1015ryu88 at gmail.com>
Co-authored-by: Hyunsung Lee <ita9naiwa at gmail.com>


  Commit: 44b3d7b482092e6f27c2875a4fc1ebfac295b814
      https://github.com/llvm/llvm-project/commit/44b3d7b482092e6f27c2875a4fc1ebfac295b814
  Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-ir2vec/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/Utils.cpp
    A llvm/tools/llvm-ir2vec/lib/Utils.h
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
    R llvm/tools/llvm-ir2vec/utils/CMakeLists.txt
    R llvm/tools/llvm-ir2vec/utils/utils.cpp
    R llvm/tools/llvm-ir2vec/utils/utils.h

  Log Message:
  -----------
  [NFC][llvm-ir2vec] Addressing llvm standards around adding a lib object for an llvm tool (#176756)

The following changes have beem made to address the comments here at
https://github.com/llvm/llvm-project/pull/174133#discussion_r2702525132

- Moved`llvm-ir2vec/utils` to `llvm-ir2vec/lib` 
- Fixed up the naming convention ` utils.h -> Utils.h , utils.cpp ->
Utils.cpp`
- Changed the lib object name from `emb-utils` to `LLVMEmbUtils` to
reflect the standard naming conventions
- Added the BUILDTREE_ONLY keyword to the CMakeList.txt for the library
object. The intent here is that the lib object is merely an
implementation helper for the tool, and is not meant to be installed and
used independently.


  Commit: 8ba629f8c33a3a006297f8ccba5df08a253098ec
      https://github.com/llvm/llvm-project/commit/8ba629f8c33a3a006297f8ccba5df08a253098ec
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [Flang][OpenMP] Permit EXTERNAL with DECLARE TARGET (#176337)

When DECLARE TARGET was used with a symbol that has the EXTERNAL
attribute, the Flang was rejecting the code as invalid. This PR fixes
this by allowing names with the EXTERNAL attribute to appear in DECLARE
TARGET directives.


  Commit: 82204a482bf7d1496560a6cd0cc61165d38a0ee2
      https://github.com/llvm/llvm-project/commit/82204a482bf7d1496560a6cd0cc61165d38a0ee2
  Author: Anonymous <138379976+YuXuan255 at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ilogbf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ilogbf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogbf.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 ilogbf implementation to header-only in src/__support/math folder. (#175522)

closes #175347 , part of #175344


  Commit: 196548988eb19c3264aeacc056e3432631a970d8
      https://github.com/llvm/llvm-project/commit/196548988eb19c3264aeacc056e3432631a970d8
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/Headers/amo.h
    M clang/lib/Sema/SemaPPC.cpp
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc-amo-header.c
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/test/CodeGen/PowerPC/amo-enable.ll

  Log Message:
  -----------
  [PowerPC] Add support for AMO store builtins (#170933)

This commit adds 4 Clang builtins for PowerPC AMO store operations:

__builtin_amo_stwat for 32-bit unsigned operations
__builtin_amo_stdat for 64-bit unsigned operations
__builtin_amo_stwat_s for 32-bit signed operations
__builtin_amo_stdat_s for 64-bit signed operations

and maps GCC's AMO store functions to these Clang builtins for
compatibility.


  Commit: 1ef2c399ae65b042943d299e6b891148e61101eb
      https://github.com/llvm/llvm-project/commit/1ef2c399ae65b042943d299e6b891148e61101eb
  Author: Lakreite <lakreite at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/FormatString.h

  Log Message:
  -----------
  [Clang][NFC] Fix comment indentation in clang/include/clang/AST/FormatString.h (#174780)

This commit fixes the indentation of a comment in
`clang/include/clang/AST/FormatString.h` to align with the LLVM style
guide (2 spaces instead of 4).

No functional changes - only formatting.

Related issue: None (trivial fix).


  Commit: d45ea8f60520833d5a062dd65e56f7e25f4e4f74
      https://github.com/llvm/llvm-project/commit/d45ea8f60520833d5a062dd65e56f7e25f4e4f74
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    A llvm/test/Transforms/CorrelatedValuePropagation/assume-operand-bundles.ll

  Log Message:
  -----------
  [LVI] Extract information from assume operand bundles (#176734)

This patch teaches LVI to extract information from assume operand
bundles. Specifically, it now uses nonnull and dereferenceable
information to remove comparisons to null pointers.


  Commit: 1ff53346b91a4c69a2c06cc430ec9ad99a75600e
      https://github.com/llvm/llvm-project/commit/1ff53346b91a4c69a2c06cc430ec9ad99a75600e
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for d12019d (#176764)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 1ec82570225aed6fecc61c9df2dd2760e0bce8a8
      https://github.com/llvm/llvm-project/commit/1ec82570225aed6fecc61c9df2dd2760e0bce8a8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [X86] Add initial support for ISD::CLMUL vXi32/vXi64 custom lowering (#176759)

These will be quicker if they are "scalarized" to use PCLMULQDQ and then
packed back together instead of the default expansion - 256-bit/512-bit
support will follow shortly.

vXi8/vXi16 look like they will be quicker without PCLMULQDQ, assuming we
can avoid so many multiplies after #176356 has landed.


  Commit: 8168577795e1e36f73ccba17f566343fb613a3da
      https://github.com/llvm/llvm-project/commit/8168577795e1e36f73ccba17f566343fb613a3da
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    A mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
    A mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    A mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    A mlir/test/Target/SPIRV/tosa-ops.mlir
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [mlir][spirv] Initial support for TOSA Extended Instruction Set (#174402)

This patch adds initial support for the TOSA Extended Instruction Set
(001000.1) to the SPIR-V dialect in MLIR. The TOSA extended instruction
set provides a standardized set of machine learning operations designed
to be used within `spirv.ARM.Graph` operations (corresponding to
OpGraphARM in SPV_ARM_graph) and typed with `!spirv.arm.tensor<...>`
(corresponding to OpTypeTensorARM in SPV_ARM_tensor).

The change introduces:
* Dialect plumbing for import, serialization, and deserialization of the
TOSA extended instruction set.
* The `spirv.Tosa.ArgMax` operation from TOSA extended instruction, each
lowering to the corresponding `OpExtInst`.
* Verification enforcing that `spirv.Tosa.ArgMax` appears only within
`spirv.ARM.Graph` regions, operates on `!spirv.arm.tensor<...>` types,
and is well-formed according to the TOSA 001000.1 specification.

Only the ArgMax operation from TOSA 001000.1 extended instructions is
introduced in order to show case the work needed: [arser, printer,
verifier, and round-trip tests using MLIR’s SPIR-V
serialization/deserialization infrastructure are included.

This work aligns with Khronos SPIR-V TOSA specifications.

Specification:
https://github.khronos.org/SPIRV-Registry/extended/TOSA.001000.1.html

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: fc9feee1efa870cbcf17cfee9bc15e57ecbccfd7
      https://github.com/llvm/llvm-project/commit/fc9feee1efa870cbcf17cfee9bc15e57ecbccfd7
  Author: neildhar <neildhar at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp

  Log Message:
  -----------
  [mlir][LLVM] Speed up `extractvalue(insertvalue)` canonicalization (#176478)

The current `ExtractValueOp::fold` implementation traverses the entire
chain of `InsertValueOp`s leading up to it. This can be extremely slow
if there are a huge number of `ExtractValueOp`s using values from the
same chain.

This PR improves this significantly in cases where a large number of the
`ExtractValueOp`s are actually reading from the same `InsertValueOp`.
That is, for patterns like:

```
%i0 = llvm.insertvalue %v0, %undef[0]
%i1 = llvm.insertvalue %v1, %0[1]
...
%i999 = llvm.insertvalue %v999, %998[999]
%e0 = llvm.extractvalue %i999[0]
%e1 = llvm.extractvalue %i999[1]
...
%e999 = llvm.extractvalue %i999[999]
```

In such cases, the resolution can be performed much faster using a
canonicalisation pattern on `InsertValueOp` that is applied to `%i999`,
because we can collect all of the `ExtractValueOp`s that use it, and
then do a single traversal of the chain to resolve them.

With this change, most of the resolution happens as part of the
`InsertValueOp` canonicalisation step, and there is much less work to do
when `ExtractValueOp::fold` is run.

Note that for now, this leaves the implementation of `ExtractValueOp`
as-is so the order in which patterns are applied affects whether we see
the speedup. This requires patterns to be applied in top-down order,
which is the default for the canonicaliser pass. I am separately working
on simplifying `ExtractValueOp::fold` to do less traversal, but that
requires some care to ensure existing cases are not pessimised.


  Commit: 1219cc76d13825e060c4c7eb133a430abe2d5f7e
      https://github.com/llvm/llvm-project/commit/1219cc76d13825e060c4c7eb133a430abe2d5f7e
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp

  Log Message:
  -----------
  [clang-tidy] Warn on use of std::get_temporary_buffer (#176191)

The STL function `std::get_temporary_buffer` was originally designed
with the intent of providing a more efficient implementation than the
general-purpose operator new, but no such implementation was created and
the API was deprecated (in C++17) and removed (in C++20).

As this function is difficult to use and provides no advantages, I think
(or at least hope) that nobody actually uses it; but given that it was
present in the official standard, I think tidy should be able to report
its bugprone nature. (It returns uninitialized memory, which can cause
subtle bugs, e.g. as in the last code example of the SEI CERT rule
EXP54-CPP.)


  Commit: dc9c08e6e0081ae0799597ba5f95ca5a6eddeac0
      https://github.com/llvm/llvm-project/commit/dc9c08e6e0081ae0799597ba5f95ca5a6eddeac0
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    A flang/test/Integration/debug-use-stmt.f90
    M flang/test/Transforms/debug-imported-entity.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir
    A flang/test/Transforms/debug-use-stmt.fir

  Log Message:
  -----------
  [flang][debug] Generate DWARF debug info using fir.use_stmt. (#168541)

This patch uses the fir.use_stmt operations to generate correct debug
metadata for use statement when `only` and `=>` are used. The debug flow
is changed a bit where we process the module globals first so that we
have the global variables when we start to process `fir.use_stmt`.
    
Fixes #160923.


  Commit: a66b8b7f51e118f029a8e8baeaada8588e41d92a
      https://github.com/llvm/llvm-project/commit/a66b8b7f51e118f029a8e8baeaada8588e41d92a
  Author: Benjamin Stott <Benjamin.Stott at sony.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/unittests/ADT/STLExtrasTest.cpp

  Log Message:
  -----------
  [STLExtras] Add a template for detecting whether two types can be compared for equality (#176429)

This is needed for https://github.com/llvm/llvm-project/pull/173026.


  Commit: d5fea7e4f0f2be1f0eae7a3f9e59860632134383
      https://github.com/llvm/llvm-project/commit/d5fea7e4f0f2be1f0eae7a3f9e59860632134383
  Author: Michael Halkenhäuser <MichaelGerald.Halkenhauser at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M openmp/tools/omptest/CMakeLists.txt
    M openmp/tools/omptest/test/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP][omptest] Improve CMake and address review comments (#159416)

Avoid explicit ABI breaking check deactivation
Replace whole-archive linking with dedicated build of GoogleTest lib

Addresses remaining post-merge review comments of
https://github.com/llvm/llvm-project/pull/154786


  Commit: c6f3bc888b77527c0837a9bab9b887130eab3f6d
      https://github.com/llvm/llvm-project/commit/c6f3bc888b77527c0837a9bab9b887130eab3f6d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll

  Log Message:
  -----------
  [LV] Add single-iteration epilogue test with de-generate reduction.

While at it, also modernize the check lines to reduce diff of future
changes.


  Commit: e03049ec0af2f589eb88e0708bfa357cdcc427ad
      https://github.com/llvm/llvm-project/commit/e03049ec0af2f589eb88e0708bfa357cdcc427ad
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang-rt/lib/runtime/time-intrinsic.cpp

  Log Message:
  -----------
  [flang-rt] Fix system_clock scaling on MacOS (#176753)

The less accurate clock was being adjusted for twice: once in
`GetSystemClockCountRate` and again in `ConvertTimevalToCount`.

Also adding missing `static` specifiers I noticed whilst reading the
file. I don't know of a way of meaningfully testing this in the
repository, but the code in the ticket now produces the correct result.

Fixes #176505


  Commit: 62b93d83a180c4ba83b366e4d11d2d07a33f307c
      https://github.com/llvm/llvm-project/commit/62b93d83a180c4ba83b366e4d11d2d07a33f307c
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/unittests/ADT/STLExtrasTest.cpp

  Log Message:
  -----------
  Revert "[STLExtras] Add a template for detecting whether two types can be compared for equality (#176429)"

This reverts commit a66b8b7f51e118f029a8e8baeaada8588e41d92a.

MSVC doesn't like it: https://lab.llvm.org/buildbot/#/builders/2/builds/42388/steps/7/logs/stdio
Thus we'll revert and examine that.


  Commit: efb57947bab1b9165fa44c447e776827fcd1d238
      https://github.com/llvm/llvm-project/commit/efb57947bab1b9165fa44c447e776827fcd1d238
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
    A clang/test/CodeGenSPIRV/Builtins/variadic.c
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/test/CodeGen/SPIRV/function/vararg.ll
    A llvm/test/CodeGen/SPIRV/function/variadics-lowering.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll

  Log Message:
  -----------
  [SPIR-V] Enable variadic function lowering for the SPIR-V target (#175076)

Summary:
We support variadic functions in AMDGPU / NVPTX via an LLVM-IR pass.
This patch applies the same handling here to support them on this
target.

I am unsure what the ABI should look like here, I have mostly copied the
one we use for NVPTX where it's basically a struct layout with natural
alignment. This wastes some space, which is why AMDGPU does not pad
them.

Additionally, this required allowing the SPIRV_FUNC calling convention.
I'm assuming this is compatible with the C calling convention in IR, but
I will need someone to confirm that for me.


  Commit: f7217e7438226ead5947cb3fa19fd8f1c210964b
      https://github.com/llvm/llvm-project/commit/f7217e7438226ead5947cb3fa19fd8f1c210964b
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  Fix bazel build for 44b3d7b (#176784)


  Commit: e34fefdb35aa647a23fdd0240c9c30e6c2f324ed
      https://github.com/llvm/llvm-project/commit/e34fefdb35aa647a23fdd0240c9c30e6c2f324ed
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/reduction-cost.ll

  Log Message:
  -----------
  [LV] Add extra tests with sink-able recipes.

Add extra test coverage for
https://github.com/llvm/llvm-project/pull/168031.


  Commit: b4e1c547c038fa605ced0fb6761ed871c1a45094
      https://github.com/llvm/llvm-project/commit/b4e1c547c038fa605ced0fb6761ed871c1a45094
  Author: neildhar <neildhar at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp

  Log Message:
  -----------
  [NFC][mlir] Clarify bail condition in ExtractValueOp::fold (#176583)

This bail condition was added before we added the traversal of nested
structs, which handles the case where insert position is a prefix of
extract position. So we only need to check for the extract position
being a prefix of the insert position here. Make the check clearer and
update the comment so it is less confusing.


  Commit: b37025639e5d86539affaf06e5ed585c09eaeff2
      https://github.com/llvm/llvm-project/commit/b37025639e5d86539affaf06e5ed585c09eaeff2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/Hexagon/fp16-promote.ll
    M llvm/test/CodeGen/Hexagon/libcall_tail.ll

  Log Message:
  -----------
  Hexagon: Use -mtriple instead of -march in a couple tests (#176790)

Most tests were converted to avoid -march in 2024.


  Commit: cbce5ed87306b117460dc2fe607e70251e4958ea
      https://github.com/llvm/llvm-project/commit/cbce5ed87306b117460dc2fe607e70251e4958ea
  Author: Aniket Singh <aniket.singh.3200.00 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [Inliner][NFC] Simplify blockaddress checks (#176044)

The exception for callbr dates back to an earlier time when callbr used
blockaddress. It no longer does, so the callbr exception is no longer
valid.

This patch removes the exception and simplifies the check. It now
rejects inlining immediately if a block address is taken, rather than
iterating through users.

Co-authored-by: Aniket Singh <amiket.singh.3200.00 at gmail.com>


  Commit: 010f6c8658da62e031fc02a1e3db6785884c2ddc
      https://github.com/llvm/llvm-project/commit/010f6c8658da62e031fc02a1e3db6785884c2ddc
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rda-entry-bb-is-a-loop.mir

  Log Message:
  -----------
  [ReachingDefAnalysis] Precommit a test showing wrong RDA behaviour. (#176434)


  Commit: 709d54bcebaa1e23f792809758eeaebd4d371cde
      https://github.com/llvm/llvm-project/commit/709d54bcebaa1e23f792809758eeaebd4d371cde
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/test/CodeGen/X86/isel-fpclass.ll

  Log Message:
  -----------
  [X86][GlobalIsel] Reland G_ISFPCLASS (#165848)

Earlier Attempt to support G_ISFPCLASS
https://github.com/llvm/llvm-project/pull/162232 broke EXPENSIVE_CHECKS
and was reverted.
Current Patch removes run for fail in EXPENSIVE_CHECKS.
Created issue to address failing case
https://github.com/llvm/llvm-project/issues/171992


  Commit: f529c05d200b22d4b7d49e7d45121eb3ee1c80be
      https://github.com/llvm/llvm-project/commit/f529c05d200b22d4b7d49e7d45121eb3ee1c80be
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/include/flang/Semantics/dump-expr.h

  Log Message:
  -----------
  [flang] Fix one legitimate warning found with -Werror (#175819)

Fix two legitimate warnings found by build bots the last time that I
tried to re-enable -Werror builds of flang-new by default, and turn it
back on for another try.


  Commit: b811df906e7884269050e46fd4d77946dedde5ed
      https://github.com/llvm/llvm-project/commit/b811df906e7884269050e46fd4d77946dedde5ed
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/lib/Parser/program-parsers.cpp
    A flang/test/Parser/bug135964.f90

  Log Message:
  -----------
  [flang] Fix parse error on !$ACC ROUTINE (#175856)

!$ACC ROUTINE is allowed to appear between program units, but we fail to
parse it when it is not followed by one, because its parser in
program-parsers.cpp doesn't consume the end of the line. Fix.

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


  Commit: e19faed907d722a48e482a44d28774ff51d6b405
      https://github.com/llvm/llvm-project/commit/e19faed907d722a48e482a44d28774ff51d6b405
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-purity.cpp
    M flang/lib/Semantics/check-purity.h
    A flang/test/Semantics/bug150820.f90
    M flang/test/Semantics/misc-intrinsics.f90
    M flang/test/Semantics/symbol03.f90

  Log Message:
  -----------
  [flang] Catch doubly-nested internal subprograms (#175992)

The check for double-nested internal subprograms is missing cases nested
in main programs.

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


  Commit: 455de5543c9e27f64563292ec57142da01e5fc5a
      https://github.com/llvm/llvm-project/commit/455de5543c9e27f64563292ec57142da01e5fc5a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/call03.f90
    A flang/test/Semantics/call46.f90

  Log Message:
  -----------
  [flang] Fix non-portable TYPE(*) usage in generic (#176235)

Fortran allows a scalar actual argument of any type to correspond with a
TYPE(*) dummy argument that is an assumed-size array. This usage isn't
portable, and it didn't work with a generic procedure with this
compiler, only specific procedures. It affected at least one API in
OpenMPI.

Fix generic resolution to allow for this case, add a distinguishability
test to detect generic interfaces that have ambiguous specific
procedures due to it, and add an optional portability warning (off by
default).


  Commit: 696b91aeb7e55d5fbc82b2e6a625f2a7ca4a6911
      https://github.com/llvm/llvm-project/commit/696b91aeb7e55d5fbc82b2e6a625f2a7ca4a6911
  Author: Michael Halkenhäuser <MichaelGerald.Halkenhauser at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M openmp/tools/omptest/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP][omptest] Fix CMake target properties (#176802)

Fix visibility of target properties:
 * INCLUDE_DIRECTORIES
 * COMPILE_DEFINITIONS

implicitly pulled in from `default_gtest`.

Fixes: https://github.com/llvm/llvm-project/pull/159416


  Commit: 2668f87fc64648c60444a38f949730f884c65d74
      https://github.com/llvm/llvm-project/commit/2668f87fc64648c60444a38f949730f884c65d74
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Update test to use update_llc_test_checks (#176595)


  Commit: 95bae40f3638ce9c067d44a0391fdbaba2761d64
      https://github.com/llvm/llvm-project/commit/95bae40f3638ce9c067d44a0391fdbaba2761d64
  Author: eleviant <56861949+eleviant at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s

  Log Message:
  -----------
  [AArch64] Add test for Cortex-A57 basic instructions (#176413)


  Commit: 014a6cdbb347bd8c436e132d55cbd682ba4d15fa
      https://github.com/llvm/llvm-project/commit/014a6cdbb347bd8c436e132d55cbd682ba4d15fa
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    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
    A llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_AMDGPU_MAD_U64_U32 (#176060)

Also add partial G_MUL support in the form of uniform S32 rule for G_MUL
since lowering G_AMDGPU_MAD_U64_U32 requires both uniform and divergent
S32 G_MUL.


  Commit: 7f8557cb2ef3065394d844cfd2c3592fcbaf4b90
      https://github.com/llvm/llvm-project/commit/7f8557cb2ef3065394d844cfd2c3592fcbaf4b90
  Author: neildhar <neildhar at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir

  Log Message:
  -----------
  [mlir] Always update ExtractValue to use last container in insert chain (#176588)

The current logic only updates the container operand to the last
`InsertValueOp` in a chain if we haven't switched to a nested insert
chain. Instead, keep track of the new container value and extract
position at all times, and always update if we have found a point higher
up in the chain to extract from.

This allows us to bypass more insertions (see the updated test) when we
are accessing nested struct members. It also allows us to move the
constant check back to the top, because we can just do it on a
successive call to fold.

Also added a test for a missing case (it is unchanged by this PR).


  Commit: cc4e7e7c921cfcb55bba35fc0a0ee6cd0a54b8d1
      https://github.com/llvm/llvm-project/commit/cc4e7e7c921cfcb55bba35fc0a0ee6cd0a54b8d1
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for S64 amdgcn_if_break (#176496)


  Commit: 1bad1697769464381056889539e9fc065eb585cf
      https://github.com/llvm/llvm-project/commit/1bad1697769464381056889539e9fc065eb585cf
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  llvm: Add LLVM_ABI_FOR_TEST annotations in VPlanValue (#176787)

This is needed to build LLVM as a DLL on Windows.

This effort is tracked in #109483.


  Commit: 73c1d99f7a4c76f1461885bba6de16342237989d
      https://github.com/llvm/llvm-project/commit/73c1d99f7a4c76f1461885bba6de16342237989d
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/test/Examples/feature-list-class.f90
    M flang/test/Examples/feature-list-functions.f90
    M flang/test/Examples/omp-atomic.f90
    M flang/test/Examples/omp-declarative-directive.f90
    M flang/test/Examples/omp-device-constructs.f90
    M flang/test/Examples/omp-in-reduction-clause.f90
    M flang/test/Examples/omp-nowait.f90
    M flang/test/Examples/omp-order-clause.f90
    M flang/test/Examples/omp-sections.f90
    M flang/test/Examples/print-fns-calls.f90
    M flang/test/Examples/print-fns-definitions.f90
    M flang/test/Examples/print-fns-interfaces.f90

  Log Message:
  -----------
  [flang][AIX] XFAIL tests that use plugin (NFC) (#176489)


  Commit: 027a86ba93035996b83c9484a467819425e87c44
      https://github.com/llvm/llvm-project/commit/027a86ba93035996b83c9484a467819425e87c44
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [LifetimeSafety] Track dereference operators for GSL pointers in STL (#176643)

Improve lifetime analysis for STL iterators in range-based `for` loops
by tracking dereference operator of GSL pointers.

Added support for dereference operators (`*`) for GSL pointers in STL to
track pointer value instead of `this` arg reference.

Tests:
- Removed a test which started to fail and didn't look correctly
annotated (?).
- Added new test cases for range-based for loop variables and iterator
arrow operators

## **Thoughts on overall direction:**

I feel we are twisting clang too much here to hardcode heuristics which
cannot be otherwise expressed through available annotations. This had
initially started by the intention of implicitly annotating STL to
benefit every implementation out there. But this has moved to a
direction where we have heuristics which cannot be anymore expressed by
annotations (like transparent accessors and inner pointers). This is
also a fallout of making [[clang::lifetimebound]] and [[gsl::*]]
annotations work together.

Some takeaways for me here are:
1. It is great to have inferred annotations for STL but they should be
expressible through explicit annotations especially when STL
implementers are willing to add these (e.g.
https://github.com/llvm/llvm-project/pull/112751).
2. We need a simple way to express transparent accessor functions of GSL
pointers.

### Transparent functions:
```cpp
int* transparent(int* in) { return in; }
```
There is no "outlives" constraint imposed by this function. Instead, it
introduces only an aliasing effect. The return value is an alias to
`in`. This aliasing effect can be expressed through
`clang::lifetimebound`.
```cpp
int* transparent(int* in [[clang::lifetimebound]]) { return in; }
```
Same is true for `view` types.
```cpp
// return view aliases 'in' which points to some char* owned by some 'std::string'.
// This helps in upholding the contract "that std::string should outlive the value returned here".
std::string_view transparent(std::string_view in [[clang::lifetimebound]]) { return in; }
```
This gets complicated when we have references to `view` types.
```cpp
// Not possible to annotate this to express the same effect/contract.
std::string_view transparent2(const std::string_view& in) { return in; }
```
This gets much harder when we want to express this for accessor methods
of view types as implicit this arg is always a reference.
```cpp
class [[gsl::Pointer]] MySpan {
  MySpan(MyVector<int>& v [[clang::lifetimebound]]);  // 'MySpan' should not outlive 'v'. Ok.
  // 'begin' aliases MySpan which aliases 'v'. No way to express this.
  const MyVector* begin() const { return begin; }
  const MyVector* end() const { return end; }
private:
  const MyVector* begin;
  const MyVector* end;
};

// Again possible to annotate free methods provided view types is accepted as a value.
const MyVector* getBegin(MySpan my_span [[clang::lifetimebound]]) { // returns the pointee of the pointer 'my_span'.
  return my_span.begin();
}
```

The problematic cases are quite similar though:
```cpp
std::string_view transparent2(const std::string_view& in) { return in; }

class [[gsl::Pointer]] MySpan {
  const MyVector* begin() const { return begin; }
};
```

These essentially talk about **inner** pointer. For `transparent2`, we
want to express that it aliases the inner pointer of `const
std::string_view&`. For `MySpan::begin()`, we want to the express that
it aliases the inner pointer of `const MySpan&` type which is the type
of implicit `this` parameter.

### Options:
- `[[clang::lifetimebound(2)]]`: Refer to the inner pointer after
peeling the outer pointer/reference. More generally
`[[clang::lifetimebound(x)]]` where `x` is a positive integer to peel
off `x` layers of pointers.

cc: @Xazax-hun


  Commit: 5a651a695293f506f60c3e8b99fe5acb7b3fffb7
      https://github.com/llvm/llvm-project/commit/5a651a695293f506f60c3e8b99fe5acb7b3fffb7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/tools/llc/llc.cpp

  Log Message:
  -----------
  llc: Construct RuntimeLibraryInfoWrapper with correct triple (#176798)

The target option processing here is unnecessarily confusing
and buggy. Depending on the combination of -march, -mtriple, and
an explicit module in the triple, the triple won't be set in the
IR module. "TheTriple" should be the one consistent with the
constructed TargetMachine.

This avoids a behavior change when SelectionDAG is switched to
using LibcallLoweringInfo.


  Commit: ca153a65e903940b1e9b99624f7f29c65f309ae8
      https://github.com/llvm/llvm-project/commit/ca153a65e903940b1e9b99624f7f29c65f309ae8
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/Lex/Preprocessor.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    R clang/test/Modules/Inputs/pch-config-macros/include/Mod1.h
    R clang/test/Modules/Inputs/pch-config-macros/include/module.modulemap
    R clang/test/Modules/pch-config-macros.c

  Log Message:
  -----------
  Revert "[clang][Modules] Fix unexpected warnings triggered by a PCH a… (#176499)

…nd a module with config macros (#174034)"

This reverts commit 71925cbdf80d4fc88ef844e726f89aa71c64bceb.

The test case is causing test failures on downstream Swift forks. This
PR reverts the commit to avoid failing the test case on Linux.

rdar://168174041


  Commit: 13c76404062974b4e166a387eebf4510cf4da9c1
      https://github.com/llvm/llvm-project/commit/13c76404062974b4e166a387eebf4510cf4da9c1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Fix incorrect indentation in DAGISelMatcherOpt.cpp. NFC


  Commit: d18687e97fffa47308784671491baff30066b551
      https://github.com/llvm/llvm-project/commit/d18687e97fffa47308784671491baff30066b551
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/test/CodeGen/RISCV/rda-entry-bb-is-a-loop.mir

  Log Message:
  -----------
  [ReachingDefAnalysis] Fix printing of RDA results. (#176474)


  Commit: 4d2af858f6a2c74e42837d60e840242f67157e99
      https://github.com/llvm/llvm-project/commit/4d2af858f6a2c74e42837d60e840242f67157e99
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Track dereference operators behind a flag (#176794)

Add a parameter to `shouldTrackImplicitObjectArg` to differentiate
between lifetime safety analysis and statement-local analysis.

The statement-local analysis was experiencing false positives when
tracking dereference operators for GSL pointers, so this change allows
for more aggressive tracking in the full analysis while being more
conservative in the statement-local analysis.

- Added a `RunningUnderLifetimeSafety` boolean parameter to
`shouldTrackImplicitObjectArg` function to distinguish between lifetime
safety analysis and Sema's statement-local analysis
- Enhanced tracking of dereference operators for GSL pointers in STL:
- Now tracks both `operator*` and `operator->` when running under
lifetime safety analysis
- Avoids tracking these operators in statement-local analysis to prevent
false positives


  Commit: 501645cbebf787794184eda48440bc03896a4f7b
      https://github.com/llvm/llvm-project/commit/501645cbebf787794184eda48440bc03896a4f7b
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__cxx03/cfloat
    M libcxx/include/__cxx03/module.modulemap
    M libcxx/include/cfloat
    R libcxx/include/float.h
    M libcxx/include/module.modulemap.in
    M libcxx/test/std/depr/depr.c.headers/float_h.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/c.limits/cfloat.pass.cpp

  Log Message:
  -----------
  [libc++] Remove libc++'s <float.h> (#175849)

The existence of <float.h> in libc++ leads to difficulties with modules,
especially when it comes to supporting the various __need macros
supported by the Clang builtin headers.

Fortunately, libc++'s <float.h> only defines FLT_EVAL_METHOD and
DECIMAL_DIG, which are already defined by the Clang builtin headers in
C++11 mode. Hence, removing the header entirely should have no impact,
apart from not defining FLT_EVAL_METHOD and DECIMAL_DIG in C++03 mode.
However, that is arguably something that libc++ shouldn't be doing: if
the underlying C library doesn't want to provide these definitions, then
libc++ shouldn't force it to.


  Commit: dd7348420d299d2e1a741e0ef823f04c69858da9
      https://github.com/llvm/llvm-project/commit/dd7348420d299d2e1a741e0ef823f04c69858da9
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h

  Log Message:
  -----------
  [libc++][NFC] Use forward declarations in {in,}out_ptr.h (#176341)

This doesn't improve compile times currently, but it does make it clear
that we don't need the definition of `shared_ptr` or `unique_ptr` for
`{in,}out_ptr`. It also reduces compile times quite a bit if we ever use
these utilities in another header.


  Commit: bbdb80a1b1be5eb9a1228121e79d3cfc8f4982d5
      https://github.com/llvm/llvm-project/commit/bbdb80a1b1be5eb9a1228121e79d3cfc8f4982d5
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
    M libcxx/CMakeLists.txt

  Log Message:
  -----------
  [libc++][NFC] Remove `LIBCXX_ENABLE_ASSERTIONS` (#176574)

Remove remnants of an obsolete (and removed) macro.


  Commit: 985d75a57abaabbd4de3aafd42145068d6bedd13
      https://github.com/llvm/llvm-project/commit/985d75a57abaabbd4de3aafd42145068d6bedd13
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] define FTM __cpp_lib_ranges_zip (#176569)

P2321R2 has been implemented in various PRs. Based on the discussion
in #105169, the last bit in iterator.concept.winc doesn't require
any changes, so we can actually mark this as done.

Fixes #105169


  Commit: 9aadbb716d1173d3a50d85e2fb17483604ab689a
      https://github.com/llvm/llvm-project/commit/9aadbb716d1173d3a50d85e2fb17483604ab689a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll

  Log Message:
  -----------
  [LAA] Check if access is part of loop in isNoWrap.

blockNeedsPredication does not support blocks outside of the loop. Bail
out for users outside the loop.

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


  Commit: bf6e9867c7193bf1d67814a681e707b771749614
      https://github.com/llvm/llvm-project/commit/bf6e9867c7193bf1d67814a681e707b771749614
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Update `__cpp_lib_flat_set` to `202511L` according to P3567R2 (#176297)

The paper was already implemented in LLVM22 in cd13170aea2,
but the previous patch forgot to update `__cpp_lib_flat_set`.

Fixes #176232.


  Commit: eb7adafc68dcf5a86ce916d93df6a1e34fbb9688
      https://github.com/llvm/llvm-project/commit/eb7adafc68dcf5a86ce916d93df6a1e34fbb9688
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/map-clause-v60.f90

  Log Message:
  -----------
  [flang][OpenMP] Allow ALLOC/RELEASE in place of STORAGE in 6.0 (#176810)

As per the 6.0 spec

> The value alloc may be used on map-entering constructs and the value
> release may be used on map-exiting constructs with identical meaning to
> the value storage.


  Commit: 2c9cc88e2557825d43a9fb1b009615d6dd8342c8
      https://github.com/llvm/llvm-project/commit/2c9cc88e2557825d43a9fb1b009615d6dd8342c8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h

  Log Message:
  -----------
  FastISel: Thread LibcallLoweringInfo through (#176799)

Boilerplate change to prepare to take LibcallLoweringInfo from
an analysis. For now, it just sets it from the copy inside of
TargetLowering.


  Commit: e97f7e9e78ad3d407691f18ffd3a6e60e7c4ac42
      https://github.com/llvm/llvm-project/commit/e97f7e9e78ad3d407691f18ffd3a6e60e7c4ac42
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/AsmParser/AsmParserContext.h

  Log Message:
  -----------
  [AsmParser] Add LLVM_ABI annotations in AsmParserContext (#176789)

This is needed to build LLVM as a DLL on Windows.

This effort is tracked in #109483.


  Commit: acb5ae4de921dce9729dc3ba7c0a564dfddf9587
      https://github.com/llvm/llvm-project/commit/acb5ae4de921dce9729dc3ba7c0a564dfddf9587
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/IntegerInclusiveInterval.h

  Log Message:
  -----------
  [ADT] Add LLVM_ABI annotations in IntegerInclusiveInterval (#176788)

This is needed to build LLVM as a DLL on Windows.

This effort is tracked in #109483.


  Commit: 4010cbb7cc3a7b48f958ac19d747a52abbd13190
      https://github.com/llvm/llvm-project/commit/4010cbb7cc3a7b48f958ac19d747a52abbd13190
  Author: Kim Gräsman <kim.grasman at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/lib/AST/DeclPrinter.cpp
    M clang/unittests/AST/DeclPrinterTest.cpp

  Log Message:
  -----------
  Add SuppressDeclAttributes printing policy (#175398)

This policy causes DeclPrinter to skip attributes entirely when printing
attribute lists, for brevity.

Removing attributes from a printed Decl post-facto is very hard (tm),
especially in the presence of more complex declaration syntax, such as
template requires-expressions, alignas-expressions, default values, etc.


  Commit: ca51c973b5feb0b7e9c798316b03d66d9ab338cf
      https://github.com/llvm/llvm-project/commit/ca51c973b5feb0b7e9c798316b03d66d9ab338cf
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxx/test/libcxx/strings/basic.string/nonnull.verify.cpp
    M libcxx/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp

  Log Message:
  -----------
  [libc++] Remove mentions of unsupported compiler version from tests (#176114)

clang-19, gcc-14 are no longer supported


  Commit: 69fbab2b72b1c9d5678ba6a6ad234e689ed9bce9
      https://github.com/llvm/llvm-project/commit/69fbab2b72b1c9d5678ba6a6ad234e689ed9bce9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll

  Log Message:
  -----------
  [VPlan] Fall back to legacy cost if operands may be force-scalarized.

If any of the operands of a VPReplicateRecipe have been
force-scalarized, then the legacy cost model skips the scalarization
overhead, but we cannot match this in the VPlan cost model.

Bail out for now in those very rare cases.

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


  Commit: 6990853d3b779b624cfb27452e0d6179e1c0d0b0
      https://github.com/llvm/llvm-project/commit/6990853d3b779b624cfb27452e0d6179e1c0d0b0
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/test/MC/Mips/set-sym-recursive.s

  Log Message:
  -----------
  MCAssembler: Write object only if there is no layout error (#176820)

Currently, parsing phase errors suppress `writeObject` while layout
errors don't. This patch suppresses `writeObject` for layout errors.
The output file would be discarded anyway.

This change allows us to test fixup value overflow using large fill
fragments (e.g. `.space 0x80000000`) without wasting time on the unused
temporary object file.


  Commit: f734f42bb0c3800092d7aecaf934b6c8e85dd088
      https://github.com/llvm/llvm-project/commit/f734f42bb0c3800092d7aecaf934b6c8e85dd088
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/tools/llc/new-pm/start-stop.ll

  Log Message:
  -----------
  DAG: Take LibcallLoweringInfo from analysis (#176800)

Previously this was taking a duplicate copy of this information
from TargetLowering. This moves the bulk of libcall checks to use
the new analysis. There are still a few straggler uses in misc.
passes in a few backends (mainly AArch64 has some libcall emission
in FinalizeISel and PrologEpilogInserter).


  Commit: 1711e0074fd47b61c0ef760df030bdcb4c012c4f
      https://github.com/llvm/llvm-project/commit/1711e0074fd47b61c0ef760df030bdcb4c012c4f
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll

  Log Message:
  -----------
  [AMDGPU] Extend RA hints to handle VGPR_16_Lo128 (#176819)


  Commit: 019eb855dd6a18a8f7ae5dd86abf6bc3ad0d9fa4
      https://github.com/llvm/llvm-project/commit/019eb855dd6a18a8f7ae5dd86abf6bc3ad0d9fa4
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 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:
  -----------
  [MemCpyOpt] support offset slices for performStackMoveOptzn and processMemCpy (#176436)

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


  Commit: e02c79a85ac31446a0022a15a3247599c928bef4
      https://github.com/llvm/llvm-project/commit/e02c79a85ac31446a0022a15a3247599c928bef4
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M libcxxabi/src/cxa_personality.cpp

  Log Message:
  -----------
  [libc++abi] Remove old workaround for detecting libunwind (#176009)

This workaround should no longer be relevant since we don't support
building against libunwind headers from LLVM 14.


  Commit: db48679835d316a420fece71f17a14633497cce3
      https://github.com/llvm/llvm-project/commit/db48679835d316a420fece71f17a14633497cce3
  Author: Syadus Sefat <42645939+mssefat at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/scalar-float-sop1.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Pre-commit tests for f16<->i32 conversions (#176630)

This patch adds tests showing current AMDGPU codegen for f16 to i32 and
i32 to f16 conversions.

These tests will be updated in a follow-up PR with modified
SOPInstructions.td that will have an effect on the tests.


  Commit: 39bd4562ba8390a65590e581d04d369c2c8e2d84
      https://github.com/llvm/llvm-project/commit/39bd4562ba8390a65590e581d04d369c2c8e2d84
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/amdgpu-features-illegal.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-wave32-func-attr.cl
    M flang/test/Driver/target-cpu-features-invalid.f90
    M llvm/lib/TargetParser/TargetParser.cpp

  Log Message:
  -----------
  [Clang][AMDGPU] Handle `wavefrontsize32` and `wavefrontsize64` features more robustly (#176599)

We should not allow `-wavefrontsize32` and `-wavefrontsize64` to be
specified at the same time. We should also not allow `-wavefrontsize32`
on a target that only supports `wavefrontsize32`, and the vice versa.


  Commit: 9ea2c5fcdda860cb05ebd0f4ad171d21c296bec7
      https://github.com/llvm/llvm-project/commit/9ea2c5fcdda860cb05ebd0f4ad171d21c296bec7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp

  Log Message:
  -----------
  GlobalISel: Use LibcallLowering to get libcall calling conventions (#176837)

0e304e6d9f306ead81fc5177b8a497af0d416a73 converted the name queries,
but missed some of the calling conventions.


  Commit: 92aa47a9f71a5fb50b4345b41605b23368dd19da
      https://github.com/llvm/llvm-project/commit/92aa47a9f71a5fb50b4345b41605b23368dd19da
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_x86-64-freebsd-triple.s

  Log Message:
  -----------
  [JITLink][x86-64] Add testcase for ELF LinkGraph triple fix. (#176707)

Adds a testcase for the fix in ba6a59c8750.


  Commit: fdf8bbd951671439d17a2d01b7bfa637767e0b9e
      https://github.com/llvm/llvm-project/commit/fdf8bbd951671439d17a2d01b7bfa637767e0b9e
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Detect dangling references to field members (#176805)

Add support for detecting dangling references to struct fields in the CFG-based lifetime analysis.
The tests now include cases where accessing fields of temporary objects leads to dangling references, which are properly detected.


- Added `VisitMemberExpr` method to the `FactsGenerator` class to handle field member expressions
- Implemented the method to create origin flow facts for field member expressions
- Updated tests to include CFG-based warnings for dangling references to struct fields
- Fixed previously disabled tests that can now detect these issues

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


  Commit: 689b8a3ed4e1f693a3c8029f0d42cbb69a2cf3ae
      https://github.com/llvm/llvm-project/commit/689b8a3ed4e1f693a3c8029f0d42cbb69a2cf3ae
  Author: Prathamesh Tagore <63031630+meshtag at users.noreply.github.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/ForallToFor.cpp
    M mlir/test/Dialect/SCF/forall-to-for.mlir

  Log Message:
  -----------
  [mlir][scf] Skip ops having results with warning in forall-to-for pass (#175926)

Avoid converting scf.forall ops that have results in forall-to-for pass.
Emit a warning instead of failing the pass, so mlir-opt can still
produce output on mixed IR.

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


  Commit: 80fe7964ee3e497429dfd09bf8fd27ddae06d3e2
      https://github.com/llvm/llvm-project/commit/80fe7964ee3e497429dfd09bf8fd27ddae06d3e2
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-binaries: Fix digest generation on macOS (#176440)

The sha256sum command is not available on macOS runners.


  Commit: daf199b6988b955e603da288a2f1e9888ae0c155
      https://github.com/llvm/llvm-project/commit/daf199b6988b955e603da288a2f1e9888ae0c155
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/lib/BUILD.gn
    R llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/utils/BUILD.gn

  Log Message:
  -----------
  [gn] port 44b3d7b482


  Commit: 6a6d432550598a59605ee062bd0e35c9d452c0c5
      https://github.com/llvm/llvm-project/commit/6a6d432550598a59605ee062bd0e35c9d452c0c5
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/utils/gn/build/remove_if_exists.py
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn] port 501645cbebf78 (float.h removal)

Also add a little script to clean up incremental builds.


  Commit: bc3066bb22323032469f0a69f673b4e5b1d86df3
      https://github.com/llvm/llvm-project/commit/bc3066bb22323032469f0a69f673b4e5b1d86df3
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-lit: Update workflow and enable trusted publishing with pypi (#174907)

This makes some small improvements to the workflow including using some
more modern python packaging modules and also enables the trusted
publishing for pypi. This will allow us to publish lit packages to pypi
without needing to use an access token.

This action also now uses the pypi environment which will only publish
files when triggered by an llvm-* tag.


  Commit: 007f1af30eeb5604c04b0fd563af86c23dedbd5c
      https://github.com/llvm/llvm-project/commit/007f1af30eeb5604c04b0fd563af86c23dedbd5c
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll

  Log Message:
  -----------
  [AMDGPU] Use APInt in performSetCCCombine (#176564)

Fixes #176559.


  Commit: be40637a8a9c5fa99457856254e3dbe29b5aac58
      https://github.com/llvm/llvm-project/commit/be40637a8a9c5fa99457856254e3dbe29b5aac58
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaLambda.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp

  Log Message:
  -----------
  [Clang] Ensure a lambda DeclContext in BuildLambdaExpr (#176319)

Since 5f9630b388, we only remove the LSI after the evaluation context is
popped. The TreeTransform of immediate functions may call getCurLambda,
which requires both the paired LSI and the lambda DeclContext. In
TransformLambdaExpr, we already switched the context, but this is not
the case when parsing a lambda expression.

No release note, as this is a regression from 22.

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


  Commit: 53ae317ed28b71c991309d38a7171a3173f364d7
      https://github.com/llvm/llvm-project/commit/53ae317ed28b71c991309d38a7171a3173f364d7
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/enable_if.cpp

  Log Message:
  -----------
  [Clang] Check enable_if attribute without delayed diagnostics (#176080)

We ensure immediate access control checking when evaluating the
enable_if attribute to rule out inaccessible constructors during
potential overload resolution, treating them as SFINAE errors rather
than hard errors, making the behavior more preferable with the nature of
the enable_if attribute.

Compared to the last patch, we now avoid switching the DC directly
because there are cases where we're checking enable_if attribute within
a lambda and getCurLambda() requires a lambda context to distinguish
from template instantiation.

This reapplies #175899

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


  Commit: 7dc2cd4c6840f0c3eeca4d822709a7605836d000
      https://github.com/llvm/llvm-project/commit/7dc2cd4c6840f0c3eeca4d822709a7605836d000
  Author: Kartik <agarwala.kartik at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Handle corner condition for sign negation (#176390)

RHS = -RHS works for most cases, however, the behaviour when RHS is
INTXX_MIN is undefined. In these particular case(s), we should use
INTXX_MAX instead.

Fixes #176271.


  Commit: e358638ce1d18797024a810af1af6ab648e4d6dd
      https://github.com/llvm/llvm-project/commit/e358638ce1d18797024a810af1af6ab648e4d6dd
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/convolution/roundtrip-convolution.mlir

  Log Message:
  -----------
  [Linalg] Support i1 data type in matchConvolutionOpOfType utility (#176704)

-- Extend bodyMatcherForConvolutionOps to recognize arith.ori/arith.andi
   for i1 element types (in addition to add/mul for integer/float types)
   for accumulation and multiplication.
-- Similarly, extend bodyMatcherForSumPoolOps to recognize arith.ori for
   i1 accumulation (in addition to add for integer/float types).

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


  Commit: 35e200c8fc0fae711b484f2736c3171e3c638d3c
      https://github.com/llvm/llvm-project/commit/35e200c8fc0fae711b484f2736c3171e3c638d3c
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir

  Log Message:
  -----------
  [AMDGPU] Pre-commit test for WMMA NOP hoisting optimization (#176745)

Add test showing current behavior where V_NOP instructions for WMMA
coexecution hazards are inserted inside loop bodies at the use-site. A
future patch will hoist these NOPs to loop preheaders to reduce
redundant execution.

---------

Co-authored-by: Christudasan Devadasan <christudasan.devadasan at amd.com>


  Commit: 7b8b23a84ddbec55b91cd9f3b3f259a9e21cc88b
      https://github.com/llvm/llvm-project/commit/7b8b23a84ddbec55b91cd9f3b3f259a9e21cc88b
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/riscv-show-inst.test
    M llvm/utils/update_mc_test_checks.py

  Log Message:
  -----------
  [update_mc_test_checks] Support --show-inst output

This is useful to check that the correct registers were used in cases
where different register classes use the same name in asm input/output.

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


  Commit: ae1ee0d3774fdc4098e0b9f78e71c0f91c42eb8a
      https://github.com/llvm/llvm-project/commit/ae1ee0d3774fdc4098e0b9f78e71c0f91c42eb8a
  Author: Amit Tiwari <amtiwari at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    R clang/test/OpenMP/target_update_strided_messages.c
    A clang/test/OpenMP/target_update_strided_messages_from.c
    A clang/test/OpenMP/target_update_strided_messages_to.c
    R clang/test/OpenMP/target_update_strided_multiple_messages.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_from.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_to.c
    R clang/test/OpenMP/target_update_strided_partial_messages.c
    A clang/test/OpenMP/target_update_strided_partial_messages_from.c
    A clang/test/OpenMP/target_update_strided_partial_messages_to.c
    R offload/test/offloading/strided_multiple_update.c
    A offload/test/offloading/strided_multiple_update_from.c
    A offload/test/offloading/strided_multiple_update_to.c
    R offload/test/offloading/strided_partial_update.c
    A offload/test/offloading/strided_partial_update_from.c
    A offload/test/offloading/strided_partial_update_to.c
    R offload/test/offloading/strided_update.c
    A offload/test/offloading/strided_update_from.c
    A offload/test/offloading/strided_update_to.c

  Log Message:
  -----------
  [Offload][Tests] Non-contiguous_update_to_tests (#169623)

PR #144635 enabled non-contiguous updates for both `update from` and
`update to` clauses, but tests for `update to` were missing. This PR
adds those missing tests to ensure coverage.


  Commit: 5fec9fb3cf76d23c065f157a0eff824fb09e543f
      https://github.com/llvm/llvm-project/commit/5fec9fb3cf76d23c065f157a0eff824fb09e543f
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll

  Log Message:
  -----------
  [AMDGPU] Enable ISD::{FSIN,FCOS} custom lowering to work on v2f16 (#176382)

Currently ISD::FSIN and ISD::FCOS of type MVT::v2f16 are legalized by
first expanding and then using a custom lowering on the resulting f16
instructions. This ordering prevents using packed math variants of the
instructions introduced by the legalization (e.g. the multiplication) and
makes it difficult to deal with the resulting IR in peephole
optimizations (e.g. si-peephole-sdwa).

Change the legalization action for ISD::FSIN and ISD::FCOS of type
MTF::v2f16 to Custom and change the custom trig lowering to deal
with vectors.


  Commit: 55818365cf852b10a0d000df9a5250afc5a456e3
      https://github.com/llvm/llvm-project/commit/55818365cf852b10a0d000df9a5250afc5a456e3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Remove unused argument from EmitHistogram. NFC


  Commit: 009e0ccbbcb5d33dcf864efea177a82175962816
      https://github.com/llvm/llvm-project/commit/009e0ccbbcb5d33dcf864efea177a82175962816
  Author: wanglei <wanglei at loongson.cn>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/test/CodeGen/LoongArch/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/flog2.ll

  Log Message:
  -----------
  Revert "[LoongArch] Lowering flog2 to flogb (#162978)"

This reverts commit d9e5e725ed33e462477d5559ffece0d08e9c8dad.

The semantics of `flog2(x)` and `logb(x)` are different.

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

Reviewers: zhaoqi5, SixWeining, ylzsx

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


  Commit: 7776eaa850077cbd77edfe57fc1c2cf878fbe95d
      https://github.com/llvm/llvm-project/commit/7776eaa850077cbd77edfe57fc1c2cf878fbe95d
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-19 (Mon, 19 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    A llvm/test/MC/X86/Relocations/fixup-overflow-32.s
    A llvm/test/MC/X86/Relocations/fixup-overflow.s
    A llvm/test/MC/X86/Relocations/jcxz-loop-overflow.s
    R llvm/test/MC/X86/x86-jcxz-loop-fixup.s

  Log Message:
  -----------
  [X86AsmBackend] Check fixup value overflow (#176827)

GNU Assembler has a generic error checking for overflowed fixup values
```
y.s:5: Error: value of 8000000000000000 too large for field of 4 bytes at 0000000000000004
```

In contrast, we have had an assertion that may fail for a long time.
https://reviews.llvm.org/D70652 improved the status by adding an
overflow check for PC-relative fixups, but missed other cases (#116899).

This patch improves the overflow check to resemble GAS.

For `.long x`, GAS accepts `x` if its value is in the range `(-2**32,
2**32)`. This design allows `.long x` to work regardless of signedness.
When a symbol is involved, GAS supports both `.long sym-0xffffffff` and
`.long sym+1`, as well as `.long sym+0xffffffff` and `.long sym-1`.
However,
`.long sym+0x100000000` is rejected in favor of `.long sym+0`.

The underlying check asks: "can this value be truncated to 32 bits
without losing bit-pattern information?" The accepted range is the union
of:

* uint32_t values: `[0, 2**32)`
* int32_t values: `[-2**31, 2**31)`
* Negative values that fit in 33 bits: `(-2**32, 0]`

The union gives `(-2**32, 2**32)`.

Note: Currently only PC-relative fixups are treated as signed.
GAS treats more fixups (e.g. unresolved R_X86_64_32S used in `mov`) as
signed.


  Commit: 556ca6ac6c8b4be3ef319af8213e16b0fe1e2f12
      https://github.com/llvm/llvm-project/commit/556ca6ac6c8b4be3ef319af8213e16b0fe1e2f12
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll

  Log Message:
  -----------
  [CodeGen] Set pseudo probe desc comdat symbol to external for COFF (#176706)

lld-link performs COMDAT sections deduplication only when COMDAT symbol
is external.


  Commit: d09fac453640fa1b174a82f707c4e5c063544b4b
      https://github.com/llvm/llvm-project/commit/d09fac453640fa1b174a82f707c4e5c063544b4b
  Author: Konrad Kleine <kkleine at redhat.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [libclc] compile w/o linking builtins with SPIRV backend (#176732)

As we're only building a single file, there is no need to link. This
avoids a dependency on spriv-link when we're using the native SPIRV
backend.


  Commit: 24131e9a573d7f106c40f8961413baabbf9d2554
      https://github.com/llvm/llvm-project/commit/24131e9a573d7f106c40f8961413baabbf9d2554
  Author: Weibo He <NewSigma at 163.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/test/Instrumentation/AddressSanitizer/skip-coro.ll
    A llvm/test/Transforms/Coroutines/coro-cleanup-noop-erase.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll

  Log Message:
  -----------
  [Coroutines] Implement elision for noop coroutines (#174353)

This patch proposes to implement noop coroutine elision. It contains two
parts:

1. Lower `coro.noop` in CoroCleanup instead of CoroEarly, thereby
exposing it to other middle end passes.
2. CoroCleanup erases resume and destroy calls for the noop coroutine.
If a `coro.noop` ends up having no users, the pass erases the call to
`coro.noop`, avoiding the allocation of its frame.


  Commit: 19c7eb358b8aeed0cb6b8f4703455eba4e9a6f1f
      https://github.com/llvm/llvm-project/commit/19c7eb358b8aeed0cb6b8f4703455eba4e9a6f1f
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M libcxx/include/__chrono/day.h
    M libcxx/include/__chrono/hh_mm_ss.h
    M libcxx/include/__chrono/literals.h
    M libcxx/include/__chrono/month.h
    M libcxx/include/__chrono/month_weekday.h
    M libcxx/include/__chrono/monthday.h
    M libcxx/include/__chrono/weekday.h
    M libcxx/include/__chrono/year.h
    M libcxx/include/__chrono/year_month.h
    M libcxx/include/__chrono/year_month_day.h
    M libcxx/include/__chrono/year_month_weekday.h
    M libcxx/test/libcxx/time/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][chrono] Applied `[[nodiscard]]` to The Civil Calendar (#174968)

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/time.cal

Towards #172124


  Commit: 17370e0478d5b0c34a031b81e427f4f6436fb2a1
      https://github.com/llvm/llvm-project/commit/17370e0478d5b0c34a031b81e427f4f6436fb2a1
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/nontemporal-store-optsize.ll
    A llvm/test/CodeGen/AArch64/nontemporal-store.ll
    R llvm/test/CodeGen/AArch64/nontemporal.ll

  Log Message:
  -----------
  [AArch64] Prioritize STNP patterns for !nontemporal (#174138)

This patch prioritizes lowering using STNP patterns over temporal store
patterns for store instructions marked `!nontemporal`. We should
generally prioritize STNP lowering for non-temporal stores, here it
costs extra instructions for address calculation, but its explicitly
hinted by the developer so the gain from the memory subsystem should be
more significant. It adds test cases for register offset stores where
the mixed lowering has been observed.

The `AArch64stnp` pattern is sinked under `isLE` but it doesnt change
functionality because it is only matched when the custom lowering code
in `AArch64ISelLowering.cpp` prepares for it and its guarded by
`isLittleEndian()` check.

Haven't observe a significant compile time impact that could have stem
from matching more failed patterns for each store.


  Commit: 45a0f9cc1b1547430c9329b95a0090d5722e907e
      https://github.com/llvm/llvm-project/commit/45a0f9cc1b1547430c9329b95a0090d5722e907e
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-vscale.i64.ll

  Log Message:
  -----------
  [DAGCombiner] Fold min/max vscale, C -> C (#174708)

This fixes a regression in #174693 caused by using ISD::UMIN to clamp
offset into a vector address.

For (umin x, y) if we know the minimum value of x is >= the maximum
value of y, then y will always be the smaller operand and we can fold to
y.

We can do similar folds for umax, smin and smax too.

In practice the only time we get a useful ConstantRange is with VScale
and a constant RHS, so this patch limits it to this case. I tried
generalizing it with computeKnownBits but it didn't have any effect on
existing tests.


  Commit: 0c1257cd46456513016b106d964dc5ad47c6289b
      https://github.com/llvm/llvm-project/commit/0c1257cd46456513016b106d964dc5ad47c6289b
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll

  Log Message:
  -----------
  [RISCV] Fix i64 gather/scatter cost on rv32 (#176105)

Fixes #175909

We compute the cost of a gather/scatter by multiplying the cost of the
scalar element type memory op by the estimated number of elements. On
rv32 though a scalar i64 load costs 2, even if we have zve64x.

This causes the cost to diverge between a vector of f64 and vector of
i64, even though both are the same. This fixes it by just using
TTI::TCC_Basic as the scalar memory op cost. The element type is checked
to be legal at this point.

I think we have the same issue for the strided op cost, but we don't
have test coverage for it yet.


  Commit: 5d6d1d9e6c42d09e75b0ed5f6ba79749395d0ee9
      https://github.com/llvm/llvm-project/commit/5d6d1d9e6c42d09e75b0ed5f6ba79749395d0ee9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp

  Log Message:
  -----------
  GlobalISel: Use LibcallLoweringInfo in IRTranslator for real (#176824)


  Commit: 69df4acf33ee2055718fae1b404ae1b53556c41c
      https://github.com/llvm/llvm-project/commit/69df4acf33ee2055718fae1b404ae1b53556c41c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp

  Log Message:
  -----------
  WebAssembly: Use LibcallLoweringInfo (#176804)

Query libcalls through analysis instead of the TargetLowering
copy. This could be nicer by parsing the libcall name and checking
against the LibcallImpl, but that's probably slower for such a specific
case (alternatively, ExternalSymbol should support encoding as a
LibcallImpl).


  Commit: b691522e75e05af5ba594e250dc947a9c27802ba
      https://github.com/llvm/llvm-project/commit/b691522e75e05af5ba594e250dc947a9c27802ba
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    M llvm/lib/Target/AArch64/AArch64Processors.td

  Log Message:
  -----------
  [AArch64] Disable FEAT_RNG on Grace. (#166387)

The FIXME in the test changed should be cleared by #176340.


  Commit: b16e77898946d7f78207a96b29e49b3e260c45ff
      https://github.com/llvm/llvm-project/commit/b16e77898946d7f78207a96b29e49b3e260c45ff
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/test/tools/llvm-readobj/ELF/note-core.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [llvm][llvm-readobj] Add AArch64 NT_ARM_POE note type (#174948)

This note contains register values for the AArch64 Permission Overlay
Extension (POE).


  Commit: 3eed0511c044242ac05508e44585dd21b59dffbd
      https://github.com/llvm/llvm-project/commit/3eed0511c044242ac05508e44585dd21b59dffbd
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [SelectionDAG] NFC: Remove redundant assert in ComputeNumSignBits.

This assert should not have existed, because just below it the code
bails out for that same condition. The case of the vector being a
scalable vector also shouldn't cause the compiler to crash with an
assertion failure, and instead it should just avoid analysing the
expression.


  Commit: a2a5cda0bcf0ad5893eacfea3daff90d597814b9
      https://github.com/llvm/llvm-project/commit/a2a5cda0bcf0ad5893eacfea3daff90d597814b9
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-cache.f90

  Log Message:
  -----------
  [flang][acc] Fix cache directive for derived type components (#176022)

Fix the OpenACC cache directive to correctly handle derived type
designators (e.g., `data%array(i-4:i+4)`). The original implementation
assumed all cache operands were simple variables with symbols in the
symbol map. For derived type components, use
`gatherDataOperandAddrAndBounds()` to get the component address and
`addComponentOverride()` so subsequent accesses use the cached value.


  Commit: 3ca2a5fc0b84762f0e7d8a0e613fd69f7e344219
      https://github.com/llvm/llvm-project/commit/3ca2a5fc0b84762f0e7d8a0e613fd69f7e344219
  Author: Benjamin Lerman <qsr at chromium.org>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    A llvm/test/CodeGen/AArch64/no-xzr-liveins.mir

  Log Message:
  -----------
  [LivePhysRegs][AArch64] Remove XZR from live registers (#176324)

XZR is always a zero, and cannot be clobbered.

Co-authored-by: Benjamin Lerman <qsr at google.com>


  Commit: 1da403937eb9f48b2de9c27ba1aa0eba50bfdf5f
      https://github.com/llvm/llvm-project/commit/1da403937eb9f48b2de9c27ba1aa0eba50bfdf5f
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Lex/CodeCompletionHandler.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/ModuleLoader.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Lex/TokenLexer.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/TokenKinds.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Lex/TokenLexer.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/test/CXX/basic/basic.link/p3.cpp
    M clang/test/CXX/basic/basic.scope/basic.scope.namespace/p2.cpp
    A clang/test/CXX/drs/cwg2947.cpp
    M clang/test/CXX/lex/lex.pptoken/p3-2a.cpp
    M clang/test/CXX/module/basic/basic.link/module-declaration.cpp
    A clang/test/CXX/module/cpp.pre/p1.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.import/p1.cppm
    A clang/test/Lexer/cxx20-module-directive.cpp
    M clang/test/Modules/pr121066.cpp
    M clang/test/Modules/preprocess-named-modules.cppm
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html

  Log Message:
  -----------
  Reapply "[C++20][Modules] Implement P1857R3 Modules Dependency Discovery" (#173130)" (#173789)

The patch reapply https://github.com/llvm/llvm-project/pull/173130.

This patch implement the following papers:
[P1857R3 Modules Dependency Discovery](https://wg21.link/p1857r3).
[P3034R1 Module Declarations Shouldn’t be
Macros](https://wg21.link/P3034R1).
[CWG2947](https://cplusplus.github.io/CWG/issues/2947.html).

At the start of phase 4 an import or module token is treated as starting
a directive and are converted to their respective keywords iff:

 - After skipping horizontal whitespace are
    - at the start of a logical line, or
    - preceded by an export at the start of the logical line.
- Are followed by an identifier pp token (before macro expansion), or
    - <, ", or : (but not ::) pp tokens for import, or
    - ; for module
Otherwise the token is treated as an identifier.

Additionally:

- The entire import or module directive (including the closing ;) must
be on a single logical line and for module must not come from an
#include.
- The expansion of macros must not result in an import or module
directive introducer that was not there prior to macro expansion.
- A module directive may only appear as the first preprocessing tokens
in a file (excluding the global module fragment.)
- Preprocessor conditionals shall not span a module declaration.

After this patch, we handle C++ module-import and module-declaration as
a real pp-directive in preprocessor. Additionally, we refactor module
name lexing, remove the complex state machine and read full module name
during module/import directive handling. Possibly we can introduce a
tok::annot_module_name token in the future, avoid duplicatly parsing
module name in both preprocessor and parser, but it's makes error
recovery much diffcult(eg. import a; import b; in same line).

This patch also introduce 2 new keyword `__preprocessed_module` and
`__preprocessed_import`. These 2 keyword was generated during `-E` mode.
This is useful to avoid confusion with `module` and `import` keyword in
preprocessed output:
```cpp
export module m;
struct import {};
#define EMPTY
EMPTY import foo;
```

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

The previous patch has an use-after-free issue in
Lexer::LexTokenInternal function. Since C++20, the `export`, `import`
and `module` identifiers may be an introducer of a C++ module
declaration/importing directive, and the directive will handled in
`LexIdentifierContinue`. Unfortunately, the EOF may be encountered in
`LexIdentifierContinue` and `CurLexer` might be destructed in
`HandleEndOfFile`, If the code after `LexIdentifierContinue` try to
access `LangOps` or other class members in this Lexer, it will hit
undefined behavior.

This patch also fix the use-after-free issue in Lexer by introduce a
mechanism to delay the destruction of `CurLexer` in `Preprocessor`
class.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 82b5ea7bda692113de94d57c3f851dbf29936891
      https://github.com/llvm/llvm-project/commit/82b5ea7bda692113de94d57c3f851dbf29936891
  Author: pkarveti <quic_pkarveti at quicinc.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    A llvm/test/CodeGen/Hexagon/print-pipeline-passes.ll

  Log Message:
  -----------
  [Hexagon] Don't run hexagon-loop-idiom and hexagon-vlcr passes at O0 pipeline (#175891)

Fixes #156787


  Commit: 13197d2f231f7d54c90f186a9320825edb60209d
      https://github.com/llvm/llvm-project/commit/13197d2f231f7d54c90f186a9320825edb60209d
  Author: Tim Gymnich <tim at gymni.ch>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir

  Log Message:
  -----------
  [AMDGPU] Reduce number of emitted S_SET_VGPR_MSB instructions (#176502)

Given a `S_SET_VGPR_MSB` instruction with `CurrentMode` and
`CurrentMask` where `CurrentMask` is a bit mask with 1 for every bit
position we set to 0 or 1 in `CurrentMode`.

We also have a new mode bitset `Mode` and a `Mask` with the bit position
we want set.

Currently we check if the difference between `Mode` and `CurrentMode`
(`Delta = Mode ^ CurrentMode`) overlaps with the bit positions we
previously set (`Delta & CurrentMask .== 0`). We then update
`CurrentMode` and `CurrentMask` accordingly.

However if bit positions differ in `Mode` and `CurrentMode` but we do
not care about these bit positions for our next instruction `(Delta &
Mask) & CurrentMask .== 0`) we can still update the previous
`S_SET_VGPR_MSB`, since we don't interfere with any of the bit positions
in `CurrentMask`


```mir
     S_SET_VGPR_MSB 0x0002
     $vgpr0 = V_MOV_B32_e32 $vgpr530          ; mode: 0b0000_0010   mask:  0b0000_0011
->   $vgpr1 = V_ADD_U32_e32 0x1234, $vgpr531  ; mode: 0b0000_1000   mask:  0b0000_1100
                                              ; src0 is imm so we don't care about it.
```

|   | dst  |  src2 | src1  | src0  |
|---|---|---|---|---|
|  CurrentMode | 00  | 00  | 00  | 10  |
| CurrentMask  |  00  | 00  | 00  | 11  |
|  Mode | 00  | 00  |  10  |  00  |
|  Mask | 00  |  00  |  11  | 00  |
|  Delta |  00 | 00  | 10   | 10  |
| Delta & CurrentMask  | 00  | 00  | 00  | 10  |
| Delta & Mask & CurrentMask  |  00 | 00  | 00  | 00  |


  Commit: 2428a684978e5816c3a83c55a1395e4fe8cfe50e
      https://github.com/llvm/llvm-project/commit/2428a684978e5816c3a83c55a1395e4fe8cfe50e
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [APINotes] Apply APINotes to non-global decls in a LinkageSpecDecl (#176792)

We checked if a declaration has a LinkageSpecDecl ancestor and assumed
that it would be a declaration in global/namespace scope. This prevented
us from applying APINotes to methods or fields of a class that was
declared in a LinkageSpecDecl. This PR changes the logic to only check
whether the parent DeclContext is a LinkageSpecDecl instead of checking
for all the ancestors.

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


  Commit: 528bb2bedaa9e51c8078d41b977d266fa7d65ec7
      https://github.com/llvm/llvm-project/commit/528bb2bedaa9e51c8078d41b977d266fa7d65ec7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/BranchFolding.cpp
    A llvm/test/CodeGen/AArch64/wineh-dangling-eh-pad-reference.ll

  Log Message:
  -----------
  [BranchFolding][WinEH] Do not remove EH pads (#176735)

If branch folding remoes an EH pad, we're left with a dangling reference
to it from the CxxUnwindMap. We could try to fix this up, but given that
this should be a rare situation, just leave the dead EH pad blocks
around.

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


  Commit: a15adf5b9be33d557c45a5a1cb381f82782e5199
      https://github.com/llvm/llvm-project/commit/a15adf5b9be33d557c45a5a1cb381f82782e5199
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    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/Pointer.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Add Pointer::stripBaseCasts() helper (#176875)

We do this is in a few places, so add a helper function for it.


  Commit: b360d2a9a67d1fdeb38a7f64bbafce44319b317d
      https://github.com/llvm/llvm-project/commit/b360d2a9a67d1fdeb38a7f64bbafce44319b317d
  Author: jofrn <jofernau at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/X86/atomic-load-store.ll

  Log Message:
  -----------
  [SelectionDAG] Widen <2 x T> vector types for atomic load (#148897)

Vector types of 2 elements must be widened. This change does this
for vector types of atomic load in SelectionDAG
so that it can translate aligned vectors of >1 size.


  Commit: f7b5b670c1cf0fe54e59aa0d1f1a11ee66e442ab
      https://github.com/llvm/llvm-project/commit/f7b5b670c1cf0fe54e59aa0d1f1a11ee66e442ab
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M .github/workflows/docs.yml
    M clang/utils/analyzer/entrypoint.py
    M flang-rt/README.md
    M flang/tools/f18/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt
    M openmp/docs/ReleaseNotes.rst
    M openmp/docs/SupportAndFAQ.rst

  Log Message:
  -----------
  [OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode (#174963)

Reapply #152189 which was reverted because it broke publish-sphinx-docs.

The build mode has been deprecated in #136314. According to the
deprecation message, it was supposed to be removed in the LLVM 21
release. Each build mode increased the maintanance overhead when
failing, such as in #151117.


  Commit: 60621cd2739c5b1ea3db4630fdd51cd8b3eaf57e
      https://github.com/llvm/llvm-project/commit/60621cd2739c5b1ea3db4630fdd51cd8b3eaf57e
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant_folding.mlir

  Log Message:
  -----------
  [mlir][tosa] Check for overflow in binary integer folders  (#172695)

For these folders to be TOSA compliant, they need to check for overflow.
This commit adds those checks, subsequently preventing folding if an
overflow is detected.

This commit also fixes the greater/greater_equal folders to account for
unsigned types.


  Commit: deacb03b2851d68e9998a93fea9d1f2fad6a4596
      https://github.com/llvm/llvm-project/commit/deacb03b2851d68e9998a93fea9d1f2fad6a4596
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir

  Log Message:
  -----------
  [AMDGPU] Do not use s_delay_alu instskip to skip s_set_vgpr_msb (#175925)

Fixes: SWDEV-576227


  Commit: aa995d96343c5f22ae8dfbeb0035ab04548e1282
      https://github.com/llvm/llvm-project/commit/aa995d96343c5f22ae8dfbeb0035ab04548e1282
  Author: nataliakokoromyti <126305457+nataliakokoromyti at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Verifier/gep-vector-non-byte-element.ll

  Log Message:
  -----------
  [IR][Verifier] Reject GEP into vector with non-byte-addressable element type (#176689)

Add a verifier check to reject GEP instructions that index into vectors
with non-byte-addressable element types (e.g., <2 x i1>). Such GEPs
cannot have their offset computed in bytes, causing assertions in passes
like SROA that try to compute byte offsets.

Fixes #176628.


  Commit: b36d004743dd47cfa32bba524e8f14b4a290acb9
      https://github.com/llvm/llvm-project/commit/b36d004743dd47cfa32bba524e8f14b4a290acb9
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlowFramework.cpp

  Log Message:
  -----------
  [mlir][dataflow] Drop DATAFLOW_DEBUG (NFC) (#176731)

Now we use LDBG, so we no longer need LLVM_DEBUG.


  Commit: aa57ee958d4d7080109a7ce0ff11e809773709b5
      https://github.com/llvm/llvm-project/commit/aa57ee958d4d7080109a7ce0ff11e809773709b5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp

  Log Message:
  -----------
  CodeGen: Use LibcallLoweringInfo for stack protector insertion (#176829)

Thread LibcallLoweringInfo into the TargetLowering hooks used
by the stack protector passes.


  Commit: aca27838401599c78427ef55bfc836a326ea5ef7
      https://github.com/llvm/llvm-project/commit/aca27838401599c78427ef55bfc836a326ea5ef7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp

  Log Message:
  -----------
  DAG: Get libcall info from LibcallLowering in more places (#176836)

Avoid using TargetLowering functions


  Commit: 64ecd762e9518ca1bc9f0764411313578341d028
      https://github.com/llvm/llvm-project/commit/64ecd762e9518ca1bc9f0764411313578341d028
  Author: Arun Thangamani <arun.thangamani at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/Transforms/ShuffleVectorFMAOps.cpp
    A mlir/test/Dialect/X86Vector/shuffle-vector-fmas.mlir

  Log Message:
  -----------
  [mlir][x86vector] Shuffle FMAs (#172823)

This patch Shuffles FMAs with x86vector operations as operands such that
FMAs are grouped with respect to odd/even packed index.
Continuation to PR: https://github.com/llvm/llvm-project/pull/170267 to
manage register allocation efficiently.


  Commit: 67cf9b8f827e816ada6dbbee3a4f0cdb7c1d0595
      https://github.com/llvm/llvm-project/commit/67cf9b8f827e816ada6dbbee3a4f0cdb7c1d0595
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/include/__config
    M libcxxabi/src/cxa_guard_impl.h
    M libcxxabi/src/fallback_malloc.cpp
    M libcxxabi/test/guard_test_basic.pass.cpp
    M libcxxabi/test/guard_threaded_test.pass.cpp
    M libcxxabi/test/test_fallback_malloc.pass.cpp

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_CONSTINIT (#171802)

`_LIBCPP_CONSTINIT` is only ever used inside `src/`, so we can just
replace it with `constinit` instead.


  Commit: 8acf454ed1b297b239c0fa5901d09597bbbe6da5
      https://github.com/llvm/llvm-project/commit/8acf454ed1b297b239c0fa5901d09597bbbe6da5
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M .github/workflows/docs.yml
    M clang/utils/analyzer/entrypoint.py
    M flang-rt/README.md
    M flang/tools/f18/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt
    M openmp/docs/ReleaseNotes.rst
    M openmp/docs/SupportAndFAQ.rst

  Log Message:
  -----------
  Revert "[OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode (#174963)"

This reverts commit f7b5b670c1cf0fe54e59aa0d1f1a11ee66e442ab.

It had broken the publish-doxygen-docs buildbot


  Commit: 39028cc55a784a0ba839bbd6df32b9ded60896ea
      https://github.com/llvm/llvm-project/commit/39028cc55a784a0ba839bbd6df32b9ded60896ea
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/avg.ll
    M llvm/test/CodeGen/PowerPC/vavg.ll
    M llvm/test/CodeGen/X86/avgceils.ll
    M llvm/test/CodeGen/X86/avgceilu.ll

  Log Message:
  -----------
  [DAG] foldAddToAvg - add patterns to form avgceil(A, B) from ((A >> 1) + (B >> 1)) + ((A | B) & 1) (#174719)

Alive2 proof: https://alive2.llvm.org/ce/z/mcatXZ

I've raised #174718 as supposedly PPC has AVGCEIL instructions, but the
patterns in PPCInstrAltivec.td are either incorrect or the instructions
don't account for overflow.

Fixes #128377


  Commit: abc924356e25539be32cb167caed04d6619a034a
      https://github.com/llvm/llvm-project/commit/abc924356e25539be32cb167caed04d6619a034a
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/fold-tail-low-trip-count.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/fold-tail-low-trip-count.ll

  Log Message:
  -----------
  [LV][NFC] Update low trip count tail-folding tests (#176898)

Whilst reviewing PR #176754 I realised there seemed to be some odd cost
model issues for the tests in file

LoopVectorize/AArch64/fold-tail-low-trip-count.ll

where we seemed to be vectorising loops that aren't worth it. It turns
out the tests were not targeting AArch64 despite being in the AArch64
directory. I fixed the RUN line for the file and also added a new file
for RISCV so we get more test coverage.


  Commit: 4d629375bc20c12f6bad5500692caba9f2b8d0e2
      https://github.com/llvm/llvm-project/commit/4d629375bc20c12f6bad5500692caba9f2b8d0e2
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlowFramework.cpp

  Log Message:
  -----------
  Revert "[mlir][dataflow] Drop DATAFLOW_DEBUG (NFC)" (#176911)

Compilation errors occurred on some machines. Reverts
llvm/llvm-project#176731


  Commit: 13205c51fc11ac44e36e684cd99c769cf31e27b5
      https://github.com/llvm/llvm-project/commit/13205c51fc11ac44e36e684cd99c769cf31e27b5
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsNVPTX.td
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    A llvm/test/CodeGen/NVPTX/f16-add-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-mul-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-sub-sat.ll
    A llvm/test/CodeGen/NVPTX/fma-oob.ll

  Log Message:
  -----------
  [clang][NVPTX] Add missing half-precision add/mul/fma intrinsics (#170079)

This change adds the following missing half-precision
add/sub/fma intrinsics for the NVPTX target:
- `llvm.nvvm.add.rn{.ftz}.sat.f16`
- `llvm.nvvm.add.rn{.ftz}.sat.v2f16`
- `llvm.nvvm.mul.rn{.ftz}.sat.f16`
- `llvm.nvvm.mul.rn{.ftz}.sat.v2f16`
- `llvm.nvvm.fma.rn.oob.*`

We lower `fneg` followed by one of the above addition 
intrinsics to the corresponding `sub` instruction.

This also removes some incorrect `bf16` fma intrinsics with no
valid lowering.

PTX spec reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/#half-precision-floating-point-instructions


  Commit: 158bba41af5addcb506a0c17e0b30d4c7aee6782
      https://github.com/llvm/llvm-project/commit/158bba41af5addcb506a0c17e0b30d4c7aee6782
  Author: jofrn <jofernau at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/test/CodeGen/X86/atomic-load-store.ll

  Log Message:
  -----------
  [X86] Remove extra MOV after widening atomic load (#148898)

This change adds patterns to optimize out an extra MOV
present after widening the atomic load.


  Commit: 9458d2a0f403f4e79130da56b74d7828867f332c
      https://github.com/llvm/llvm-project/commit/9458d2a0f403f4e79130da56b74d7828867f332c
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/test/Driver/aarch64-mcpu-native.c
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [AArch64][Driver] Allow runtime detection to override default features. (#176340)

Currently, most extensions controlled through -march and -mcpu options
are handled in a bitset of AArch64::ExtensionSet. However, extensions
detected at runtime for native compilation are handled in a separate
list of CPU features; once most of the parsing logic has run, the bitset
is converted to a feature list, added after the features detected at
runtime, and the resulting list is used from there on out.

This has the downside that runtime-detected features are unable to
override default CPU extensions. For example, if a CPU enables +aes in
its processor definition, but aes support is not detected at runtime,
the feature currently remains enabled---even though
unsupported---because default features are enabled after the runtime
logic attempts to disable them.

This patch inserts runtime-detected features directly into the extension
set such that these options can take precedence over extensions enabled
by default. The general parsing order for mcpu=native becomes:
1. CPU defaults;
2. Runtime detection;
3. +featureA+nofeatureB options;
4. Other parsing decisions.

This allows features that are found to be unsupported at runtime to be
removed from the list of features supported by targets that enable them
by default.

While at it, this also disables rng if not detected at runtime.


  Commit: a2472bb4d6e0b2fd19a30dcec28ff251dd9afc74
      https://github.com/llvm/llvm-project/commit/a2472bb4d6e0b2fd19a30dcec28ff251dd9afc74
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Enable temporary destructors in intra-TU analysis (#176812)

Enable implicit and temporary destructors in lifetime safety analysis CFG build options.

Updated test cases to verify the changes:
- Added a new test run configuration in `warn-lifetime-analysis-nocfg.cpp` that includes the experimental lifetime safety inference and TU analysis flags
- Modified `warn-lifetime-safety.cpp` to also verify both function-only and TU-level analysis

Note that we miss instantiation chain in the diagnostics in intra-TU mode of the analysis!


  Commit: 979db00b9a2401b65725f44de8172aba79cacd38
      https://github.com/llvm/llvm-project/commit/979db00b9a2401b65725f44de8172aba79cacd38
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/fp-int-fp-cvt.ll

  Log Message:
  -----------
  [X86] fp-int-fp-cvt.ll - add avx512f base test coverage (#176919)

Check coverage for AVX512 targets without AVX512DQ for #162656


  Commit: d265996cc6203a7288f10d8760c0ddbb35f502bd
      https://github.com/llvm/llvm-project/commit/d265996cc6203a7288f10d8760c0ddbb35f502bd
  Author: Viktoria Maximova <viktoria.maksimova at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_cooperative_matrix/cooperative_matrix.ll

  Log Message:
  -----------
  [SPIR-V] Fix builtin name extraction for templated functions (#173027)

This patch improves the `lookupBuiltinNameHelper` function to handle
demangled function signatures more robustly.

SPIR-V backend failed to get builtin function name from demangled calls
when the function signature contained complex template types.

For example, a demangled call like: 
`__spv::__spirv_CooperativeMatrixKHR<short, ...>*
__spirv_CooperativeMatrixLoadKHR<...>(...)`
was not correctly parsed to extract `__spirv_CooperativeMatrixLoadKHR`.


  Commit: 6c671ace7735a7a0fdcdbf0a233f197e51514268
      https://github.com/llvm/llvm-project/commit/6c671ace7735a7a0fdcdbf0a233f197e51514268
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Return nullptr instead of {} (#176912)


  Commit: 78f253f76720c98469efb3358f1db2f397565c58
      https://github.com/llvm/llvm-project/commit/78f253f76720c98469efb3358f1db2f397565c58
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/inline-asm.c

  Log Message:
  -----------
  [CIR] Upstream Inline Asm with Input Operands (#176239)

Like the previous patch, this upstreams inline
assembly support re #153267

This patch extends this to Input Operands. With this done, we now
correctly compile every test in the incubator for inline assembly.

NOTE: When doing the IR differences between CIR and Classic Codegen, I
noticed a sext/zext difference, but I'm reasonably convinced CIR is
correct. Also, we keep around the 'ret-val' temporary for a function,
  so that difference is also in the tests.


  Commit: 3b2ddab3246d5b49d3e2b1f2ac9f8926890c5be9
      https://github.com/llvm/llvm-project/commit/3b2ddab3246d5b49d3e2b1f2ac9f8926890c5be9
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h

  Log Message:
  -----------
  [CIR][NFCI] Add some infrastructure for function attributes (#176433)

While looking into the work required to add attributes to
functions/arguments/etc, I discovered a lot of overlap with calling
conventions, which I know others are working on. Rather than risk a
later conflict, this patch adds some basic infrastructure that will
hopefully limit the fallout. This patch is NFC as it doesn't modify the
IR at all, just adds a few calls to the 'right place' and adds some
arguments.

Additionally, it adds the calling convention type to the IR, but leaves
it empty, as it is useful to be able to pass around but not particularly
possible to define/make do anything yet.


  Commit: b8fec8ebc632af1627c2c1d88b8c8b8957323a03
      https://github.com/llvm/llvm-project/commit/b8fec8ebc632af1627c2c1d88b8c8b8957323a03
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/program-tree.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp

  Log Message:
  -----------
  [flang] Add traits to more AST nodes (#175566)

Follow-up to PR175211.

There are still a few AST nodes that don't have any of the standard
traits (Wrapper/Tuple/etc). Because of that they require special
handling in the parse tree visitor.

Convert a subset of these nodes to the typical format, and remove the
special cases from the parse tree visitor.


  Commit: 53d9d46d762207b2117eac9b0799bdd21b4b6dba
      https://github.com/llvm/llvm-project/commit/53d9d46d762207b2117eac9b0799bdd21b4b6dba
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [flang][OpenMP] Allow assumed-size arrays on USE_DEVICE_ADDR clause (#176815)

Assumed-size arrays do not present any issues here as they need to be
either already mapped into the device data environment, or otherwise
accessible on the target device.


  Commit: d3f2f1366d39fd66c790200d15d7c5047195198b
      https://github.com/llvm/llvm-project/commit/d3f2f1366d39fd66c790200d15d7c5047195198b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll

  Log Message:
  -----------
  [LV] Consider UserIC when limiting VF. (#174573)

If a UserIC is provided, the vector loop will process VF * UserIC. Pass
it through UserIC to computeFeasibleMaxVF and use it to limit the max VF
to factors where VF * UserIC <= MaxTripCount. This avoids creating dead
vector loops with user provided interleave counts.

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


  Commit: a92cf1910647ce35027242d9de51ed1e7ca5eb84
      https://github.com/llvm/llvm-project/commit/a92cf1910647ce35027242d9de51ed1e7ca5eb84
  Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-ir2vec/CMakeLists.txt
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp

  Log Message:
  -----------
  [NFC] [llvm-ir2vec] using qualified includes for source files in the llvm-ir2vec tool (#176863)

Nit Change
Addresses
https://github.com/llvm/llvm-project/pull/176756#issuecomment-3770487248

Changes
- Moved from `#include "Utils.h"` to `#include "lib/Utils.h"` . This is
in keeping with similar library usage in other llvm/tools like
`llvm-exegesis`, etc

@nico  @svkeerthy


  Commit: 62710285181d2e5e505fad08e763db8ffabde904
      https://github.com/llvm/llvm-project/commit/62710285181d2e5e505fad08e763db8ffabde904
  Author: eleviant <56861949+eleviant at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedA57.td
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s

  Log Message:
  -----------
  [AArch64] Improve Cortex-A57 EXTR modelling (#176213)

The extr instruction operating on one reg is performed faster (1 cycle
instead of 3) and is utilizing only I pipeline.


  Commit: db7b766b09c2eaf00e8ec5b3d34529b4d87d169f
      https://github.com/llvm/llvm-project/commit/db7b766b09c2eaf00e8ec5b3d34529b4d87d169f
  Author: Bertik23 <39457484+Bertik23 at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/LSP/Protocol.h
    M llvm/lib/Support/LSP/Protocol.cpp

  Log Message:
  -----------
  [SupportLSP] Add DidSaveTextDocumentParams (#172637)

Add DidSaveTextDocumentParams

Direct copy from clangd.


  Commit: c8e5259c0947f4c52bc5ff9bfcc51617bbbbe7c0
      https://github.com/llvm/llvm-project/commit/c8e5259c0947f4c52bc5ff9bfcc51617bbbbe7c0
  Author: Quan Zhuo <quanzhuo at kylinos.cn>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp

  Log Message:
  -----------
  [clangd][refactor] Improve function source code qualification logic in DefineOutline (#173606)

This PR fix https://github.com/clangd/clangd/issues/2573


  Commit: 08391d2b4d4e75e5fc874a87f6d3bf8958a3a19c
      https://github.com/llvm/llvm-project/commit/08391d2b4d4e75e5fc874a87f6d3bf8958a3a19c
  Author: Quan Zhuo <quanzhuo at kylinos.cn>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp

  Log Message:
  -----------
  [clangd] Do not skip Attr nodes in SelectionTree traversal (#174199)

SelectionTree attempts to skip nodes that don't intersect with the
selection for performance. However, Attr nodes (like AlignedAttr) often
have inaccurate source ranges (e.g. pointing to a single location).

Previously, canSafelySkipNode handled nodes that *have* attributes
attached, but failed to account for the case where the node being
visited *is* the attribute itself. This caused `alignas(WALDO)` to be
skipped, breaking features like go-to-definition on WALDO.

This commit adds a check to ensure explicit Attr nodes are visited,
fixing the issue.

Fixes https://github.com/clangd/clangd/issues/2502


  Commit: c16340e49e201d0f413bc2949fe8a1bf2e405f99
      https://github.com/llvm/llvm-project/commit/c16340e49e201d0f413bc2949fe8a1bf2e405f99
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [NFC][MLIR][OpenMP] Correct attach_none to attach_never (#176855)

Originally gave attach_never the incorrect name, so this patch corrects
that to keep things consistent everywhere.


  Commit: dd83ead9a51ff39fbde7e12fbf70a49a8353dbd2
      https://github.com/llvm/llvm-project/commit/dd83ead9a51ff39fbde7e12fbf70a49a8353dbd2
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll

  Log Message:
  -----------
  [AMDGPU][True16] extractEltcheap check 16bit in true16 mode (#171762)


  Commit: b3212adae05a39086b4c5aca95305d8983fe0656
      https://github.com/llvm/llvm-project/commit/b3212adae05a39086b4c5aca95305d8983fe0656
  Author: Dan Blackwell <dan_blackwell at apple.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_flags.cpp

  Log Message:
  -----------
  [TSan][Darwin] Fix error message for invalid lock_during_write flag (#176347)

Currently giving an invalid value for this flag logs the error message
"Invalid value for signal handler option" - which is misleading.

This patch fixes that error message.

rdar://157565672


  Commit: 7ce6a94c61d030e60db998bce2142f064aac20f4
      https://github.com/llvm/llvm-project/commit/7ce6a94c61d030e60db998bce2142f064aac20f4
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M libcxx/utils/benchmark-historical
    M libcxx/utils/build-at-commit
    A libcxx/utils/ci/benchmark-for-lnt.py
    M libcxx/utils/test-at-commit

  Log Message:
  -----------
  [libc++] Add a script to produce benchmarks for LNT (#175594)

This patch adds a script to run a subset of libc++'s benchmarks for
uploading to LNT.

As part of this patch the test-at-commit script is modified to no longer
build the library itself. Indeed, this provides the necessary
flexibility to run the test suite multiple times on the same built
library, and also addresses previous concerns where test-at-commit
couldn't customize how the library is being built.


  Commit: 2e53764f2da742ba32b333e33635af60d384c2a8
      https://github.com/llvm/llvm-project/commit/2e53764f2da742ba32b333e33635af60d384c2a8
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__atomic/atomic_sync_timed.h
    M libcxx/include/atomic
    M libcxx/include/module.modulemap.in
    M libcxx/include/semaphore
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/atomic.cpp
    A libcxx/test/std/thread/thread.semaphore/lost_wakeup.timed.pass.cpp

  Log Message:
  -----------
  [libc++] Introduce a native timed wait in the synchronization library (#172214)

Fixes #172137


  Commit: a5450735bcb217da8832b5f74847859c077557c2
      https://github.com/llvm/llvm-project/commit/a5450735bcb217da8832b5f74847859c077557c2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 2e53764f2da7


  Commit: 3d009a7b0de77ec44c7c66c290217446ce8691e0
      https://github.com/llvm/llvm-project/commit/3d009a7b0de77ec44c7c66c290217446ce8691e0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstCombine/fabs.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstSimplify: Handle nsz in fabs of known positive fold (#176923)

The current tests for the fold use fma with a squared input.
This isn't entirely correct because fma can return -0 in this case.

Extend the fold to perform it with nsz. Also extend the tests to
test with an unknown value for the addend. The known normal constant is
almost special case that disproves a -0 result.

Split out from https://github.com/llvm/llvm-project/pull/175614


  Commit: 4f7c733293a88cc04f966611b07b407aebc35a19
      https://github.com/llvm/llvm-project/commit/4f7c733293a88cc04f966611b07b407aebc35a19
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M libsycl/CMakeLists.txt
    M libsycl/README.md
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/backend.hpp
    M libsycl/include/sycl/__impl/detail/config.hpp
    A libsycl/include/sycl/__impl/detail/obj_utils.hpp
    A libsycl/include/sycl/__impl/exception.hpp
    A libsycl/include/sycl/__impl/info/desc_base.hpp
    A libsycl/include/sycl/__impl/info/platform.hpp
    M libsycl/include/sycl/__impl/platform.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/CMakeLists.txt
    A libsycl/src/detail/global_objects.cpp
    A libsycl/src/detail/global_objects.hpp
    A libsycl/src/detail/offload/offload_topology.cpp
    A libsycl/src/detail/offload/offload_topology.hpp
    A libsycl/src/detail/offload/offload_utils.cpp
    A libsycl/src/detail/offload/offload_utils.hpp
    A libsycl/src/detail/platform_impl.cpp
    A libsycl/src/detail/platform_impl.hpp
    A libsycl/src/exception.cpp
    A libsycl/src/exception_list.cpp
    M libsycl/src/platform.cpp
    M libsycl/src/version.hpp.in
    A libsycl/tools/CMakeLists.txt
    A libsycl/tools/sycl-ls/CMakeLists.txt
    A libsycl/tools/sycl-ls/sycl-ls.cpp

  Log Message:
  -----------
  [SYCL] Add platform enumeration and info query using liboffload (#166927)

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

The SYCL runtime is device-agnostic and uses liboffload for offloading
to GPU. This commit adds a dependency on liboffload, implementation of
platform::get_platforms, platform::get_backend and platform::get_info
methods, initial implementation of sycl-ls tool for manual testing of
added functionality.

Plan for next PR:

device/context impl, rest of platform
test infrastructure (depends on L0 liboffload plugin CI, our effort is
joined) ABI tests

---------

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: a2c7522dbb79ef1a1d306963ad0e36219de9c7a8
      https://github.com/llvm/llvm-project/commit/a2c7522dbb79ef1a1d306963ad0e36219de9c7a8
  Author: Andrei Damian <xTachyon at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  Fix invalid escapes in VCSVersion.inc (#172899)

Tries to fix #172376.


  Commit: 8eccda10d2a83d46fdc9b9dca7c2218926f67979
      https://github.com/llvm/llvm-project/commit/8eccda10d2a83d46fdc9b9dca7c2218926f67979
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/target-data.c
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/TargetParser/TargetDataLayout.cpp
    A llvm/test/CodeGen/SystemZ/stack-align.ll
    M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp

  Log Message:
  -----------
  [SystemZ] Add SP alignment to the DataLayout string. (#176041)

Add '-S64' to the SystemZ datalayout string, to avoid overalignment of
stack objects.

Fixes #173402


  Commit: d542fac6b16406ec0ed0e168e6c3f4c6be28cff8
      https://github.com/llvm/llvm-project/commit/d542fac6b16406ec0ed0e168e6c3f4c6be28cff8
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/tools.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-deallocate.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-nullify.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [flang] Add traits to more AST nodes (#175578)

Follow-up to PR175211.

There are still a few AST nodes that don't have any of the standard
traits (Wrapper/Tuple/etc). Because of that they require special
handling in the parse tree visitor.

Convert a subset of these nodes to the typical format, and remove the
special cases from the parse tree visitor.

The members of these nodes were frequently used, so instead of
extracting them by hand each time use helper member functions to access
them.


  Commit: 90895531ccd4fa6ad5d5062604d8f3dd34dcf741
      https://github.com/llvm/llvm-project/commit/90895531ccd4fa6ad5d5062604d8f3dd34dcf741
  Author: Alison Zhang <alisonxzhang at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp

  Log Message:
  -----------
  Update sanitizer_coverage_allowlist_ignorelist.cpp to use POSIX-compliant regex (#176396)

As `\+` is a GNU extension, it is not supported by the system grep on
AIX. This change replaces `%[0-9]\+` with `%[0-9][0-9]*`, which is
POSIX-compliant and therefore compatible with AIX.


  Commit: 146a919360eb0e4f0ac012050ccc7c0f4593345e
      https://github.com/llvm/llvm-project/commit/146a919360eb0e4f0ac012050ccc7c0f4593345e
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [Clang][Lexer] Reland "Detect SSE4.2 availability at runtime in fastParseASCIIIdentifier" (#175452)

This PR reopens #171914 after it was merged then reverted by #174946
because of compilation failures.

This change attempts to maximize usage of the SSE fast path in
`fastParseASCIIIdentifier`.

If the binary is compiled with SSE4.2 enabled, or if we are not
compiling for x86, then the behavior is the exact same, ensuring we have
no regressions.
Otherwise, we compile both the SSE fast path and the scalar loop. At
runtime, we check if SSE4.2 is available and dispatch to the right
function by using the `target` attribute. If it _is_ available, this
allows a net performance improvement. Otherwise, there's a very slight
but negligible regression... I believe that's perfectly reasonable for a
non-SSE4.2-supporting processor.

I checked locally on an old x86 processor with QEMU to ensure this
doesn't break compatibility.

The benchmark results are available at
[llvm-compile-time-tracker](https://llvm-compile-time-tracker.com/compare.php?from=f88d060c4176d17df56587a083944637ca865cb3&to=d5485438edd460892bf210916827e0d92fc24065&stat=instructions%3Au).


  Commit: 48c0e9995a8979e0e100872e3740187af294aa5c
      https://github.com/llvm/llvm-project/commit/48c0e9995a8979e0e100872e3740187af294aa5c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-canonicalize.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-rounding-intrinsics.ll

  Log Message:
  -----------
  InstCombine: Filter reported classes from SimplifyDemandedFPClass (#176885)

When reporting the known class result, apply the demanded mask to
filter out rejected cases. This can simplify known-source checks
further up the call stack. There are a few improved test diffs. This
does not yet try to clean up now redundant result checks.

Do an initial brute-force scope_exit to ensure these are cleared.
Later we can do a better job by pushing this into the individual
instruction cases.


  Commit: 8b2abcc766b2da74ea33e9c1f785b71b4fa6448f
      https://github.com/llvm/llvm-project/commit/8b2abcc766b2da74ea33e9c1f785b71b4fa6448f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst

  Log Message:
  -----------
  [NFC][NVPTX] Fix links in NVPTX Usage document (#176482)

Fix links to not render the URL and instead use text with a link.


  Commit: 2984a28612bb8c56cd85d858b00319a24c95409a
      https://github.com/llvm/llvm-project/commit/2984a28612bb8c56cd85d858b00319a24c95409a
  Author: Benjamin Stott <Benjamin.Stott at sony.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/unittests/ADT/STLExtrasTest.cpp

  Log Message:
  -----------
  Reland "[STLExtras] Add a template for detecting whether a type has an equality comparison operator" (#176893)

This PR is an attempt to reland
https://github.com/llvm/llvm-project/pull/176429.

It seems there's a difference between Clang and MSVC's template
handling, resulting in a difference in the behaviour of is_detected with
private class members. [This](https://godbolt.org/z/x61YdEz44) Godbolt
link demonstrates the difference. This was causing one of the test cases
I made, which was checking that it didn't pick up a private equality
comparison operator, to fail when compiled using MSVC.

In this PR I have just removed that test case.


  Commit: bba794200646fdf2e69cf70418cd03cf14348d62
      https://github.com/llvm/llvm-project/commit/bba794200646fdf2e69cf70418cd03cf14348d62
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/codegen.cpp

  Log Message:
  -----------
  [clang][bytecode] LValueBitCasts are not fatal (#176947)

We can cast from lvalue to lvalue (they are Pointers), so don't
prematurely abort here.


  Commit: b515e1182560f91a7c7a459186dea5299f62534a
      https://github.com/llvm/llvm-project/commit/b515e1182560f91a7c7a459186dea5299f62534a
  Author: General_K1ng <generak1ng0 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConcepts.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Avoid crash when expression requirements are substitution failures (#176896)

Clang could assert in `clang::concepts::ExprRequirement::getExpr()` when
an expression requirement becomes a substitution failure during template
instantiation.

Substitution-failure `ExprRequirements` intentionally do not have an
associated expression. Calling `getExpr()` in this case violates the API
contract and triggers an assertion.

This occurred while checking requirements in `RequirementContainsError`
during `RequiresExpr` construction.

Guard `RequirementContainsError` against substitution-failure
`ExprRequirements` and avoid calling `getExpr()` in that case.

Fixes #176402
Fixes #115513
Fixes #130620


  Commit: bd9668df0f00ab2d4bbcf86708b50cb1db1ab930
      https://github.com/llvm/llvm-project/commit/bd9668df0f00ab2d4bbcf86708b50cb1db1ab930
  Author: Leon Clark <Leon4116 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    A llvm/test/CodeGen/AMDGPU/lower-noalias-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/mad-combine.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    M llvm/test/CodeGen/AMDGPU/valu-i1.ll

  Log Message:
  -----------
  Reapply "[AMDGPU] Propagate alias information in AMDGPULowerKernelArguments." (#174977)

Emit `!noalias` and `!alias.scope` metadata for `noalias` kernel
arguments.

Fixes sanitizer issues in #161375.

---------

Co-authored-by: Leon Clark <leoclark at amd.com>


  Commit: 75cc3cd1e84159a6a7646fd4f98c61ceafd338c0
      https://github.com/llvm/llvm-project/commit/75cc3cd1e84159a6a7646fd4f98c61ceafd338c0
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M offload/test/offloading/strided_multiple_update_to.c
    M offload/test/offloading/strided_partial_update_to.c
    M offload/test/offloading/strided_update_to.c

  Log Message:
  -----------
  [offload][lit] XFAIL failing non-contiguous update tests on Intel (#176955)

The new tests added in https://github.com/llvm/llvm-project/pull/169623
are [failing](https://lab.llvm.org/buildbot/#/builders/225/builds/544)
on the Intel GPU runner, so XFAIL them as with the other tests.

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 4efbe986596afee43848e8f5e0d33c00ef6462a8
      https://github.com/llvm/llvm-project/commit/4efbe986596afee43848e8f5e0d33c00ef6462a8
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error.cl

  Log Message:
  -----------
  [Clang][AMDGPU] Add a Sema check for the imm argument of ` __builtin_amdgcn_s_setreg` (#176838)

Our backend cannot select the corresponding intrinsic if the imm
argument is not a `int16_t` or `uint16_t`, which is not really helpful.


  Commit: d13119f26999533a3048db3db058e19ae02a76aa
      https://github.com/llvm/llvm-project/commit/d13119f26999533a3048db3db058e19ae02a76aa
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    R flang/test/Lower/OpenMP/Todo/declare-simd-uniform.f90
    M flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Semantics/OpenMP/declare-simd-uniform.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [flang][mlir][OpenMP] Add support for uniform clause in declare simd  (#176046)

Define OpenMP uniform clause in mlir and emit it from flang.


  Commit: 6438ddf252b0e44fe97cfd77673c5fc3dabb0210
      https://github.com/llvm/llvm-project/commit/6438ddf252b0e44fe97cfd77673c5fc3dabb0210
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fold-conditional.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Improve null-termination analysis on conditionals (#176262)

This commit adds two improvements to null-termination analysis on
conditionals:
- perform recursive constant folding
- when the condition is not a constant, analyze both branches for
null-termination

rdar://168256816


  Commit: 8dfec259742648c12cca4470eedf583c4e21801f
      https://github.com/llvm/llvm-project/commit/8dfec259742648c12cca4470eedf583c4e21801f
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
    M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
    A flang/test/Transforms/OpenACC/offload-target-verifier.fir
    M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenACC/Transforms/OffloadTargetVerifier.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
    A mlir/test/Dialect/OpenACC/offload-target-verifier.mlir

  Log Message:
  -----------
  [mlir][acc] Add OffloadTargetVerifier pass (#176467)

Add a verification pass that checks live-in values and symbol references
within offload regions are legal for the target execution model.

When code is offloaded to a device (e.g., GPU), not all values and
symbols from the host context are directly accessible. Data must be
explicitly mapped via OpenACC data clauses (copyin, create, present
etc.), declared with device attributes, or be trivial scalars that can
be passed by value. Similarly, symbol references to globals must have
proper `declare` attributes or device-resident data attributes.

This pass walks operations implementing `OffloadRegionOpInterface`,
which includes OpenACC compute constructs (`acc.parallel`,
`acc.kernels`, `acc.serial`) as well as GPU operations like
`gpu.launch`. For each region, it uses liveness analysis to identify
values flowing into the region and checks their validity using the
`OpenACCSupport` analysis.

Key features:
- Validates live-in values against OpenACC data mapping requirements
- Validates symbol references for device accessibility
- Supports soft-check mode for diagnostic-only verification
- Configurable device_type for target-specific behavior


  Commit: 14c68edc9bc2699847c0191c0f37a8c5cc852d02
      https://github.com/llvm/llvm-project/commit/14c68edc9bc2699847c0191c0f37a8c5cc852d02
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    R clang/test/Driver/sycl.c
    A clang/test/Driver/sycl.cpp

  Log Message:
  -----------
  [NFC][Driver] Change SYCL test file extension .c -> .cpp (#173937)

SYCL is an API built on top of C++ programming language. Building SYCL
program with C compiler is not possible.


  Commit: 563b5969bb55511ada43da96315fa1310810adb0
      https://github.com/llvm/llvm-project/commit/563b5969bb55511ada43da96315fa1310810adb0
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/utils/update_mc_test_checks.py

  Log Message:
  -----------
  [update_mc_test_checks.py] Fix python 3.8 compatibility

Add `from __future__ import annotations` which is needed since
https://github.com/llvm/llvm-project/pull/174011 landed.

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


  Commit: 9c8f75820919c273dca590e47e469753fa878f11
      https://github.com/llvm/llvm-project/commit/9c8f75820919c273dca590e47e469753fa878f11
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_print.txt
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_wo=0.5_print.txt
    M llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-epilogs.mir
    A llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-instr.mir
    M llvm/test/CodeGen/X86/win64-eh-unwindv2.ll

  Log Message:
  -----------
  [win][x64] Unwind v2 4/4: Use chaining to split unwind info if needed, and allow dealloc to be elided if setframe + frame pointer is used (#159206)

Windows x64 unwind v2 only permits an offset from the end of the current
unwind info frame to the epilog of 4Kb. Since LLVM only uses one frame
info per function, the furthest an epilog could be from the end of the
function is 4Kb.

One way to permit offsets that are further is to use frame info
chaining: each of the chained frame infos covers a different portion of
the function and all point back to the parent unwind info.

The x64 unwind v2 lowering will now keep track of the approximate number
of instructions between each epilog and, if there are more than 600
instructions (chosen based on real world testing, this can be overridden
with an LLVM flag) between the current epilog and the end of the current
frame info, then a split frame info will be inserted.

Additionally, if the lowering detects that the current unwind info might
have more than 255 bytes of unwind codes (limit per frame info, also
overridable via LLVM flag) it will also split the frame info.

Additionally, allow the explicit stack dealloc to be elided if there is
a `mov` to undo set frame and the function has frame pointers enabled.


  Commit: 4847f47122caa3a1ac592f8021177b78627d2157
      https://github.com/llvm/llvm-project/commit/4847f47122caa3a1ac592f8021177b78627d2157
  Author: Mingzhu Yan <69898423+trdthg at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Svrsw60t59b extension (#132321)

Add support for Svrsw60t59b extension which was ratified on 08/28/25. 
https://github.com/riscv/riscv-isa-manual/pull/2241


  Commit: c54f1ed3db65af56970c05730ff1839bc304bd40
      https://github.com/llvm/llvm-project/commit/c54f1ed3db65af56970c05730ff1839bc304bd40
  Author: cooperp <peter_cooper at apple.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/test/CodeGenObjC/fragile-arc.m
    M clang/test/CodeGenObjC/ivar-layout-64.m
    M clang/test/CodeGenObjC/ivar-layout-array0-struct.m
    M clang/test/CodeGenObjC/ivar-layout-no-optimize.m
    M clang/test/CodeGenObjC/mrc-weak.m
    M clang/test/CodeGenObjCXX/mrc-weak.mm

  Log Message:
  -----------
  Move the ObjC layout bitmap to the cstring section. (#174705)

Currently the layout bitmap is emitted as a "class name" but its not
actually a name at all. This moves the bitmap to the regular cstring
section for now.

In Apple, our linker and other tools try to optimize sections such as
objc strings. As layout bitmaps aren't really strings at all, they block
some optimizations. We don't currently try to optimize sections such as
cstring, which is why that is the section i used here for now.


  Commit: 11b18362822759ac1592cee5b857943fa2320f8c
      https://github.com/llvm/llvm-project/commit/11b18362822759ac1592cee5b857943fa2320f8c
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/test/CodeGenHLSL/builtins/WaveActiveBallot.hlsl
    M clang/test/CodeGenSPIRV/Builtins/subgroup.c
    M clang/test/Headers/gpuintrin.c
    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/DXILOpBuilder.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/WaveActiveBallot.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveBallot.ll
    A llvm/test/tools/dxil-dis/waveactiveballot.ll

  Log Message:
  -----------
  [HLSL] Handle WaveActiveBallot struct return type appropriately (#175105)

The previous WaveActiveBallot implementation did not account for the
fact that the DXC implementation of the intrinsic returns a struct type
with 4 uints, rather than a vector of 4 uints. This must be respected,
otherwise the validator will reject the uses of WaveActiveBallot that
return a vector of 4 uints.
This PR updates the return type and adds the DXC-specific return type
`fouri32` to use for the intrinsic.


  Commit: 6fdccdbe911580106b5011fb5d82cb5735da8922
      https://github.com/llvm/llvm-project/commit/6fdccdbe911580106b5011fb5d82cb5735da8922
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/SemaHLSL/Language/EmptyInitializers.hlsl

  Log Message:
  -----------
  [Sema][HLSL] Reject empty initializer lists for LHS containing an incomplete array. (#176075)

This PR rejects empty initializer lists when the LHS is or contains an
incomplete array type.
Without this early validation, an assumption would be made that there
was an argument in the initializer list.
This would cause an assertion failure.

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


  Commit: 4e437488650690c51c1cbc241b99d824d97da9d1
      https://github.com/llvm/llvm-project/commit/4e437488650690c51c1cbc241b99d824d97da9d1
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt

  Log Message:
  -----------
  [flang][OpenACC] Fix link failure with BUILD_SHARED_LIBS=ON (#176982)

```
/usr/bin/ld: tools/flang/lib/Optimizer/OpenACC/Analysis/CMakeFiles/FIROp enACCAnalysis.dir/FIROpenACCSupportAnalysis.cpp.o: in function `fir::acc ::FIROpenACCSupportAnalysis::isValidValueUse(mlir::Value, mlir::Region&) ':
FIROpenACCSupportAnalysis.cpp:(.text._ZN3fir3acc25FIROpenACCSupportAnaly sis15isValidValueUseEN4mlir5ValueERNS2_6RegionE+0xb): undefined referenc e to `mlir::acc::isValidValueUse(mlir::Value, mlir::Region&)' clang++: error: linker command failed with exit code 1 (use -v to see in vocation)
```


  Commit: 8f21ec7d78311960980dfa8e49fa6c83e4e77268
      https://github.com/llvm/llvm-project/commit/8f21ec7d78311960980dfa8e49fa6c83e4e77268
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [X86] combineX86ShuffleChainWithExtract - check inputs after resolveTargetShuffleInputsAndMask (#176980)

Make sure resolveTargetShuffleInputsAndMask hasn't removed the need for widening

Fixes #176951


  Commit: f11a2ab58789abab88998a1a7d7125431010b2a0
      https://github.com/llvm/llvm-project/commit/f11a2ab58789abab88998a1a7d7125431010b2a0
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    A llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s

  Log Message:
  -----------
  [MCA] Retire all non-carried-over instructions in InOrderIssueStage (#176686)

Otherwise we might be left with instructions that never retire which can
create some weird results. This showed up originally on the MCA
timeline.

Fixes #176103.


  Commit: bd70cf279ce0880ebbbcfcdedfeead42852b99f6
      https://github.com/llvm/llvm-project/commit/bd70cf279ce0880ebbbcfcdedfeead42852b99f6
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M flang/docs/Directives.md
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/lib/Lower/ConvertCall.cpp
    A flang/test/Lower/HLFIR/ignore-tkr-c-descriptor.f90

  Log Message:
  -----------
  [flang] Avoid descriptor conversion for descriptor args with ignore_tkr(c) (#176240)

For descriptor arguments marked with `!dir$ ignore_tkr(c)` we want to
leave them unmodified: don't create another descriptor or change the
existing descriptor.


  Commit: 3aea01b271ae5908e99cb4b12263ca450ab91afc
      https://github.com/llvm/llvm-project/commit/3aea01b271ae5908e99cb4b12263ca450ab91afc
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/test/Shell/Expr/TestObjCIncompleteSuperclass.test

  Log Message:
  -----------
  [lldb][DWARFASTParserClang] RequireCompleteType for ObjC types (#176765)

Currently we forcefully complete C++ types if we can't find their
definition for layout purposes. This ensures that we at least don't
crash in Clang when laying out the type. The definition is required for
types of members/array elements/base classes for the purposes of
calculating their layout. This is also true for Obj-C types, but we
haven't been forcefully completing those.

The test-case that's being un-XFAILed in this patch demonstrates a case
where not completing the super-class forcefully causes a clang crash.

rdar://168440264


  Commit: e59ed9a29e0fcf6fa95a0f69b9f67074c0c9231e
      https://github.com/llvm/llvm-project/commit/e59ed9a29e0fcf6fa95a0f69b9f67074c0c9231e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Introduce `AMDGPUSubtargetFeature` multiclass to reduce boilerplate (#176981)

Many `SubtargetFeature` definitions in `AMDGPU.td` follow a repetitive
pattern where a `FeatureXYZ` is paired with a `HasXYZ` predicate. This
creates significant code duplication.

This PR introduces `AMDGPUSubtargetFeature` multiclass that generates
both the `SubtargetFeature` and its corresponding `Predicate` from a
single definition. The multiclass accepts an optional `GenPredicate`
parameter (default 1) to skip predicate generation when not needed.

Not converted:

- Features with dependencies - multiclass doesn't support this yet. Will
do it in a follow-up.
- Features with irregular predicates (e.g., Predicate without
`AssemblerPredicate`, negated `Predicate`, complex multi-feature
conditions). For those without `AssemblerPredicate`, this can be done by
adding an extra optional argument to indicate whether
`AssemblerPredicate` is needed. Will be done in a follow-up.
- Features where field name doesn't match the `HasXYZ` pattern.

148 features converted, saving ~529 lines of code.


  Commit: 80bce534a26c5e49e69ddebcc32376ffa02a38d2
      https://github.com/llvm/llvm-project/commit/80bce534a26c5e49e69ddebcc32376ffa02a38d2
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

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

  Log Message:
  -----------
  [llvm][DebugInfo] Alias DITypeRefArray to DITypeArray (#176938)

These two types serve the same purpose (providing an array-like view
over an `MDTuple`) and are pretty much implemented in the same way
(`DITypeArray` is itself an alias for `MDTupleTypedArrayWrapper`, the
generic array-like wrapper over typed metadata). IIUC `DITypeRefArray`
is a remnant of the old debug-info metadata hierarchy.

This patch aliases `DITypeRefArray` to `DITypeArray`.

In a follow-up patch I'm planning to turn all the `DITypeRefArray`
references into `DITypeArray` and remove the alias entirely. Splitting
this into two makes it easier to review imo


  Commit: 9040212669c189c8c520c25693806157e563e6f8
      https://github.com/llvm/llvm-project/commit/9040212669c189c8c520c25693806157e563e6f8
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c

  Log Message:
  -----------
  [CIR][X86]Implement handling for shiftleft/shiftright builtins in CIR (#176653)

Related to: #167765

---------

Co-authored-by: Roberto Turrado Camblor <rturrado at gmail.com>


  Commit: 848d736e6464689e239cd8015b3736bd7a07f454
      https://github.com/llvm/llvm-project/commit/848d736e6464689e239cd8015b3736bd7a07f454
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M offload/liboffload/API/Queue.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp
    M offload/plugins-nextgen/host/src/rtl.cpp
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/unittests/OffloadAPI/CMakeLists.txt
    A offload/unittests/OffloadAPI/queue/olQueryQueue.cpp

  Log Message:
  -----------
  [OFFLOAD] Add asynchronous queue query API for libomptarget migration (#172231)

Add liboffload asynchronous queue query API for libomptarget migration

This PR adds liboffload asynchronous queue query API that needed to make
libomptarget to use liboffload


  Commit: 7bee6c16e645fa5844917a11a1217255e11f01e0
      https://github.com/llvm/llvm-project/commit/7bee6c16e645fa5844917a11a1217255e11f01e0
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    A clang/test/CIR/IR/invalid-cast.cir

  Log Message:
  -----------
  [CIR] Upstream handling for member pointer bool and reinterpret casts (#175996)

This change upstreams the code to generate CIR for bool casts and
reinterpret casts involving member pointer types and the code to lower
these casts for the Itanium C++ ABI.


  Commit: 435589566108eab07eb516e5e722234bd74af7b8
      https://github.com/llvm/llvm-project/commit/435589566108eab07eb516e5e722234bd74af7b8
  Author: Fateme Hosseini <quic_fhossein at quicinc.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-addr.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-bad-move.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-base-type-mismatch.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-basic.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-tbaa.ll
    M llvm/test/CodeGen/Hexagon/vcombine_zero_diff_ptrs.ll
    A llvm/test/CodeGen/Hexagon/vector-load-group-min-threshold.ll

  Log Message:
  -----------
  [Hexagon[ Optimize HVXVectorCombine:Limit Conversion for Unaligned Loads (#176457)

The current implementation of HVXVectorCombine converts unaligned loads
to aligned ones if adjacency is proven. However, this does not account
for the cost of extra loads whether it is amortized or not, leading to
performance regressions in certain cases. This change prevents
performance regressions by avoiding unnecessary conversions for few
numbers of contiguous unaligned loads.

Patch By: Fateme Hosseini

Co-authored-by: Prasoon Mishra <prasmish at hu-prasmish-hyd.qualcomm.com>
Co-authored-by: Prasoon Mishra <prasmish at qti.qualcomm.com>


  Commit: 99bbd3e93ac54a96c55a29ea3ea1f73ebb2a6e58
      https://github.com/llvm/llvm-project/commit/99bbd3e93ac54a96c55a29ea3ea1f73ebb2a6e58
  Author: Fateme Hosseini <quic_fhossein at quicinc.com>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M .ci/buildbot/worker.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    M .ci/utils.sh
    M .github/workflows/containers/github-action-ci-tooling/Dockerfile
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/ids-check.yml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    R .github/workflows/release-lit.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/AArch64/epilogue-determination.s
    A bolt/test/runtime/AArch64/disassemble-plts.c
    M bolt/test/runtime/AArch64/long-jmp-bti-plt.c
    M bolt/utils/docker-tests/Dockerfile
    M clang-tools-extra/Maintainers.rst
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/doc8.ini
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantTypenameCheck.cpp
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness-fixed.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters-header.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/CUDA/cuda.h
    A clang-tools-extra/test/clang-tidy/infrastructure/cuda-basic.cu
    M clang/Maintainers.rst
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_enums.py
    A clang/cmake/caches/Pico.cmake
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ReleaseNotesTemplate.txt
    A clang/docs/ScalableStaticAnalysisFramework/Framework.rst
    A clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/analyzer/user-docs/CrossTranslationUnit.rst
    M clang/docs/index.rst
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/FormatString.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    M clang/include/clang/Analysis/CloneDetection.h
    A clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryBuilder.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryExtractor.h
    M clang/include/clang/Basic/Attr.td
    R clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsNVPTX.td
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LLVM.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/CodeCompletionHandler.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/ModuleLoader.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Lex/TokenLexer.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/AttrImpl.cpp
    M clang/lib/AST/ByteCode/Compiler.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/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/ExprConcepts.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/CloneDetection.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/FormulaSerialization.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/TUSummary/ExtractorRegistry.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/TokenKinds.cpp
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.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/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenCall.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.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/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.h
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.h
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/MCDCState.h
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Headers/amdgpuintrin.h
    M clang/lib/Headers/amo.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/nvptxintrin.h
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Headers/spirvintrin.h
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Lex/TokenLexer.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/TemplateArgumentHasher.cpp
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/test/APINotes/Inputs/Headers/Methods.apinotes
    M clang/test/APINotes/Inputs/Headers/Methods.h
    M clang/test/APINotes/methods.cpp
    M clang/test/AST/ByteCode/builtin-bit-cast.cpp
    M clang/test/AST/ByteCode/builtin-object-size-codegen.cpp
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/codegen.cpp
    M clang/test/AST/ByteCode/functions.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/AST/ByteCode/shifts.cpp
    M clang/test/Analysis/block-in-critical-section.cpp
    M clang/test/Analysis/call-invalidation.cpp
    A clang/test/Analysis/cxx20-range-for-cfg.cpp
    A clang/test/Analysis/std-c-library-functions-char-uchar-conv.c
    M clang/test/C/C23/n3037.c
    M clang/test/CIR/CodeGen/atomic-scoped.c
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/coro-task.cpp
    A clang/test/CIR/CodeGen/fold-during-cg.c
    M clang/test/CIR/CodeGen/inline-asm.c
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/placement-new.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGen/trivial-ctor-const-init.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2_512bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512dq-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/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vldq-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
    M clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c
    A clang/test/CIR/CodeGenBuiltins/X86/rdrand-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse41-builtins.c
    A clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/IR/invalid-complex.cir
    M clang/test/CIR/IR/invalid-throw.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/invalid-vector.cir
    A clang/test/CIR/IR/method-attr.cir
    M clang/test/CIR/IR/resume-flat.cir
    M clang/test/CIR/IR/struct.cir
    M clang/test/CIR/IR/throw.cir
    M clang/test/CIR/IR/vector.cir
    A clang/test/CIR/Lowering/alloca.cir
    M clang/test/CIR/Transforms/complex-create-fold.cir
    M clang/test/CIR/Transforms/complex-imag-fold.cir
    M clang/test/CIR/Transforms/complex-real-fold.cir
    M clang/test/CIR/Transforms/ternary-fold.cir
    M clang/test/CIR/Transforms/vector-extract-fold.cir
    M clang/test/CXX/basic/basic.link/p3.cpp
    M clang/test/CXX/basic/basic.scope/basic.scope.namespace/p2.cpp
    A clang/test/CXX/drs/cwg2947.cpp
    M clang/test/CXX/lex/lex.pptoken/p3-2a.cpp
    M clang/test/CXX/module/basic/basic.link/module-declaration.cpp
    A clang/test/CXX/module/cpp.pre/p1.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.import/p1.cppm
    M clang/test/ClangScanDeps/modules-context-hash-module-map-path.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    A clang/test/CodeGen/LoongArch/targetattr-la32.c
    A clang/test/CodeGen/LoongArch/targetattr-la64.c
    R clang/test/CodeGen/LoongArch/targetattr.c
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc-amo-header.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/hexagon-linux-vararg.c
    R clang/test/CodeGen/prefalign.c
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
    M clang/test/CodeGenCXX/member-alignment.cpp
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    M clang/test/CodeGenCXX/pragma-unroll.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/matrix-type-indexing.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl
    M clang/test/CodeGenHLSL/builtins/WaveActiveBallot.hlsl
    M clang/test/CodeGenObjC/fragile-arc.m
    M clang/test/CodeGenObjC/ivar-layout-64.m
    M clang/test/CodeGenObjC/ivar-layout-array0-struct.m
    M clang/test/CodeGenObjC/ivar-layout-no-optimize.m
    M clang/test/CodeGenObjC/mrc-weak.m
    M clang/test/CodeGenObjCXX/mrc-weak.mm
    M clang/test/CodeGenOpenCL/amdgpu-features-illegal.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/CodeGenSPIRV/Builtins/subgroup.c
    A clang/test/CodeGenSPIRV/Builtins/variadic.c
    M clang/test/CoverageMapping/ctor.cpp
    M clang/test/CoverageMapping/includehell.cpp
    M clang/test/CoverageMapping/macros.c
    M clang/test/DebugInfo/CXX/simple-template-names.cpp
    M clang/test/Driver/aarch64-mcpu-native.c
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/cuda-arch-list.cu
    M clang/test/Driver/loongarch-march.c
    M clang/test/Driver/loongarch-mtune.c
    M clang/test/Driver/openmp-offload-gpu.c
    R clang/test/Driver/prefalign.c
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/riscv-cpus.c
    R clang/test/Driver/sycl.c
    A clang/test/Driver/sycl.cpp
    M clang/test/Frontend/rewrite-includes-bom.c
    M clang/test/Headers/gpuintrin.c
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Index/pch-from-libclang.c
    A clang/test/Lexer/cxx20-module-directive.cpp
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    R clang/test/Modules/Inputs/pch-config-macros/include/Mod1.h
    R clang/test/Modules/Inputs/pch-config-macros/include/module.modulemap
    M clang/test/Modules/context-hash.c
    R clang/test/Modules/pch-config-macros.c
    M clang/test/Modules/pr121066.cpp
    M clang/test/Modules/preprocess-named-modules.cppm
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_ast_print.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_messages.cpp
    R clang/test/OpenMP/target_update_strided_messages.c
    A clang/test/OpenMP/target_update_strided_messages_from.c
    A clang/test/OpenMP/target_update_strided_messages_to.c
    R clang/test/OpenMP/target_update_strided_multiple_messages.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_from.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_to.c
    R clang/test/OpenMP/target_update_strided_partial_messages.c
    A clang/test/OpenMP/target_update_strided_partial_messages_from.c
    A clang/test/OpenMP/target_update_strided_partial_messages_to.c
    M clang/test/OpenMP/task_ast_print.cpp
    M clang/test/OpenMP/task_codegen.cpp
    A clang/test/OpenMP/task_transparent_messages.cpp
    A clang/test/OpenMP/task_transparent_serialization.cpp
    M clang/test/OpenMP/taskloop_ast_print.cpp
    M clang/test/OpenMP/taskloop_codegen.cpp
    M clang/test/Parser/cxx2b-lambdas.cpp
    M clang/test/Preprocessor/init-loongarch.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Profile/c-mcdc-logicalop-ternary.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/constexpr.c
    M clang/test/Sema/scope-check.c
    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-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    A clang/test/Sema/wasm-funcref-crash.c
    M clang/test/SemaCXX/builtin-is-within-lifetime.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fold-conditional.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-in-static-sized-array.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage.cpp
    A clang/test/SemaCXX/wasm-funcref-crash.cpp
    A clang/test/SemaHLSL/Language/EmptyInitializers.hlsl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-wave32-func-attr.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/TableGen/target-builtins-prototype-parser.td
    A clang/test/Tooling/clang-extdef-mapping-no-args.cpp
    A clang/test/Tooling/clang-extdef-mapping.cpp
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/DeclPrinterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
    M clang/unittests/Analysis/FlowSensitive/FormulaTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockTUSummaryBuilder.h
    A clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/www/builtins.py
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/dfsan/dfsan_platform.h
    M compiler-rt/lib/rtsan/CMakeLists.txt
    M compiler-rt/lib/rtsan/rtsan_context.cpp
    M compiler-rt/lib/rtsan/rtsan_suppressions.cpp
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
    M compiler-rt/lib/tsan/rtl/tsan_flags.cpp
    M compiler-rt/test/dfsan/custom.cpp
    M compiler-rt/test/dfsan/lit.cfg.py
    M compiler-rt/test/dfsan/origin_endianness.c
    M compiler-rt/test/dfsan/pair.cpp
    M compiler-rt/test/dfsan/struct.c
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp
    A cross-project-tests/dtlto/multimodule.test
    M flang-rt/cmake/modules/GetToolchainDirs.cmake
    M flang-rt/lib/runtime/time-intrinsic.cpp
    M flang/docs/CMakeLists.txt
    M flang/docs/Directives.md
    M flang/docs/OpenACC.md
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Lower/MultiImageFortran.h
    M flang/include/flang/Lower/OpenACC.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.h
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/MIF/MIFOps.td
    M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
    M flang/include/flang/Optimizer/OpenACC/Passes.h
    M flang/include/flang/Optimizer/OpenACC/Passes.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/include/flang/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.h
    M flang/include/flang/Optimizer/Support/Utils.h
    A flang/include/flang/Optimizer/Transforms/FIRToMemRefTypeConverter.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/dump-expr.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/MultiImageFortran.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    M flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp
    A flang/lib/Optimizer/Dialect/FIROperationMoveOpInterface.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
    M flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/Support/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/Support/FIROpenMPOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/source.cpp
    M flang/lib/Parser/tools.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-deallocate.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-nullify.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-purity.cpp
    M flang/lib/Semantics/check-purity.h
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/program-tree.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/module/iso_c_binding.f90
    A flang/test/Driver/input-from-stdin/debug-info-filename.f90
    M flang/test/Driver/target-cpu-features-invalid.f90
    M flang/test/Examples/feature-list-class.f90
    M flang/test/Examples/feature-list-functions.f90
    M flang/test/Examples/omp-atomic.f90
    M flang/test/Examples/omp-declarative-directive.f90
    M flang/test/Examples/omp-device-constructs.f90
    M flang/test/Examples/omp-in-reduction-clause.f90
    M flang/test/Examples/omp-nowait.f90
    M flang/test/Examples/omp-order-clause.f90
    M flang/test/Examples/omp-sections.f90
    M flang/test/Examples/print-fns-calls.f90
    M flang/test/Examples/print-fns-definitions.f90
    M flang/test/Examples/print-fns-interfaces.f90
    M flang/test/Fir/OpenACC/recipe-populate-firstprivate.mlir
    M flang/test/Fir/OpenACC/recipe-populate-private.mlir
    A flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
    M flang/test/Fir/convert-memref-codegen.mlir
    M flang/test/Integration/complex-div-to-llvm.f90
    A flang/test/Integration/debug-use-stmt.f90
    A flang/test/Lower/HLFIR/ignore-tkr-c-descriptor.f90
    A flang/test/Lower/MIF/change_team2.f90
    M flang/test/Lower/OpenACC/acc-cache.f90
    A flang/test/Lower/OpenACC/acc-declare-common-present-in-function.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    A flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/array-elemental-calls-2.f90
    M flang/test/Lower/array-expression-assumed-size.f90
    M flang/test/Lower/array-temp.f90
    M flang/test/Lower/array-user-def-assignments.f90
    M flang/test/Lower/array-wide-char.f90
    M flang/test/Lower/array.f90
    M flang/test/Lower/associate-construct-2.f90
    M flang/test/Lower/assumed-shape-callee.f90
    M flang/test/Lower/assumed-type.f90
    M flang/test/Lower/basic-call.f90
    M flang/test/Lower/block.f90
    M flang/test/Lower/call-copy-in-out.f90
    M flang/test/Lower/call-implicit.f90
    M flang/test/Lower/call.f90
    M flang/test/Lower/character-compare.f90
    A flang/test/Parser/bug135964.f90
    M flang/test/Semantics/OpenACC/acc-host-data.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/declare-simd-uniform.f90
    M flang/test/Semantics/OpenMP/declare-target08.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    M flang/test/Semantics/OpenMP/map-clause-v60.f90
    M flang/test/Semantics/OpenMP/use_device_addr1.f90
    A flang/test/Semantics/bug150820.f90
    M flang/test/Semantics/call03.f90
    A flang/test/Semantics/call46.f90
    A flang/test/Semantics/cuf-proc-attr-error.cuf
    M flang/test/Semantics/misc-intrinsics.f90
    M flang/test/Semantics/symbol03.f90
    A flang/test/Transforms/FIRToMemRef/alloca.mlir
    A flang/test/Transforms/FIRToMemRef/array-coor-op.mlir
    A flang/test/Transforms/FIRToMemRef/complex.mlir
    A flang/test/Transforms/FIRToMemRef/convert-opt.mlir
    A flang/test/Transforms/FIRToMemRef/cuda-alloca.mlir
    A flang/test/Transforms/FIRToMemRef/derived-types.mlir
    A flang/test/Transforms/FIRToMemRef/index.mlir
    A flang/test/Transforms/FIRToMemRef/load-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-dynamic.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/load-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/logical.mlir
    A flang/test/Transforms/FIRToMemRef/no-declare.mlir
    A flang/test/Transforms/FIRToMemRef/reject-conversions.mlir
    A flang/test/Transforms/FIRToMemRef/replace.mlir
    A flang/test/Transforms/FIRToMemRef/slice.mlir
    A flang/test/Transforms/FIRToMemRef/store-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/store-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/store-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/tbaa-tag.mlir
    M flang/test/Transforms/OpenACC/acc-implicit-data.fir
    M flang/test/Transforms/OpenACC/acc-implicit-firstprivate.fir
    A flang/test/Transforms/OpenACC/offload-target-verifier.fir
    M flang/test/Transforms/debug-imported-entity.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir
    A flang/test/Transforms/debug-use-stmt.fir
    M flang/test/Transforms/licm.fir
    M libc/hdr/CMakeLists.txt
    M libc/shared/math.h
    A libc/shared/math/dfmal.h
    A libc/shared/math/f16fma.h
    A libc/shared/math/fsqrt.h
    A libc/shared/math/fsqrtf128.h
    A libc/shared/math/hypotf.h
    A libc/shared/math/ilogbf.h
    A libc/shared/math/ilogbl.h
    A libc/shared/math/llogbf.h
    A libc/shared/math/logbf.h
    A libc/shared/math/logbf128.h
    A libc/shared/math/logbf16.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/dfmal.h
    A libc/src/__support/math/f16fma.h
    A libc/src/__support/math/fsqrt.h
    A libc/src/__support/math/fsqrtf128.h
    A libc/src/__support/math/hypotf.h
    A libc/src/__support/math/ilogbf.h
    A libc/src/__support/math/ilogbl.h
    A libc/src/__support/math/llogbf.h
    A libc/src/__support/math/logbf.h
    A libc/src/__support/math/logbf128.h
    A libc/src/__support/math/logbf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/dfmal.cpp
    M libc/src/math/generic/f16fma.cpp
    M libc/src/math/generic/fsqrt.cpp
    M libc/src/math/generic/fsqrtf128.cpp
    M libc/src/math/generic/hypotf.cpp
    M libc/src/math/generic/ilogbf.cpp
    M libc/src/math/generic/ilogbl.cpp
    M libc/src/math/generic/llogbf.cpp
    M libc/src/math/generic/logbf.cpp
    M libc/src/math/generic/logbf128.cpp
    M libc/src/math/generic/logbf16.cpp
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/strings/CMakeLists.txt
    A libc/test/src/strings/wide_read_memory_test.cpp
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/include/clc/opencl/synchronization/utils.h
    M libclc/opencl/include/clc/opencl/utils.h
    M libcxx/.clang-format
    M libcxx/CMakeLists.txt
    M libcxx/Maintainers.md
    M libcxx/docs/Contributing.rst
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/ReleaseNotes/22.rst
    A libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/ReleaseProcedure.rst
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    R libcxx/docs/Status/PSTL.rst
    R libcxx/docs/Status/PSTLPaper.csv
    M libcxx/docs/conf.py
    M libcxx/docs/index.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/ranges_equal.h
    A libcxx/include/__atomic/atomic_sync_timed.h
    M libcxx/include/__bit/byteswap.h
    M libcxx/include/__chrono/day.h
    M libcxx/include/__chrono/hh_mm_ss.h
    M libcxx/include/__chrono/literals.h
    M libcxx/include/__chrono/month.h
    M libcxx/include/__chrono/month_weekday.h
    M libcxx/include/__chrono/monthday.h
    M libcxx/include/__chrono/weekday.h
    M libcxx/include/__chrono/year.h
    M libcxx/include/__chrono/year_month.h
    M libcxx/include/__chrono/year_month_day.h
    M libcxx/include/__chrono/year_month_weekday.h
    M libcxx/include/__config
    M libcxx/include/__config_site.in
    M libcxx/include/__cxx03/cfloat
    M libcxx/include/__cxx03/module.modulemap
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/valid_range.h
    M libcxx/include/__random/binomial_distribution.h
    M libcxx/include/atomic
    M libcxx/include/cfloat
    R libcxx/include/float.h
    M libcxx/include/fstream
    M libcxx/include/module.modulemap.in
    M libcxx/include/semaphore
    M libcxx/include/version
    M libcxx/lib/abi/README.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/CMakeLists.txt
    M libcxx/src/atomic.cpp
    M libcxx/src/chrono.cpp
    M libcxx/src/experimental/time_zone.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp
    M libcxx/src/include/config_elast.h
    M libcxx/src/include/refstring.h
    M libcxx/src/locale.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_if.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/replace.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/sample.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/shuffle.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/swap_ranges.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.binary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.unary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/adjacent_find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/any_all_none_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/count.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/equal.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_end.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_first_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/is_permutation.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/mismatch.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/is_partitioned.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_point.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/stable_partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted_until.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/stable_sort.bench.cpp
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
    M libcxx/test/benchmarks/iterators/distance.bench.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.join.with/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/deref.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/iter_move.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.sentinel/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/base.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/begin.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/end.nodiscard.verify.cpp
    M libcxx/test/libcxx/strings/basic.string/nonnull.verify.cpp
    M libcxx/test/libcxx/time/nodiscard.verify.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/float_h.compile.pass.cpp
    M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.permissions/permissions.pass.cpp
    M libcxx/test/std/language.support/support.limits/c.limits/cfloat.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/thread/thread.semaphore/lost_wakeup.timed.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp
    M libcxx/test/support/concat_macros.h
    M libcxx/utils/benchmark-historical
    M libcxx/utils/build-at-commit
    A libcxx/utils/ci/benchmark-for-lnt.py
    M libcxx/utils/ci/images/libcxx_release_runners.txt
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/test-at-commit
    M libcxxabi/include/cxxabi.h
    M libcxxabi/src/cxa_guard_impl.h
    M libcxxabi/src/cxa_personality.cpp
    M libcxxabi/src/fallback_malloc.cpp
    M libcxxabi/test/guard_test_basic.pass.cpp
    M libcxxabi/test/guard_threaded_test.pass.cpp
    M libcxxabi/test/test_fallback_malloc.pass.cpp
    M libsycl/CMakeLists.txt
    M libsycl/README.md
    A libsycl/docs/CodingGuidelines.rst
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/backend.hpp
    M libsycl/include/sycl/__impl/detail/config.hpp
    A libsycl/include/sycl/__impl/detail/obj_utils.hpp
    A libsycl/include/sycl/__impl/exception.hpp
    A libsycl/include/sycl/__impl/info/desc_base.hpp
    A libsycl/include/sycl/__impl/info/platform.hpp
    M libsycl/include/sycl/__impl/platform.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/CMakeLists.txt
    A libsycl/src/detail/global_objects.cpp
    A libsycl/src/detail/global_objects.hpp
    A libsycl/src/detail/offload/offload_topology.cpp
    A libsycl/src/detail/offload/offload_topology.hpp
    A libsycl/src/detail/offload/offload_utils.cpp
    A libsycl/src/detail/offload/offload_utils.hpp
    A libsycl/src/detail/platform_impl.cpp
    A libsycl/src/detail/platform_impl.hpp
    A libsycl/src/exception.cpp
    A libsycl/src/exception_list.cpp
    M libsycl/src/platform.cpp
    M libsycl/src/version.hpp.in
    A libsycl/tools/CMakeLists.txt
    A libsycl/tools/sycl-ls/CMakeLists.txt
    A libsycl/tools/sycl-ls/sycl-ls.cpp
    M libunwind/include/__libunwind_config.h
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/SyntheticSections.cpp
    A lld/test/ELF/dtlto/timetrace.test
    A lld/test/ELF/loongarch-call30.s
    A lld/test/ELF/loongarch-relax-call30-2.s
    A lld/test/ELF/loongarch-relax-call30.s
    M lld/test/ELF/loongarch-relax-emit-relocs.s
    M lld/test/ELF/loongarch-tls-gd-edge-case.s
    M lld/test/ELF/loongarch-tls-gd.s
    M lld/test/ELF/loongarch-tls-ie.s
    M lld/test/ELF/loongarch-tls-ld.s
    M lld/test/ELF/loongarch-tlsdesc.s
    M lld/test/ELF/mips-mgot.s
    M lld/test/ELF/mips-tls-64.s
    M lld/test/ELF/mips-tls.s
    A lld/test/wasm/debug-weak-unused.s
    M lld/wasm/InputFiles.cpp
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/Core/ModuleList.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/Expression.cpp
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/wasm/ProcessWasm.cpp
    M lldb/source/Plugins/Process/wasm/ProcessWasm.h
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
    R lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Protocol/MCP/Server.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/SymbolFileOnDemand.cpp
    M lldb/source/Target/ModuleCache.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
    M lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/TestFrameVarDILBitFieldExtraction.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/gdb_remote_client/TestXMLRegisterFlags.py
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
    M lldb/test/API/lang/cpp/function-template-parameter-pack/TestFunctionTemplateParameterPack.py
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    M lldb/test/API/tools/lldb-dap/completions/main.cpp
    M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
    M lldb/test/CMakeLists.txt
    A lldb/test/Shell/Expr/TestObjCIncompleteSuperclass.test
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/extension/package.json
    M lldb/unittests/Core/ModuleListTest.cpp
    M lldb/unittests/DAP/LLDBUtilsTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/Instruction/RISCV/TestRISCVEmulator.cpp
    M lldb/unittests/Language/CPlusPlus/CMakeLists.txt
    A lldb/unittests/Language/CPlusPlus/LibStdcppTupleTest.cpp
    M llvm/CMakeLists.txt
    M llvm/Maintainers.md
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/GenerateVersionFromVCS.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    A llvm/docs/AIToolPolicy.md
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/HowToReleaseLLVM.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/MIRLangRef.rst
    M llvm/docs/MemProf.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/Reference.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/Vectorizers.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst
    M llvm/docs/vplan-early-exit-lowered.dot
    M llvm/docs/vplan-early-exit-lowered.png
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/FloatingPointMode.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/STLForwardCompat.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/RuntimeLibcallInfo.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
    M llvm/include/llvm/Analysis/ScalarEvolutionExpressions.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/AsmParserContext.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CAS/MappedFileRegionArena.h
    A llvm/include/llvm/CAS/OnDiskCASLogger.h
    M llvm/include/llvm/CAS/OnDiskDataAllocator.h
    M llvm/include/llvm/CAS/OnDiskGraphDB.h
    M llvm/include/llvm/CAS/OnDiskKeyValueDB.h
    M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
    M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
    M llvm/include/llvm/CGData/CGDataPatchItem.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/include/llvm/CodeGen/PBQP/Math.h
    M llvm/include/llvm/CodeGen/Passes.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/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/DebugInfo/BTF/BTFParser.h
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalAlias.h
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/InlineAsm.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/IR/Type.h
    M llvm/include/llvm/IR/User.h
    M llvm/include/llvm/IR/Value.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWinEH.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/Support/CodeGen.h
    M llvm/include/llvm/Support/Compiler.h
    M llvm/include/llvm/Support/Error.h
    A llvm/include/llvm/Support/ErrorExtras.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/IntegerInclusiveInterval.h
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/include/llvm/Support/LSP/Protocol.h
    M llvm/include/llvm/Support/Registry.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Support/thread.h
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/Transforms/CFGuard.h
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Analysis/Delinearization.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Analysis/VectorUtils.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/CAS/ActionCaches.cpp
    M llvm/lib/CAS/CMakeLists.txt
    M llvm/lib/CAS/DatabaseFile.cpp
    M llvm/lib/CAS/DatabaseFile.h
    M llvm/lib/CAS/MappedFileRegionArena.cpp
    M llvm/lib/CAS/OnDiskCAS.cpp
    A llvm/lib/CAS/OnDiskCASLogger.cpp
    M llvm/lib/CAS/OnDiskDataAllocator.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/lib/CAS/OnDiskKeyValueDB.cpp
    M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
    M llvm/lib/CAS/UnifiedOnDiskCache.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/BranchRelaxation.cpp
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/CodeGen/CFIInstrInserter.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineCSE.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/RegisterUsageInfo.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.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/StatepointLowering.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/StackColoring.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/DebugInfo/BTF/BTFParser.cpp
    M llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
    M llvm/lib/ExecutionEngine/JITLink/loongarch.cpp
    M llvm/lib/ExecutionEngine/Orc/MachO.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/ProfDataUtils.cpp
    M llvm/lib/IR/User.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWin64EH.cpp
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    M llvm/lib/Object/OffloadBundle.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Support/Error.cpp
    M llvm/lib/Support/FloatingPointMode.cpp
    M llvm/lib/Support/Jobserver.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/LSP/Protocol.cpp
    M llvm/lib/Support/Parallel.cpp
    M llvm/lib/Support/Regex.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/regcomp.c
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    A llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
    M llvm/lib/Target/AArch64/AArch64SchedA57.td
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.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/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    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.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    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/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.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/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
    M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
    M llvm/lib/Target/LoongArch/LoongArchOptWInstrs.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.h
    M llvm/lib/Target/M68k/M68kInstrControl.td
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFoldMemOffset.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    A llvm/lib/Target/RISCV/RISCVInstrFormatsXAIF.td
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoSFB.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoXAIF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfbfmin.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.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/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp
    M llvm/lib/Target/TargetLoweringObjectFile.cpp
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/VE/VEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86Combine.td
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp
    M llvm/lib/Target/X86/X86FixupSetCC.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86LoadValueInjectionRetHardening.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86ReturnThunks.cpp
    M llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
    M llvm/lib/Target/XCore/XCoreSelectionDAGInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/LoongArchTargetParser.cpp
    M llvm/lib/TargetParser/TargetDataLayout.cpp
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/TextAPI/TextStubV5.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/IPO/BlockExtractor.cpp
    M llvm/lib/Transforms/IPO/ConstantMerge.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.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/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/GVNHoist.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/InferAlignment.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/CodeMoverUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.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.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
    M llvm/test/Analysis/CostModel/AArch64/arith-widening.ll
    M llvm/test/Analysis/CostModel/AArch64/cast.ll
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AArch64/cttz_elts.ll
    M llvm/test/Analysis/CostModel/AArch64/fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/fp-conversions-odd-vector-types.ll
    M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll
    M llvm/test/Analysis/CostModel/AArch64/masked_ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/no-sve-no-neon.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fpext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptrunc.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-itofp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-trunc.ll
    M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
    A llvm/test/Analysis/CostModel/RISCV/scalable-gather-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    A llvm/test/Analysis/CostModel/RISCV/scalable-scatter-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll
    M llvm/test/Analysis/Delinearization/fixed_size_array.ll
    A llvm/test/Analysis/Delinearization/global_array_bounds.ll
    M llvm/test/Analysis/Delinearization/validation_large_size.ll
    M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/infer_affine_domain_ovlf.ll
    M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
    M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr-i32-index-width.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr.ll
    M llvm/test/Analysis/ValueTracking/assume.ll
    A llvm/test/Assembler/arbitrary-fp-convert.ll
    M llvm/test/Assembler/auto_upgrade_intrinsics.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/invalid-record-strtab.ll
    M llvm/test/Bitcode/invalid.test
    M llvm/test/Bitcode/pr18704.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/blockaddress-stale-addresstaken.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combiner-load-store-indexing.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/indexed-store-memsize.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-copy-vector-crash.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-unmerge.mir
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-minmaxv.ll
    A llvm/test/CodeGen/AArch64/aarch64-sve-setcc-promote-nxv8i8-crash.ll
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/arm64-clrsb.ll
    A llvm/test/CodeGen/AArch64/arm64-cvt-bitcast.ll
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/arm64-windows-calls.ll
    A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr8.mir
    M llvm/test/CodeGen/AArch64/avg.ll
    A llvm/test/CodeGen/AArch64/bit-test.ll
    M llvm/test/CodeGen/AArch64/cls.ll
    M llvm/test/CodeGen/AArch64/combine-sdiv.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-add-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvtn.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/ldst-implicitop.mir
    M llvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-dot-product.ll
    M llvm/test/CodeGen/AArch64/neon-vcmla.ll
    A llvm/test/CodeGen/AArch64/no-xzr-liveins.mir
    A llvm/test/CodeGen/AArch64/nontemporal-store-optsize.ll
    A llvm/test/CodeGen/AArch64/nontemporal-store.ll
    R llvm/test/CodeGen/AArch64/nontemporal.ll
    M llvm/test/CodeGen/AArch64/popcount.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/ptrauth-global-no-pic.ll
    M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    A llvm/test/CodeGen/AArch64/sat-trunc-knownbits.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_deinterleaved_loads.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_interleaved_stores.ll
    M llvm/test/CodeGen/AArch64/seh-minimal-prologue-epilogue.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    A llvm/test/CodeGen/AArch64/setcc-redundant-cmlt.ll
    M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
    M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sme-pstate-sm-changing-call-disable-coalescing.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-add-sub-za16.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvtn.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-faminmax.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fmlas.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4-lane-x4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlall.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlals.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4-fp8.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x1.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x2.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-rshl.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-select-sme-tileslice.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sqdmulh.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sub.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-tmop.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-uclamp.ll
    M llvm/test/CodeGen/AArch64/sme2p2-intrinsics-fmul.ll
    M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AArch64/stack-probing-64k.ll
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    M llvm/test/CodeGen/AArch64/stack-probing-last-in-block.mir
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/AArch64/stack-probing-shrink-wrap.mir
    M llvm/test/CodeGen/AArch64/stack-probing-sve.ll
    M llvm/test/CodeGen/AArch64/stack-probing.ll
    A llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
    M llvm/test/CodeGen/AArch64/subreg_to_reg_coalescing_issue.mir
    M llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-fmsub.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-contiguous-prefetches.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ldN-sret-reg+imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqdec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqinc.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-reg-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-and-combine.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bitselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-build-vector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-concat.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-log.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mul.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ld2-alloca.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-limit-duplane.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-log-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-gather-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ptest.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-vector-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
    M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-luti.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve2p1-dots-partial-reduction.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-crypto.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pp.ll
    M llvm/test/CodeGen/AArch64/switch-cases-to-branch-and.ll
    M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/win-import-call-optimization.ll
    M llvm/test/CodeGen/AArch64/win64_vararg2.ll
    A llvm/test/CodeGen/AArch64/wineh-dangling-eh-pad-reference.ll
    M llvm/test/CodeGen/AArch64/wineh-pac.ll
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair2.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xchg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xor.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-trunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
    M llvm/test/CodeGen/AMDGPU/emit-high-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    A llvm/test/CodeGen/AMDGPU/fmamk_fmaak-t16.mir
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/fshl.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/idemponent-atomics.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.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.cooperative.atomic-agent.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-system.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    A llvm/test/CodeGen/AMDGPU/lower-noalias-kernargs.ll
    R llvm/test/CodeGen/AMDGPU/machine-scheduler-rematerialization-scoring.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
    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/mad-combine.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.mir
    M llvm/test/CodeGen/AMDGPU/permlane16_var-op-sel.ll
    M llvm/test/CodeGen/AMDGPU/private-memory-atomics.ll
    M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
    M llvm/test/CodeGen/AMDGPU/scalar-float-sop1.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    A llvm/test/CodeGen/AMDGPU/swdev-549940.ll
    M llvm/test/CodeGen/AMDGPU/valu-i1.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    A llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir
    M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/ARM/neon-dot-product.ll
    A llvm/test/CodeGen/ARM/tldrlit_ga_size.mir
    M llvm/test/CodeGen/DirectX/WaveActiveBallot.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-addr.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-bad-move.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-base-type-mismatch.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-basic.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-tbaa.ll
    A llvm/test/CodeGen/Hexagon/constp-signed.ll
    M llvm/test/CodeGen/Hexagon/fp16-promote.ll
    M llvm/test/CodeGen/Hexagon/libcall_tail.ll
    A llvm/test/CodeGen/Hexagon/machine-combiner-reassoc.mir
    A llvm/test/CodeGen/Hexagon/print-pipeline-passes.ll
    M llvm/test/CodeGen/Hexagon/swp-carried-dep1.mir
    M llvm/test/CodeGen/Hexagon/swp-carried-dep2.mir
    M llvm/test/CodeGen/Hexagon/vcombine_zero_diff_ptrs.ll
    A llvm/test/CodeGen/Hexagon/vector-load-group-min-threshold.ll
    M llvm/test/CodeGen/LoongArch/block-address.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation-spill-32.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/LoongArch/code-models.ll
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/double-imm.ll
    M llvm/test/CodeGen/LoongArch/expand-call.ll
    M llvm/test/CodeGen/LoongArch/float-imm.ll
    M llvm/test/CodeGen/LoongArch/global-address.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-f.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-m.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/flog2.ll
    A llvm/test/CodeGen/LoongArch/load-itofp-combine.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll
    M llvm/test/CodeGen/LoongArch/musttail.ll
    M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/LoongArch/stack-protector-target.ll
    M llvm/test/CodeGen/LoongArch/target-abi.ll
    M llvm/test/CodeGen/LoongArch/tls-models.ll
    M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    A llvm/test/CodeGen/M68k/setcc-redundant.ll
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_print.txt
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_wo=0.5_print.txt
    A llvm/test/CodeGen/NVPTX/f16-add-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-mul-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-sub-sat.ll
    A llvm/test/CodeGen/NVPTX/fma-oob.ll
    M llvm/test/CodeGen/NVPTX/no-stack-protector-libcall-error.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-ld-red.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/PowerPC/amo-enable.ll
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll
    M llvm/test/CodeGen/PowerPC/vavg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/rv32p.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/rv64p.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    A llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
    M llvm/test/CodeGen/RISCV/cfi-multiple-locations.mir
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/fold-mem-offset-zilsd.ll
    M llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll
    A llvm/test/CodeGen/RISCV/rda-entry-bb-is-a-loop.mir
    M llvm/test/CodeGen/RISCV/rda-liveins.mir
    M llvm/test/CodeGen/RISCV/rda-stack.mir
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/pr165232.ll
    M llvm/test/CodeGen/RISCV/rvv/rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-vscale.i64.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vfclass-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
    M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp-mask.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_cooperative_matrix/cooperative_matrix.ll
    A llvm/test/CodeGen/SPIRV/externally-initialized.ll
    M llvm/test/CodeGen/SPIRV/function/vararg.ll
    A llvm/test/CodeGen/SPIRV/function/variadics-lowering.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveBallot.ll
    M llvm/test/CodeGen/SPIRV/legalization/spv-extractelt-legalization.ll
    A llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-to-array-first-element.ll
    M llvm/test/CodeGen/SystemZ/rda-stack-copy.mir
    A llvm/test/CodeGen/SystemZ/stack-align.ll
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/CodeGen/WebAssembly/simd-load-lane-offset.ll
    A llvm/test/CodeGen/WebAssembly/slp-memory-interleave.ll
    M llvm/test/CodeGen/X86/GlobalISel/add-ext.ll
    M llvm/test/CodeGen/X86/GlobalISel/pr49087.ll
    M llvm/test/CodeGen/X86/GlobalISel/ptr-add.ll
    M llvm/test/CodeGen/X86/GlobalISel/undef.ll
    M llvm/test/CodeGen/X86/apx/setzucc.ll
    M llvm/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll
    M llvm/test/CodeGen/X86/atomic-load-store.ll
    M llvm/test/CodeGen/X86/attr-function-return.mir
    M llvm/test/CodeGen/X86/avgceils.ll
    M llvm/test/CodeGen/X86/avgceilu.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/basic-block-address-map-empty-block.ll
    M llvm/test/CodeGen/X86/basic-block-sections-code-prefetch-call-terminates-block.ll
    A llvm/test/CodeGen/X86/blockaddress-stale-addresstaken.ll
    M llvm/test/CodeGen/X86/cfguard-checks.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    A llvm/test/CodeGen/X86/clmul-x86.ll
    M llvm/test/CodeGen/X86/clmul.ll
    A llvm/test/CodeGen/X86/combine-pclmul.ll
    M llvm/test/CodeGen/X86/combine-smax.ll
    M llvm/test/CodeGen/X86/combine-smin.ll
    M llvm/test/CodeGen/X86/combine-umax.ll
    M llvm/test/CodeGen/X86/combine-umin.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare.ll
    M llvm/test/CodeGen/X86/dwarf_eh_resume.ll
    M llvm/test/CodeGen/X86/extractelement-fp.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fp-int-fp-cvt.ll
    M llvm/test/CodeGen/X86/gc-empty-basic-blocks.ll
    M llvm/test/CodeGen/X86/hipe-cc64.ll
    M llvm/test/CodeGen/X86/isel-fpclass.ll
    A llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/masked_gather.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    A llvm/test/CodeGen/X86/musttail-struct.ll
    M llvm/test/CodeGen/X86/musttail-tailcc.ll
    A llvm/test/CodeGen/X86/nocf_check_musttail.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll
    M llvm/test/CodeGen/X86/print-reaching-defs.mir
    A llvm/test/CodeGen/X86/replace-thunk-tail-win.ll
    M llvm/test/CodeGen/X86/seh-unwind-inline-asm-codegen.ll
    M llvm/test/CodeGen/X86/sibcall.ll
    M llvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll
    M llvm/test/CodeGen/X86/stack-protector-atomicrmw-xchg.ll
    M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll
    M llvm/test/CodeGen/X86/tailcallbyval64.ll
    A llvm/test/CodeGen/X86/tailcallpic.ll
    R llvm/test/CodeGen/X86/tailcallpic1.ll
    R llvm/test/CodeGen/X86/tailcallpic2.ll
    R llvm/test/CodeGen/X86/tailcallpic3.ll
    M llvm/test/CodeGen/X86/tailccbyval64.ll
    M llvm/test/CodeGen/X86/vector-extract-last-active.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-epilogs.mir
    A llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-instr.mir
    M llvm/test/CodeGen/X86/win64-eh-unwindv2.ll
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-preserved-subreg.mir
    M llvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir
    M llvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-after.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-clobbered.mir
    A llvm/test/DebugInfo/X86/fission-simple-template-names.ll
    M llvm/test/DebugInfo/X86/fission-template.ll
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_reloc_addsub.s
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_x86-64-freebsd-triple.s
    A llvm/test/FileCheck/backref-limit.txt
    M llvm/test/FileCheck/capture-limit.txt
    M llvm/test/Instrumentation/AddressSanitizer/skip-coro.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll
    M llvm/test/MC/AMDGPU/expressions-gfx10.s
    M llvm/test/MC/AMDGPU/gfx10-constant-bus.s
    M llvm/test/MC/AMDGPU/gfx1030_new.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11-promotions-fake16.s
    M llvm/test/MC/AMDGPU/gfx11-promotions.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features-fake16.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/lds_direct-gfx10.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/literalv216.s
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s
    M llvm/test/MC/AMDGPU/reloc-operands-gfx10.s
    M llvm/test/MC/AMDGPU/vcmpx-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-literal.s
    M llvm/test/MC/AMDGPU/wave32.s
    M llvm/test/MC/AMDGPU/wave_any.s
    M llvm/test/MC/AMDGPU/writelane_m0.s
    M llvm/test/MC/ARM/seh-checks2.s
    M llvm/test/MC/AsmParser/directive_seh.s
    M llvm/test/MC/AsmParser/seh-directive-errors.s
    M llvm/test/MC/COFF/seh-unwindv2.s
    M llvm/test/MC/COFF/seh.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-sgpr-max.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop3-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1030_new.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3p_literalv216.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8-fake16.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/literals.txt
    M llvm/test/MC/LoongArch/Basic/Integer/invalid.s
    M llvm/test/MC/LoongArch/Macros/macros-call.s
    M llvm/test/MC/M68k/Control/Classes/MxCALL.s
    M llvm/test/MC/Mips/set-sym-recursive.s
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/xaifet-amo-valid.s
    A llvm/test/MC/RISCV/xaifet-simd-valid.s
    A llvm/test/MC/X86/Relocations/fixup-overflow-32.s
    A llvm/test/MC/X86/Relocations/fixup-overflow.s
    A llvm/test/MC/X86/Relocations/jcxz-loop-overflow.s
    R llvm/test/MC/X86/x86-jcxz-loop-fixup.s
    M llvm/test/TableGen/CPtrWildcard.td
    M llvm/test/TableGen/RegClassByHwMode.td
    A llvm/test/ThinLTO/X86/memprof-weak-alias.ll
    A llvm/test/ThinLTO/X86/thinlto-savetemps-mod.ll
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/or-load.ll
    A llvm/test/Transforms/AggressiveInstCombine/AMDGPU/fold-loads-multiple-uses.ll
    M llvm/test/Transforms/AggressiveInstCombine/X86/or-load.ll
    M llvm/test/Transforms/AggressiveInstCombine/memchr.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/pcsections.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-private-gas.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization-preserve-name.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fsub.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-nand.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-simplify-cfg-CAS-block.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-integer-ops-0-to-add-0.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-cmpxchg-flat-maybe-private.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-load.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-store.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/unaligned-atomic.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v7.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v8.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll
    M llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-expand.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/load-store-atomic.ll
    M llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-double.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-float.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cmpxchg.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/issue55983.ll
    M llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/partword.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-libcall.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-initial-load.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll
    A llvm/test/Transforms/AtomicExpand/X86/missing-analysis.ll
    M llvm/test/Transforms/Attributor/nofpclass-fma.ll
    M llvm/test/Transforms/Attributor/nofpclass-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
    M llvm/test/Transforms/Attributor/nofpclass-nan-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-select.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll
    A llvm/test/Transforms/Coroutines/coro-cleanup-noop-erase.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    A llvm/test/Transforms/CorrelatedValuePropagation/assume-operand-bundles.ll
    M llvm/test/Transforms/DeadStoreElimination/noop-stores.ll
    A llvm/test/Transforms/DwarfEHPrepare/missing-analysis.ll
    A llvm/test/Transforms/GlobalMerge/metadata1.ll
    A llvm/test/Transforms/GlobalMerge/metadata2.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll
    M llvm/test/Transforms/InferAlignment/ptrtoint.ll
    A llvm/test/Transforms/Inline/ARM/inline-dotprod.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/fabs.ll
    M llvm/test/Transforms/InstCombine/freeze-integer-intrinsics.ll
    A llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/InstCombine/icmp-logical.ll
    M llvm/test/Transforms/InstCombine/merge-icmp.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    A llvm/test/Transforms/InstCombine/pr176548.ll
    A llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-no-widen.ll
    M llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-aggregates.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-canonicalize.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-rounding-intrinsics.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstSimplify/fcmp.ll
    M llvm/test/Transforms/JumpThreading/domtree-updates.ll
    M llvm/test/Transforms/LoopUnroll/convergent.controlled.ll
    M llvm/test/Transforms/LoopUnroll/followup.ll
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/pr131465.ll
    A llvm/test/Transforms/LoopUnroll/unroll-dont-copy-latch-loop-id.ll
    M llvm/test/Transforms/LoopUnroll/unroll-loads-cse.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/findlast-epilogue-loop.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fold-tail-low-trip-count.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/hoist-predicated-loads-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/multiple-result-intrinsics.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/reduction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll
    A llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/cast-induction.ll
    A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    A llvm/test/Transforms/LoopVectorize/expand-ptrtoaddr.ll
    A llvm/test/Transforms/LoopVectorize/find-last.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    A llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.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-trunc.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/multiple-result-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp.ll
    A llvm/test/Transforms/LoopVectorize/select-folds.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/tripcount.ll
    M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
    A llvm/test/Transforms/MemCpyOpt/stack-move-offset.ll
    M llvm/test/Transforms/MemCpyOpt/stack-move.ll
    M llvm/test/Transforms/PGOProfile/indirect_call_promotion_unique.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
    M llvm/test/Transforms/SCCP/get_vector_length-intrinsic.ll
    A llvm/test/Transforms/SLPVectorizer/X86/copyables-with-parent-scalars-in-phis.ll
    A llvm/test/Transforms/SLPVectorizer/X86/crash_getpointersdiff-nullopt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/matching-insert-point-for-nodes.ll
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-throttled.ll
    M llvm/test/Transforms/SafeStack/AArch64/abi.ll
    M llvm/test/Transforms/SafeStack/AArch64/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/AArch64/unreachable.ll
    M llvm/test/Transforms/SafeStack/ARM/abi.ll
    M llvm/test/Transforms/SafeStack/ARM/debug.ll
    M llvm/test/Transforms/SafeStack/ARM/setjmp.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
    M llvm/test/Transforms/SafeStack/X86/abi.ll
    M llvm/test/Transforms/SafeStack/X86/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/X86/addr-taken.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace-error.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/array-aligned.ll
    M llvm/test/Transforms/SafeStack/X86/array.ll
    M llvm/test/Transforms/SafeStack/X86/byval.ll
    M llvm/test/Transforms/SafeStack/X86/call.ll
    M llvm/test/Transforms/SafeStack/X86/cast.ll
    M llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
    M llvm/test/Transforms/SafeStack/X86/coloring.ll
    M llvm/test/Transforms/SafeStack/X86/coloring2.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep.ll
    M llvm/test/Transforms/SafeStack/X86/constant-geps.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc-dynamic.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
    M llvm/test/Transforms/SafeStack/X86/dynamic-alloca.ll
    M llvm/test/Transforms/SafeStack/X86/escape-addr-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store2.ll
    M llvm/test/Transforms/SafeStack/X86/escape-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-casted-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-invoke.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-negative.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-ptrtoint.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-phi-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-select-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-vector.ll
    M llvm/test/Transforms/SafeStack/X86/invoke.ll
    M llvm/test/Transforms/SafeStack/X86/layout-frag.ll
    M llvm/test/Transforms/SafeStack/X86/layout-region-split.ll
    M llvm/test/Transforms/SafeStack/X86/memintrinsic-oob-read.ll
    A llvm/test/Transforms/SafeStack/X86/missing-analysis.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/no-attr.ll
    M llvm/test/Transforms/SafeStack/X86/no-crash-on-lifetime.ll
    M llvm/test/Transforms/SafeStack/X86/phi-cycle.ll
    M llvm/test/Transforms/SafeStack/X86/phi.ll
    M llvm/test/Transforms/SafeStack/X86/pr54784.ll
    M llvm/test/Transforms/SafeStack/X86/ret.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp2.ll
    M llvm/test/Transforms/SafeStack/X86/sink-to-use.ll
    M llvm/test/Transforms/SafeStack/X86/ssp.ll
    M llvm/test/Transforms/SafeStack/X86/store.ll
    M llvm/test/Transforms/SafeStack/X86/struct.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll
    M llvm/test/Transforms/StackProtector/cross-dso-cfi-stack-chk-fail.ll
    A llvm/test/Transforms/StackProtector/missing-analysis.ll
    M llvm/test/Transforms/StackProtector/stack-chk-fail-alias.ll
    M llvm/test/Verifier/alloc-variant-zeroed.ll
    A llvm/test/Verifier/arbitrary-fp-convert.ll
    A llvm/test/Verifier/gep-vector-non-byte-element.ll
    M llvm/test/lit.cfg.py
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/riscv-show-inst.test
    A llvm/test/tools/dxil-dis/waveactiveballot.ll
    M llvm/test/tools/llc/new-pm/start-stop.ll
    A llvm/test/tools/llvm-cas/logging.test
    M llvm/test/tools/llvm-cov/branch-templates.test
    A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
    A llvm/test/tools/llvm-objcopy/ELF/update-section-not-in-segment.test
    M llvm/test/tools/llvm-objdump/COFF/Inputs/win64-unwind.exe.coff-x86_64.asm
    R llvm/test/tools/llvm-objdump/MachO/Inputs/LLVM-bundle.macho-x86_64
    R llvm/test/tools/llvm-objdump/MachO/LLVM-bundle.test
    M llvm/test/tools/llvm-profgen/coff-profile.test
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
    M llvm/test/tools/llvm-readobj/ELF/note-core.test
    A llvm/test/tools/llvm-readobj/MachO/all.test
    M llvm/test/tools/llvm-strings/stdin.test
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-config/CMakeLists.txt
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-cov/CoverageViewOptions.h
    M llvm/tools/llvm-ir2vec/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/Utils.cpp
    A llvm/tools/llvm-ir2vec/lib/Utils.h
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
    R llvm/tools/llvm-ir2vec/llvm-ir2vec.h
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.h
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp
    M llvm/unittests/ADT/APFloatTest.cpp
    M llvm/unittests/ADT/ArrayRefTest.cpp
    M llvm/unittests/ADT/FloatingPointMode.cpp
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/ADT/STLForwardCompatTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp
    M llvm/unittests/CAS/CMakeLists.txt
    A llvm/unittests/CAS/OnDiskCASLoggerTest.cpp
    M llvm/unittests/CAS/OnDiskGraphDBTest.cpp
    M llvm/unittests/CAS/OnDiskTrieRawHashMapTest.cpp
    M llvm/unittests/CAS/ProgramTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGTestBase.h
    M llvm/unittests/ExecutionEngine/JITLink/StubsTests.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp
    M llvm/unittests/Support/ProgramStackTest.cpp
    M llvm/unittests/Support/RegexTest.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
    M llvm/unittests/Target/ARM/ARMSelectionDAGTest.cpp
    M llvm/unittests/Target/RISCV/RISCVSelectionDAGTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
    M llvm/utils/TableGen/Basic/TableGen.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
    M llvm/utils/git-llvm-push
    M llvm/utils/git/ids-check-helper.py
    A llvm/utils/gn/build/remove_if_exists.py
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/SymbolFile/NativePDB/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CAS/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/lib/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CAS/BUILD.gn
    M llvm/utils/profcheck-xfail.txt
    M llvm/utils/release/build_llvm_release.bat
    M llvm/utils/release/github-upload-release.py
    M llvm/utils/update_mc_test_checks.py
    M mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/Utils/Utils.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/BasicPtxBuilderInterface.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgRelayoutOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/include/mlir/Dialect/Math/IR/MathOps.td
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/include/mlir/Dialect/OpenACC/Analysis/OpenACCSupport.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
    M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVEnums.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/include/mlir/Dialect/Transform/TuneExtension/TuneExtensionOps.td
    M mlir/include/mlir/Dialect/Utils/VerificationUtils.h
    M mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/ArithToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/CMakeLists.txt
    M mlir/lib/Conversion/ArithAndMathToAPFloat/MathToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.h
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Conversion/SPIRVCommon/Pattern.h
    M mlir/lib/Conversion/ShardToMPI/CMakeLists.txt
    M mlir/lib/Conversion/ShardToMPI/ShardToMPI.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    M mlir/lib/Dialect/Async/IR/Async.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/BlockPackMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/PackAndUnpackPatterns.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Math/Transforms/ExpandOps.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/NVGPU/Transforms/OptimizeSharedMemory.cpp
    M mlir/lib/Dialect/OpenACC/Analysis/OpenACCSupport.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenACC/Transforms/OffloadTargetVerifier.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SCF/Transforms/ForallToFor.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/IR/MemoryOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp
    A mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp
    M mlir/lib/Dialect/Shard/Transforms/Transforms.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tensor/Transforms/EmptyOpPatterns.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaInputShape.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
    M mlir/lib/Dialect/Utils/VerificationUtils.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/Transforms/ShuffleVectorFMAOps.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUOptimizeBlockLoads.cpp
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/lib/IR/Remarks.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/python/mlir/dialects/linalg/__init__.py
    M mlir/test/Conversion/MemRefToSPIRV/alloc.mlir
    M mlir/test/Conversion/ShardToMPI/convert-shard-to-mpi.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/Arith/shard-partition.mlir
    M mlir/test/Dialect/Bufferization/canonicalize.mlir
    M mlir/test/Dialect/Bufferization/invalid.mlir
    M mlir/test/Dialect/Complex/canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/convolution/roundtrip-convolution.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/roundtrip.mlir
    M mlir/test/Dialect/Linalg/transform-op-decompose.mlir
    M mlir/test/Dialect/Linalg/vectorization/unsupported.mlir
    M mlir/test/Dialect/Math/expand-math.mlir
    M mlir/test/Dialect/MemRef/canonicalize.mlir
    M mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir
    M mlir/test/Dialect/OpenACC/acc-implicit-data.mlir
    M mlir/test/Dialect/OpenACC/invalid.mlir
    A mlir/test/Dialect/OpenACC/offload-target-verifier.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Dialect/SCF/forall-to-for.mlir
    A mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    A mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    A mlir/test/Dialect/Shard/invalid_annotated.mlir
    M mlir/test/Dialect/Shard/partition.mlir
    M mlir/test/Dialect/SparseTensor/fuse_sparse_pad_with_consumer.mlir
    M mlir/test/Dialect/SparseTensor/sparse_conv_2d_slice_based.mlir
    M mlir/test/Dialect/SparseTensor/sparse_pack.mlir
    M mlir/test/Dialect/SparseTensor/sparse_perm_lower.mlir
    M mlir/test/Dialect/Tensor/fold-empty-op.mlir
    R mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/constant_folding.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    A mlir/test/Dialect/Tosa/tosa-input-shape.mlir
    A mlir/test/Dialect/Tosa/tosa-layerwise-constant-fold.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-valid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir
    M mlir/test/Dialect/Vector/canonicalize.mlir
    A mlir/test/Dialect/X86Vector/shuffle-vector-fmas.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir
    R mlir/test/Dialect/XeGPU/optimize-transpose.mlir
    A mlir/test/Dialect/XeGPU/peephole-optimize.mlir
    M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
    M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
    A mlir/test/IR/parser-string-literal-comment.mlir
    A mlir/test/IR/parser-string-literal-url.mlir
    M mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
    A mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation-vector.mlir
    M mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation.mlir
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/nvgpucompiler.py
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-with-reduction-tiling.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-clauses-trunc-ext.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    A mlir/test/Target/SPIRV/tosa-ops.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/python/dialects/linalg/ops.py
    M mlir/test/python/dialects/transform_interpreter.py
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.h
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    M mlir/unittests/Dialect/OpenACC/OpenACCUtilsTest.cpp
    M mlir/unittests/IR/RemarkTest.cpp
    M mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
    M mlir/utils/textmate/mlir.json
    M mlir/utils/vscode/language-configuration.json
    M mlir/utils/vscode/package-lock.json
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/pdll-grammar.json
    M mlir/utils/vscode/tsconfig.json
    A offload/ci/.gitignore
    A offload/ci/openmp-offload-amdgpu-clang-flang.py
    A offload/ci/openmp-offload-amdgpu-runtime.py
    M offload/include/Shared/Debug.h
    M offload/include/omptarget.h
    M offload/liboffload/API/Queue.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/libomptarget/OpenMP/InteropAPI.cpp
    M offload/libomptarget/PluginManager.cpp
    M offload/libomptarget/omptarget.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp
    M offload/plugins-nextgen/host/src/rtl.cpp
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    R offload/test/offloading/strided_multiple_update.c
    A offload/test/offloading/strided_multiple_update_from.c
    A offload/test/offloading/strided_multiple_update_to.c
    R offload/test/offloading/strided_partial_update.c
    A offload/test/offloading/strided_partial_update_from.c
    A offload/test/offloading/strided_partial_update_to.c
    R offload/test/offloading/strided_update.c
    A offload/test/offloading/strided_update_from.c
    A offload/test/offloading/strided_update_to.c
    M offload/unittests/OffloadAPI/CMakeLists.txt
    A offload/unittests/OffloadAPI/queue/olQueryQueue.cpp
    M openmp/Maintainers.md
    M openmp/tools/omptest/CMakeLists.txt
    M openmp/tools/omptest/test/CMakeLists.txt
    M orc-rt/include/orc-rt/AllocAction.h
    M orc-rt/include/orc-rt/SPSWrapperFunction.h
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/unittests/DirectCaller.h
    M orc-rt/unittests/SessionTest.cpp
    M polly/include/polly/Support/SCEVAffinator.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Support/SCEVAffinator.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Support/ScopHelper.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]


  Commit: 9c0a1cd32a169e030d0897ee64d47a1c5a93bd23
      https://github.com/llvm/llvm-project/commit/9c0a1cd32a169e030d0897ee64d47a1c5a93bd23
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M .ci/buildbot/worker.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    M .ci/utils.sh
    M .github/workflows/containers/github-action-ci-tooling/Dockerfile
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/ids-check.yml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    R .github/workflows/release-lit.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/AArch64/epilogue-determination.s
    A bolt/test/runtime/AArch64/disassemble-plts.c
    M bolt/test/runtime/AArch64/long-jmp-bti-plt.c
    M bolt/utils/docker-tests/Dockerfile
    M clang-tools-extra/Maintainers.rst
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/doc8.ini
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantTypenameCheck.cpp
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness-fixed.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/const-correctness/correctness.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters-header.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/CUDA/cuda.h
    A clang-tools-extra/test/clang-tidy/infrastructure/cuda-basic.cu
    M clang/Maintainers.rst
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_enums.py
    A clang/cmake/caches/Pico.cmake
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ReleaseNotesTemplate.txt
    A clang/docs/ScalableStaticAnalysisFramework/Framework.rst
    A clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/analyzer/user-docs/CrossTranslationUnit.rst
    M clang/docs/index.rst
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/FormatString.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    M clang/include/clang/Analysis/CloneDetection.h
    A clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryBuilder.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryExtractor.h
    M clang/include/clang/Basic/Attr.td
    R clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsNVPTX.td
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LLVM.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/CodeCompletionHandler.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/ModuleLoader.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Lex/TokenLexer.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/AttrImpl.cpp
    M clang/lib/AST/ByteCode/Compiler.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/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/ExprConcepts.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/CloneDetection.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/FormulaSerialization.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/TUSummary/ExtractorRegistry.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/TokenKinds.cpp
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.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/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenCall.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.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/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.h
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.h
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/MCDCState.h
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Headers/amdgpuintrin.h
    M clang/lib/Headers/amo.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/nvptxintrin.h
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Headers/spirvintrin.h
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Lex/TokenLexer.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/TemplateArgumentHasher.cpp
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/test/APINotes/Inputs/Headers/Methods.apinotes
    M clang/test/APINotes/Inputs/Headers/Methods.h
    M clang/test/APINotes/methods.cpp
    M clang/test/AST/ByteCode/builtin-bit-cast.cpp
    M clang/test/AST/ByteCode/builtin-object-size-codegen.cpp
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/codegen.cpp
    M clang/test/AST/ByteCode/functions.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/AST/ByteCode/shifts.cpp
    M clang/test/Analysis/block-in-critical-section.cpp
    M clang/test/Analysis/call-invalidation.cpp
    A clang/test/Analysis/cxx20-range-for-cfg.cpp
    A clang/test/Analysis/std-c-library-functions-char-uchar-conv.c
    M clang/test/C/C23/n3037.c
    M clang/test/CIR/CodeGen/atomic-scoped.c
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/coro-task.cpp
    A clang/test/CIR/CodeGen/fold-during-cg.c
    M clang/test/CIR/CodeGen/inline-asm.c
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/placement-new.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    A clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGen/trivial-ctor-const-init.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2_512bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx10_2bf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512dq-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/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vldq-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
    M clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c
    A clang/test/CIR/CodeGenBuiltins/X86/rdrand-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse41-builtins.c
    A clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/IR/invalid-complex.cir
    M clang/test/CIR/IR/invalid-throw.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/invalid-vector.cir
    A clang/test/CIR/IR/method-attr.cir
    M clang/test/CIR/IR/resume-flat.cir
    M clang/test/CIR/IR/struct.cir
    M clang/test/CIR/IR/throw.cir
    M clang/test/CIR/IR/vector.cir
    A clang/test/CIR/Lowering/alloca.cir
    M clang/test/CIR/Transforms/complex-create-fold.cir
    M clang/test/CIR/Transforms/complex-imag-fold.cir
    M clang/test/CIR/Transforms/complex-real-fold.cir
    M clang/test/CIR/Transforms/ternary-fold.cir
    M clang/test/CIR/Transforms/vector-extract-fold.cir
    M clang/test/CXX/basic/basic.link/p3.cpp
    M clang/test/CXX/basic/basic.scope/basic.scope.namespace/p2.cpp
    A clang/test/CXX/drs/cwg2947.cpp
    M clang/test/CXX/lex/lex.pptoken/p3-2a.cpp
    M clang/test/CXX/module/basic/basic.link/module-declaration.cpp
    A clang/test/CXX/module/cpp.pre/p1.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.import/p1.cppm
    M clang/test/ClangScanDeps/modules-context-hash-module-map-path.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    A clang/test/CodeGen/LoongArch/targetattr-la32.c
    A clang/test/CodeGen/LoongArch/targetattr-la64.c
    R clang/test/CodeGen/LoongArch/targetattr.c
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc-amo-header.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/non-policy/overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvfofp8min/policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/non-overloaded/vfwcvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvt.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfncvtbf16.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/policy/overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/hexagon-linux-vararg.c
    R clang/test/CodeGen/prefalign.c
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
    M clang/test/CodeGenCXX/member-alignment.cpp
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    M clang/test/CodeGenCXX/pragma-unroll.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/matrix-type-indexing.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl
    M clang/test/CodeGenHLSL/builtins/WaveActiveBallot.hlsl
    M clang/test/CodeGenObjC/fragile-arc.m
    M clang/test/CodeGenObjC/ivar-layout-64.m
    M clang/test/CodeGenObjC/ivar-layout-array0-struct.m
    M clang/test/CodeGenObjC/ivar-layout-no-optimize.m
    M clang/test/CodeGenObjC/mrc-weak.m
    M clang/test/CodeGenObjCXX/mrc-weak.mm
    M clang/test/CodeGenOpenCL/amdgpu-features-illegal.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/CodeGenSPIRV/Builtins/subgroup.c
    A clang/test/CodeGenSPIRV/Builtins/variadic.c
    M clang/test/CoverageMapping/ctor.cpp
    M clang/test/CoverageMapping/includehell.cpp
    M clang/test/CoverageMapping/macros.c
    M clang/test/DebugInfo/CXX/simple-template-names.cpp
    M clang/test/Driver/aarch64-mcpu-native.c
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/cuda-arch-list.cu
    M clang/test/Driver/loongarch-march.c
    M clang/test/Driver/loongarch-mtune.c
    M clang/test/Driver/openmp-offload-gpu.c
    R clang/test/Driver/prefalign.c
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/riscv-cpus.c
    R clang/test/Driver/sycl.c
    A clang/test/Driver/sycl.cpp
    M clang/test/Frontend/rewrite-includes-bom.c
    M clang/test/Headers/gpuintrin.c
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Index/pch-from-libclang.c
    A clang/test/Lexer/cxx20-module-directive.cpp
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    R clang/test/Modules/Inputs/pch-config-macros/include/Mod1.h
    R clang/test/Modules/Inputs/pch-config-macros/include/module.modulemap
    M clang/test/Modules/context-hash.c
    R clang/test/Modules/pch-config-macros.c
    M clang/test/Modules/pr121066.cpp
    M clang/test/Modules/preprocess-named-modules.cppm
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_ast_print.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_messages.cpp
    R clang/test/OpenMP/target_update_strided_messages.c
    A clang/test/OpenMP/target_update_strided_messages_from.c
    A clang/test/OpenMP/target_update_strided_messages_to.c
    R clang/test/OpenMP/target_update_strided_multiple_messages.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_from.c
    A clang/test/OpenMP/target_update_strided_multiple_messages_to.c
    R clang/test/OpenMP/target_update_strided_partial_messages.c
    A clang/test/OpenMP/target_update_strided_partial_messages_from.c
    A clang/test/OpenMP/target_update_strided_partial_messages_to.c
    M clang/test/OpenMP/task_ast_print.cpp
    M clang/test/OpenMP/task_codegen.cpp
    A clang/test/OpenMP/task_transparent_messages.cpp
    A clang/test/OpenMP/task_transparent_serialization.cpp
    M clang/test/OpenMP/taskloop_ast_print.cpp
    M clang/test/OpenMP/taskloop_codegen.cpp
    M clang/test/Parser/cxx2b-lambdas.cpp
    M clang/test/Preprocessor/init-loongarch.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Profile/c-mcdc-logicalop-ternary.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/constexpr.c
    M clang/test/Sema/scope-check.c
    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-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    A clang/test/Sema/wasm-funcref-crash.c
    M clang/test/SemaCXX/builtin-is-within-lifetime.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    M clang/test/SemaCXX/constexpr-builtin-bit-cast.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fold-conditional.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-in-static-sized-array.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage.cpp
    A clang/test/SemaCXX/wasm-funcref-crash.cpp
    A clang/test/SemaHLSL/Language/EmptyInitializers.hlsl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-wave32-func-attr.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/TableGen/target-builtins-prototype-parser.td
    A clang/test/Tooling/clang-extdef-mapping-no-args.cpp
    A clang/test/Tooling/clang-extdef-mapping.cpp
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/DeclPrinterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
    M clang/unittests/Analysis/FlowSensitive/FormulaTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockTUSummaryBuilder.h
    A clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/www/builtins.py
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/dfsan/dfsan_platform.h
    M compiler-rt/lib/rtsan/CMakeLists.txt
    M compiler-rt/lib/rtsan/rtsan_context.cpp
    M compiler-rt/lib/rtsan/rtsan_suppressions.cpp
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
    M compiler-rt/lib/tsan/rtl/tsan_flags.cpp
    M compiler-rt/test/dfsan/custom.cpp
    M compiler-rt/test/dfsan/lit.cfg.py
    M compiler-rt/test/dfsan/origin_endianness.c
    M compiler-rt/test/dfsan/pair.cpp
    M compiler-rt/test/dfsan/struct.c
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp
    A cross-project-tests/dtlto/multimodule.test
    M flang-rt/cmake/modules/GetToolchainDirs.cmake
    M flang-rt/lib/runtime/time-intrinsic.cpp
    M flang/docs/CMakeLists.txt
    M flang/docs/Directives.md
    M flang/docs/OpenACC.md
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Lower/MultiImageFortran.h
    M flang/include/flang/Lower/OpenACC.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.h
    A flang/include/flang/Optimizer/Dialect/FIROperationMoveOpInterface.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/MIF/MIFOps.td
    M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
    M flang/include/flang/Optimizer/OpenACC/Passes.h
    M flang/include/flang/Optimizer/OpenACC/Passes.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/include/flang/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.h
    M flang/include/flang/Optimizer/Support/Utils.h
    A flang/include/flang/Optimizer/Transforms/FIRToMemRefTypeConverter.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/dump-expr.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/MultiImageFortran.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    M flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp
    A flang/lib/Optimizer/Dialect/FIROperationMoveOpInterface.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
    M flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/Support/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/Support/FIROpenMPOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenMP/Support/RegisterOpenMPExtensions.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/source.cpp
    M flang/lib/Parser/tools.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-deallocate.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-nullify.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-purity.cpp
    M flang/lib/Semantics/check-purity.h
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/program-tree.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/module/iso_c_binding.f90
    A flang/test/Driver/input-from-stdin/debug-info-filename.f90
    M flang/test/Driver/target-cpu-features-invalid.f90
    M flang/test/Examples/feature-list-class.f90
    M flang/test/Examples/feature-list-functions.f90
    M flang/test/Examples/omp-atomic.f90
    M flang/test/Examples/omp-declarative-directive.f90
    M flang/test/Examples/omp-device-constructs.f90
    M flang/test/Examples/omp-in-reduction-clause.f90
    M flang/test/Examples/omp-nowait.f90
    M flang/test/Examples/omp-order-clause.f90
    M flang/test/Examples/omp-sections.f90
    M flang/test/Examples/print-fns-calls.f90
    M flang/test/Examples/print-fns-definitions.f90
    M flang/test/Examples/print-fns-interfaces.f90
    M flang/test/Fir/OpenACC/recipe-populate-firstprivate.mlir
    M flang/test/Fir/OpenACC/recipe-populate-private.mlir
    A flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
    M flang/test/Fir/convert-memref-codegen.mlir
    M flang/test/Integration/complex-div-to-llvm.f90
    A flang/test/Integration/debug-use-stmt.f90
    A flang/test/Lower/HLFIR/ignore-tkr-c-descriptor.f90
    A flang/test/Lower/MIF/change_team2.f90
    M flang/test/Lower/OpenACC/acc-cache.f90
    A flang/test/Lower/OpenACC/acc-declare-common-present-in-function.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
    M flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    A flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/array-elemental-calls-2.f90
    M flang/test/Lower/array-expression-assumed-size.f90
    M flang/test/Lower/array-temp.f90
    M flang/test/Lower/array-user-def-assignments.f90
    M flang/test/Lower/array-wide-char.f90
    M flang/test/Lower/array.f90
    M flang/test/Lower/associate-construct-2.f90
    M flang/test/Lower/assumed-shape-callee.f90
    M flang/test/Lower/assumed-type.f90
    M flang/test/Lower/basic-call.f90
    M flang/test/Lower/block.f90
    M flang/test/Lower/call-copy-in-out.f90
    M flang/test/Lower/call-implicit.f90
    M flang/test/Lower/call.f90
    M flang/test/Lower/character-compare.f90
    A flang/test/Parser/bug135964.f90
    M flang/test/Semantics/OpenACC/acc-host-data.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/declare-simd-uniform.f90
    M flang/test/Semantics/OpenMP/declare-target08.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    M flang/test/Semantics/OpenMP/map-clause-v60.f90
    M flang/test/Semantics/OpenMP/use_device_addr1.f90
    A flang/test/Semantics/bug150820.f90
    M flang/test/Semantics/call03.f90
    A flang/test/Semantics/call46.f90
    A flang/test/Semantics/cuf-proc-attr-error.cuf
    M flang/test/Semantics/misc-intrinsics.f90
    M flang/test/Semantics/symbol03.f90
    A flang/test/Transforms/FIRToMemRef/alloca.mlir
    A flang/test/Transforms/FIRToMemRef/array-coor-op.mlir
    A flang/test/Transforms/FIRToMemRef/complex.mlir
    A flang/test/Transforms/FIRToMemRef/convert-opt.mlir
    A flang/test/Transforms/FIRToMemRef/cuda-alloca.mlir
    A flang/test/Transforms/FIRToMemRef/derived-types.mlir
    A flang/test/Transforms/FIRToMemRef/index.mlir
    A flang/test/Transforms/FIRToMemRef/load-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-dynamic.mlir
    A flang/test/Transforms/FIRToMemRef/load-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/load-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/logical.mlir
    A flang/test/Transforms/FIRToMemRef/no-declare.mlir
    A flang/test/Transforms/FIRToMemRef/reject-conversions.mlir
    A flang/test/Transforms/FIRToMemRef/replace.mlir
    A flang/test/Transforms/FIRToMemRef/slice.mlir
    A flang/test/Transforms/FIRToMemRef/store-dynamic-shape.mlir
    A flang/test/Transforms/FIRToMemRef/store-shift-static.mlir
    A flang/test/Transforms/FIRToMemRef/store-static-shape.mlir
    A flang/test/Transforms/FIRToMemRef/tbaa-tag.mlir
    M flang/test/Transforms/OpenACC/acc-implicit-data.fir
    M flang/test/Transforms/OpenACC/acc-implicit-firstprivate.fir
    A flang/test/Transforms/OpenACC/offload-target-verifier.fir
    M flang/test/Transforms/debug-imported-entity.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir
    A flang/test/Transforms/debug-use-stmt.fir
    M flang/test/Transforms/licm.fir
    M libc/hdr/CMakeLists.txt
    M libc/shared/math.h
    A libc/shared/math/dfmal.h
    A libc/shared/math/f16fma.h
    A libc/shared/math/fsqrt.h
    A libc/shared/math/fsqrtf128.h
    A libc/shared/math/hypotf.h
    A libc/shared/math/ilogbf.h
    A libc/shared/math/ilogbl.h
    A libc/shared/math/llogbf.h
    A libc/shared/math/logbf.h
    A libc/shared/math/logbf128.h
    A libc/shared/math/logbf16.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/dfmal.h
    A libc/src/__support/math/f16fma.h
    A libc/src/__support/math/fsqrt.h
    A libc/src/__support/math/fsqrtf128.h
    A libc/src/__support/math/hypotf.h
    A libc/src/__support/math/ilogbf.h
    A libc/src/__support/math/ilogbl.h
    A libc/src/__support/math/llogbf.h
    A libc/src/__support/math/logbf.h
    A libc/src/__support/math/logbf128.h
    A libc/src/__support/math/logbf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/dfmal.cpp
    M libc/src/math/generic/f16fma.cpp
    M libc/src/math/generic/fsqrt.cpp
    M libc/src/math/generic/fsqrtf128.cpp
    M libc/src/math/generic/hypotf.cpp
    M libc/src/math/generic/ilogbf.cpp
    M libc/src/math/generic/ilogbl.cpp
    M libc/src/math/generic/llogbf.cpp
    M libc/src/math/generic/logbf.cpp
    M libc/src/math/generic/logbf128.cpp
    M libc/src/math/generic/logbf16.cpp
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/strings/CMakeLists.txt
    A libc/test/src/strings/wide_read_memory_test.cpp
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/include/clc/opencl/synchronization/utils.h
    M libclc/opencl/include/clc/opencl/utils.h
    M libcxx/.clang-format
    M libcxx/CMakeLists.txt
    M libcxx/Maintainers.md
    M libcxx/docs/Contributing.rst
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/ReleaseNotes/22.rst
    A libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/ReleaseProcedure.rst
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    R libcxx/docs/Status/PSTL.rst
    R libcxx/docs/Status/PSTLPaper.csv
    M libcxx/docs/conf.py
    M libcxx/docs/index.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/ranges_equal.h
    A libcxx/include/__atomic/atomic_sync_timed.h
    M libcxx/include/__bit/byteswap.h
    M libcxx/include/__chrono/day.h
    M libcxx/include/__chrono/hh_mm_ss.h
    M libcxx/include/__chrono/literals.h
    M libcxx/include/__chrono/month.h
    M libcxx/include/__chrono/month_weekday.h
    M libcxx/include/__chrono/monthday.h
    M libcxx/include/__chrono/weekday.h
    M libcxx/include/__chrono/year.h
    M libcxx/include/__chrono/year_month.h
    M libcxx/include/__chrono/year_month_day.h
    M libcxx/include/__chrono/year_month_weekday.h
    M libcxx/include/__config
    M libcxx/include/__config_site.in
    M libcxx/include/__cxx03/cfloat
    M libcxx/include/__cxx03/module.modulemap
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/valid_range.h
    M libcxx/include/__random/binomial_distribution.h
    M libcxx/include/atomic
    M libcxx/include/cfloat
    R libcxx/include/float.h
    M libcxx/include/fstream
    M libcxx/include/module.modulemap.in
    M libcxx/include/semaphore
    M libcxx/include/version
    M libcxx/lib/abi/README.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/CMakeLists.txt
    M libcxx/src/atomic.cpp
    M libcxx/src/chrono.cpp
    M libcxx/src/experimental/time_zone.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp
    M libcxx/src/include/config_elast.h
    M libcxx/src/include/refstring.h
    M libcxx/src/locale.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_if.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/copy_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/fill_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/generate_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/move_backward.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/remove_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/replace.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/reverse_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/rotate_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/sample.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/shuffle.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/swap_ranges.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.binary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/transform.unary.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique.bench.cpp
    M libcxx/test/benchmarks/algorithms/modifying/unique_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/adjacent_find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/any_all_none_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/count.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/equal.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_end.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/find_first_of.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/is_permutation.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/mismatch.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search.bench.cpp
    M libcxx/test/benchmarks/algorithms/nonmodifying/search_n.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/is_partitioned.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/partition_point.bench.cpp
    M libcxx/test/benchmarks/algorithms/partitions/stable_partition.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/is_sorted_until.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/partial_sort_copy.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/sort.bench.cpp
    M libcxx/test/benchmarks/algorithms/sorting/stable_sort.bench.cpp
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
    M libcxx/test/benchmarks/iterators/distance.bench.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.join.with/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/deref.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.iterator/iter_move.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.sentinel/eq.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/base.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/begin.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.join.with/range.join.with.view/end.nodiscard.verify.cpp
    M libcxx/test/libcxx/strings/basic.string/nonnull.verify.cpp
    M libcxx/test/libcxx/time/nodiscard.verify.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/float_h.compile.pass.cpp
    M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.permissions/permissions.pass.cpp
    M libcxx/test/std/language.support/support.limits/c.limits/cfloat.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/thread/thread.semaphore/lost_wakeup.timed.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp
    M libcxx/test/support/concat_macros.h
    M libcxx/utils/benchmark-historical
    M libcxx/utils/build-at-commit
    A libcxx/utils/ci/benchmark-for-lnt.py
    M libcxx/utils/ci/images/libcxx_release_runners.txt
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/test-at-commit
    M libcxxabi/include/cxxabi.h
    M libcxxabi/src/cxa_guard_impl.h
    M libcxxabi/src/cxa_personality.cpp
    M libcxxabi/src/fallback_malloc.cpp
    M libcxxabi/test/guard_test_basic.pass.cpp
    M libcxxabi/test/guard_threaded_test.pass.cpp
    M libcxxabi/test/test_fallback_malloc.pass.cpp
    M libsycl/CMakeLists.txt
    M libsycl/README.md
    A libsycl/docs/CodingGuidelines.rst
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/backend.hpp
    M libsycl/include/sycl/__impl/detail/config.hpp
    A libsycl/include/sycl/__impl/detail/obj_utils.hpp
    A libsycl/include/sycl/__impl/exception.hpp
    A libsycl/include/sycl/__impl/info/desc_base.hpp
    A libsycl/include/sycl/__impl/info/platform.hpp
    M libsycl/include/sycl/__impl/platform.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/CMakeLists.txt
    A libsycl/src/detail/global_objects.cpp
    A libsycl/src/detail/global_objects.hpp
    A libsycl/src/detail/offload/offload_topology.cpp
    A libsycl/src/detail/offload/offload_topology.hpp
    A libsycl/src/detail/offload/offload_utils.cpp
    A libsycl/src/detail/offload/offload_utils.hpp
    A libsycl/src/detail/platform_impl.cpp
    A libsycl/src/detail/platform_impl.hpp
    A libsycl/src/exception.cpp
    A libsycl/src/exception_list.cpp
    M libsycl/src/platform.cpp
    M libsycl/src/version.hpp.in
    A libsycl/tools/CMakeLists.txt
    A libsycl/tools/sycl-ls/CMakeLists.txt
    A libsycl/tools/sycl-ls/sycl-ls.cpp
    M libunwind/include/__libunwind_config.h
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/SyntheticSections.cpp
    A lld/test/ELF/dtlto/timetrace.test
    A lld/test/ELF/loongarch-call30.s
    A lld/test/ELF/loongarch-relax-call30-2.s
    A lld/test/ELF/loongarch-relax-call30.s
    M lld/test/ELF/loongarch-relax-emit-relocs.s
    M lld/test/ELF/loongarch-tls-gd-edge-case.s
    M lld/test/ELF/loongarch-tls-gd.s
    M lld/test/ELF/loongarch-tls-ie.s
    M lld/test/ELF/loongarch-tls-ld.s
    M lld/test/ELF/loongarch-tlsdesc.s
    M lld/test/ELF/mips-mgot.s
    M lld/test/ELF/mips-tls-64.s
    M lld/test/ELF/mips-tls.s
    A lld/test/wasm/debug-weak-unused.s
    M lld/wasm/InputFiles.cpp
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/Core/ModuleList.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/Expression.cpp
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/wasm/ProcessWasm.cpp
    M lldb/source/Plugins/Process/wasm/ProcessWasm.h
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
    R lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    A lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Protocol/MCP/Server.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/SymbolFileOnDemand.cpp
    M lldb/source/Target/ModuleCache.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
    M lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/TestFrameVarDILBitFieldExtraction.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/gdb_remote_client/TestXMLRegisterFlags.py
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
    M lldb/test/API/lang/cpp/function-template-parameter-pack/TestFunctionTemplateParameterPack.py
    M lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
    M lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    M lldb/test/API/tools/lldb-dap/completions/main.cpp
    M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
    M lldb/test/CMakeLists.txt
    A lldb/test/Shell/Expr/TestObjCIncompleteSuperclass.test
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/extension/package.json
    M lldb/unittests/Core/ModuleListTest.cpp
    M lldb/unittests/DAP/LLDBUtilsTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/Instruction/RISCV/TestRISCVEmulator.cpp
    M lldb/unittests/Language/CPlusPlus/CMakeLists.txt
    A lldb/unittests/Language/CPlusPlus/LibStdcppTupleTest.cpp
    M llvm/CMakeLists.txt
    M llvm/Maintainers.md
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/GenerateVersionFromVCS.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    A llvm/docs/AIToolPolicy.md
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/HowToReleaseLLVM.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/MIRLangRef.rst
    M llvm/docs/MemProf.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/Reference.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/Vectorizers.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst
    M llvm/docs/vplan-early-exit-lowered.dot
    M llvm/docs/vplan-early-exit-lowered.png
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/FloatingPointMode.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/STLForwardCompat.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/RuntimeLibcallInfo.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
    M llvm/include/llvm/Analysis/ScalarEvolutionExpressions.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/AsmParserContext.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CAS/MappedFileRegionArena.h
    A llvm/include/llvm/CAS/OnDiskCASLogger.h
    M llvm/include/llvm/CAS/OnDiskDataAllocator.h
    M llvm/include/llvm/CAS/OnDiskGraphDB.h
    M llvm/include/llvm/CAS/OnDiskKeyValueDB.h
    M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
    M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
    M llvm/include/llvm/CGData/CGDataPatchItem.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/include/llvm/CodeGen/PBQP/Math.h
    M llvm/include/llvm/CodeGen/Passes.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/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/DebugInfo/BTF/BTFParser.h
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalAlias.h
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/InlineAsm.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/IR/Type.h
    M llvm/include/llvm/IR/User.h
    M llvm/include/llvm/IR/Value.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWinEH.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/Support/CodeGen.h
    M llvm/include/llvm/Support/Compiler.h
    M llvm/include/llvm/Support/Error.h
    A llvm/include/llvm/Support/ErrorExtras.h
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/IntegerInclusiveInterval.h
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/include/llvm/Support/LSP/Protocol.h
    M llvm/include/llvm/Support/Registry.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Support/thread.h
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/Transforms/CFGuard.h
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Analysis/Delinearization.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Analysis/VectorUtils.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/CAS/ActionCaches.cpp
    M llvm/lib/CAS/CMakeLists.txt
    M llvm/lib/CAS/DatabaseFile.cpp
    M llvm/lib/CAS/DatabaseFile.h
    M llvm/lib/CAS/MappedFileRegionArena.cpp
    M llvm/lib/CAS/OnDiskCAS.cpp
    A llvm/lib/CAS/OnDiskCASLogger.cpp
    M llvm/lib/CAS/OnDiskDataAllocator.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/lib/CAS/OnDiskKeyValueDB.cpp
    M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
    M llvm/lib/CAS/UnifiedOnDiskCache.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/BranchRelaxation.cpp
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/CodeGen/CFIInstrInserter.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineCSE.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/RegisterUsageInfo.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.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/StatepointLowering.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/StackColoring.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/DebugInfo/BTF/BTFParser.cpp
    M llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
    M llvm/lib/ExecutionEngine/JITLink/loongarch.cpp
    M llvm/lib/ExecutionEngine/Orc/MachO.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/ProfDataUtils.cpp
    M llvm/lib/IR/User.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWin64EH.cpp
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    M llvm/lib/Object/OffloadBundle.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Support/Error.cpp
    M llvm/lib/Support/FloatingPointMode.cpp
    M llvm/lib/Support/Jobserver.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/LSP/Protocol.cpp
    M llvm/lib/Support/Parallel.cpp
    M llvm/lib/Support/Regex.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/regcomp.c
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    A llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
    M llvm/lib/Target/AArch64/AArch64SchedA57.td
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.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/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    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.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    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/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.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/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
    M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
    M llvm/lib/Target/LoongArch/LoongArchOptWInstrs.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.h
    M llvm/lib/Target/M68k/M68kInstrControl.td
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFoldMemOffset.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    A llvm/lib/Target/RISCV/RISCVInstrFormatsXAIF.td
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoSFB.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoXAIF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfbfmin.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.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/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp
    M llvm/lib/Target/TargetLoweringObjectFile.cpp
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/VE/VEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86AsmPrinter.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86Combine.td
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp
    M llvm/lib/Target/X86/X86FixupSetCC.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86LoadValueInjectionRetHardening.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86ReturnThunks.cpp
    M llvm/lib/Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
    M llvm/lib/Target/XCore/XCoreSelectionDAGInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/LoongArchTargetParser.cpp
    M llvm/lib/TargetParser/TargetDataLayout.cpp
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/TextAPI/TextStubV5.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/IPO/BlockExtractor.cpp
    M llvm/lib/Transforms/IPO/ConstantMerge.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.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/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/GVNHoist.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/InferAlignment.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/CodeMoverUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.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.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
    M llvm/test/Analysis/CostModel/AArch64/arith-widening.ll
    M llvm/test/Analysis/CostModel/AArch64/cast.ll
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AArch64/cttz_elts.ll
    M llvm/test/Analysis/CostModel/AArch64/fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/fp-conversions-odd-vector-types.ll
    M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll
    M llvm/test/Analysis/CostModel/AArch64/masked_ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/no-sve-no-neon.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fpext.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-fptrunc.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-itofp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-trunc.ll
    M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
    A llvm/test/Analysis/CostModel/RISCV/scalable-gather-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    A llvm/test/Analysis/CostModel/RISCV/scalable-scatter-zve32f.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll
    M llvm/test/Analysis/Delinearization/fixed_size_array.ll
    A llvm/test/Analysis/Delinearization/global_array_bounds.ll
    M llvm/test/Analysis/Delinearization/validation_large_size.ll
    M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/infer_affine_domain_ovlf.ll
    M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
    M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr-i32-index-width.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr.ll
    M llvm/test/Analysis/ValueTracking/assume.ll
    A llvm/test/Assembler/arbitrary-fp-convert.ll
    M llvm/test/Assembler/auto_upgrade_intrinsics.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/invalid-record-strtab.ll
    M llvm/test/Bitcode/invalid.test
    M llvm/test/Bitcode/pr18704.ll
    M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/blockaddress-stale-addresstaken.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combiner-load-store-indexing.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/indexed-store-memsize.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-copy-vector-crash.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-unmerge.mir
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-minmaxv.ll
    A llvm/test/CodeGen/AArch64/aarch64-sve-setcc-promote-nxv8i8-crash.ll
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/arm64-clrsb.ll
    A llvm/test/CodeGen/AArch64/arm64-cvt-bitcast.ll
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/arm64-windows-calls.ll
    A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr8.mir
    M llvm/test/CodeGen/AArch64/avg.ll
    A llvm/test/CodeGen/AArch64/bit-test.ll
    M llvm/test/CodeGen/AArch64/cls.ll
    M llvm/test/CodeGen/AArch64/combine-sdiv.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-add-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvtn.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/ldst-implicitop.mir
    M llvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-dot-product.ll
    M llvm/test/CodeGen/AArch64/neon-vcmla.ll
    A llvm/test/CodeGen/AArch64/no-xzr-liveins.mir
    A llvm/test/CodeGen/AArch64/nontemporal-store-optsize.ll
    A llvm/test/CodeGen/AArch64/nontemporal-store.ll
    R llvm/test/CodeGen/AArch64/nontemporal.ll
    M llvm/test/CodeGen/AArch64/popcount.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/ptrauth-global-no-pic.ll
    M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    A llvm/test/CodeGen/AArch64/sat-trunc-knownbits.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_deinterleaved_loads.ll
    M llvm/test/CodeGen/AArch64/scalable_masked_interleaved_stores.ll
    M llvm/test/CodeGen/AArch64/seh-minimal-prologue-epilogue.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    A llvm/test/CodeGen/AArch64/setcc-redundant-cmlt.ll
    M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
    M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sme-pstate-sm-changing-call-disable-coalescing.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-add-sub-za16.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-bfscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvtn.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-faminmax.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fmlas.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fscale.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4-lane-x4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlall.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlals.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4-fp8.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x1.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4a_2x2.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-rshl.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sclamp.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-select-sme-tileslice.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sqdmulh.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sub.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-tmop.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-uclamp.ll
    M llvm/test/CodeGen/AArch64/sme2p2-intrinsics-fmul.ll
    M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AArch64/stack-probing-64k.ll
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    M llvm/test/CodeGen/AArch64/stack-probing-last-in-block.mir
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/AArch64/stack-probing-shrink-wrap.mir
    M llvm/test/CodeGen/AArch64/stack-probing-sve.ll
    M llvm/test/CodeGen/AArch64/stack-probing.ll
    A llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
    M llvm/test/CodeGen/AArch64/subreg_to_reg_coalescing_issue.mir
    M llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-fmsub.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-contiguous-prefetches.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ldN-sret-reg+imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqdec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-sqinc.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-imm-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stN-reg-reg-addr-mode.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-and-combine.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bitselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-build-vector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-concat.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-log.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mul.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ld2-alloca.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-limit-duplane.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-log-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-gather-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ptest.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-vector-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
    M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-luti.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve2p1-dots-partial-reduction.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-crypto.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pp.ll
    M llvm/test/CodeGen/AArch64/switch-cases-to-branch-and.ll
    M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/win-import-call-optimization.ll
    M llvm/test/CodeGen/AArch64/win64_vararg2.ll
    A llvm/test/CodeGen/AArch64/wineh-dangling-eh-pad-reference.ll
    M llvm/test/CodeGen/AArch64/wineh-pac.ll
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair2.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-sub.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xchg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomicrmw-xor.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-trunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
    M llvm/test/CodeGen/AMDGPU/emit-high-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    A llvm/test/CodeGen/AMDGPU/fmamk_fmaak-t16.mir
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/fshl.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/idemponent-atomics.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.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.cooperative.atomic-agent.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-system.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    A llvm/test/CodeGen/AMDGPU/lower-noalias-kernargs.ll
    R llvm/test/CodeGen/AMDGPU/machine-scheduler-rematerialization-scoring.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
    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/mad-combine.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.mir
    M llvm/test/CodeGen/AMDGPU/permlane16_var-op-sel.ll
    M llvm/test/CodeGen/AMDGPU/private-memory-atomics.ll
    M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
    M llvm/test/CodeGen/AMDGPU/scalar-float-sop1.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    A llvm/test/CodeGen/AMDGPU/swdev-549940.ll
    M llvm/test/CodeGen/AMDGPU/valu-i1.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    A llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir
    M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/ARM/neon-dot-product.ll
    A llvm/test/CodeGen/ARM/tldrlit_ga_size.mir
    M llvm/test/CodeGen/DirectX/WaveActiveBallot.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-addr.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-bad-move.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-base-type-mismatch.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-basic.ll
    M llvm/test/CodeGen/Hexagon/autohvx/vector-align-tbaa.ll
    A llvm/test/CodeGen/Hexagon/constp-signed.ll
    M llvm/test/CodeGen/Hexagon/fp16-promote.ll
    M llvm/test/CodeGen/Hexagon/libcall_tail.ll
    A llvm/test/CodeGen/Hexagon/machine-combiner-reassoc.mir
    A llvm/test/CodeGen/Hexagon/print-pipeline-passes.ll
    M llvm/test/CodeGen/Hexagon/swp-carried-dep1.mir
    M llvm/test/CodeGen/Hexagon/swp-carried-dep2.mir
    M llvm/test/CodeGen/Hexagon/vcombine_zero_diff_ptrs.ll
    A llvm/test/CodeGen/Hexagon/vector-load-group-min-threshold.ll
    M llvm/test/CodeGen/LoongArch/block-address.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation-spill-32.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/LoongArch/code-models.ll
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/double-imm.ll
    M llvm/test/CodeGen/LoongArch/expand-call.ll
    M llvm/test/CodeGen/LoongArch/float-imm.ll
    M llvm/test/CodeGen/LoongArch/global-address.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-f.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-m.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/flog2.ll
    A llvm/test/CodeGen/LoongArch/load-itofp-combine.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/flog2.ll
    M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll
    M llvm/test/CodeGen/LoongArch/musttail.ll
    M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/LoongArch/stack-protector-target.ll
    M llvm/test/CodeGen/LoongArch/target-abi.ll
    M llvm/test/CodeGen/LoongArch/tls-models.ll
    M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    A llvm/test/CodeGen/M68k/setcc-redundant.ll
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_print.txt
    M llvm/test/CodeGen/MIR2Vec/Inputs/reference_x86_vocab_wo=0.5_print.txt
    A llvm/test/CodeGen/NVPTX/f16-add-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-mul-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-sub-sat.ll
    A llvm/test/CodeGen/NVPTX/fma-oob.ll
    M llvm/test/CodeGen/NVPTX/no-stack-protector-libcall-error.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-ld-red.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/PowerPC/amo-enable.ll
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll
    M llvm/test/CodeGen/PowerPC/vavg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/rv32p.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/rv64p.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    A llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
    M llvm/test/CodeGen/RISCV/cfi-multiple-locations.mir
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/fold-mem-offset-zilsd.ll
    M llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll
    A llvm/test/CodeGen/RISCV/rda-entry-bb-is-a-loop.mir
    M llvm/test/CodeGen/RISCV/rda-liveins.mir
    M llvm/test/CodeGen/RISCV/rda-stack.mir
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfclass.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/pr165232.ll
    M llvm/test/CodeGen/RISCV/rvv/rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-vscale.i64.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vfclass-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
    M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp-mask.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_cooperative_matrix/cooperative_matrix.ll
    A llvm/test/CodeGen/SPIRV/externally-initialized.ll
    M llvm/test/CodeGen/SPIRV/function/vararg.ll
    A llvm/test/CodeGen/SPIRV/function/variadics-lowering.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveBallot.ll
    M llvm/test/CodeGen/SPIRV/legalization/spv-extractelt-legalization.ll
    A llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-to-array-first-element.ll
    M llvm/test/CodeGen/SystemZ/rda-stack-copy.mir
    A llvm/test/CodeGen/SystemZ/stack-align.ll
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/CodeGen/WebAssembly/simd-load-lane-offset.ll
    A llvm/test/CodeGen/WebAssembly/slp-memory-interleave.ll
    M llvm/test/CodeGen/X86/GlobalISel/add-ext.ll
    M llvm/test/CodeGen/X86/GlobalISel/pr49087.ll
    M llvm/test/CodeGen/X86/GlobalISel/ptr-add.ll
    M llvm/test/CodeGen/X86/GlobalISel/undef.ll
    M llvm/test/CodeGen/X86/apx/setzucc.ll
    M llvm/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll
    M llvm/test/CodeGen/X86/atomic-load-store.ll
    M llvm/test/CodeGen/X86/attr-function-return.mir
    M llvm/test/CodeGen/X86/avgceils.ll
    M llvm/test/CodeGen/X86/avgceilu.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/basic-block-address-map-empty-block.ll
    M llvm/test/CodeGen/X86/basic-block-sections-code-prefetch-call-terminates-block.ll
    A llvm/test/CodeGen/X86/blockaddress-stale-addresstaken.ll
    M llvm/test/CodeGen/X86/cfguard-checks.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    A llvm/test/CodeGen/X86/clmul-x86.ll
    M llvm/test/CodeGen/X86/clmul.ll
    A llvm/test/CodeGen/X86/combine-pclmul.ll
    M llvm/test/CodeGen/X86/combine-smax.ll
    M llvm/test/CodeGen/X86/combine-smin.ll
    M llvm/test/CodeGen/X86/combine-umax.ll
    M llvm/test/CodeGen/X86/combine-umin.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare-dbg.ll
    M llvm/test/CodeGen/X86/dwarf-eh-prepare.ll
    M llvm/test/CodeGen/X86/dwarf_eh_resume.ll
    M llvm/test/CodeGen/X86/extractelement-fp.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fp-int-fp-cvt.ll
    M llvm/test/CodeGen/X86/gc-empty-basic-blocks.ll
    M llvm/test/CodeGen/X86/hipe-cc64.ll
    M llvm/test/CodeGen/X86/isel-fpclass.ll
    A llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/masked_gather.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    A llvm/test/CodeGen/X86/musttail-struct.ll
    M llvm/test/CodeGen/X86/musttail-tailcc.ll
    A llvm/test/CodeGen/X86/nocf_check_musttail.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll
    M llvm/test/CodeGen/X86/print-reaching-defs.mir
    A llvm/test/CodeGen/X86/replace-thunk-tail-win.ll
    M llvm/test/CodeGen/X86/seh-unwind-inline-asm-codegen.ll
    M llvm/test/CodeGen/X86/sibcall.ll
    M llvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll
    M llvm/test/CodeGen/X86/stack-protector-atomicrmw-xchg.ll
    M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll
    M llvm/test/CodeGen/X86/tailcallbyval64.ll
    A llvm/test/CodeGen/X86/tailcallpic.ll
    R llvm/test/CodeGen/X86/tailcallpic1.ll
    R llvm/test/CodeGen/X86/tailcallpic2.ll
    R llvm/test/CodeGen/X86/tailcallpic3.ll
    M llvm/test/CodeGen/X86/tailccbyval64.ll
    M llvm/test/CodeGen/X86/vector-extract-last-active.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-epilogs.mir
    A llvm/test/CodeGen/X86/win64-eh-unwindv2-too-many-instr.mir
    M llvm/test/CodeGen/X86/win64-eh-unwindv2.ll
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir
    M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-preserved-subreg.mir
    M llvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir
    M llvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-after.mir
    A llvm/test/DebugInfo/MIR/X86/dbgcall-site-preserved-clobbered.mir
    A llvm/test/DebugInfo/X86/fission-simple-template-names.ll
    M llvm/test/DebugInfo/X86/fission-template.ll
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s
    M llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_reloc_addsub.s
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_x86-64-freebsd-triple.s
    A llvm/test/FileCheck/backref-limit.txt
    M llvm/test/FileCheck/capture-limit.txt
    M llvm/test/Instrumentation/AddressSanitizer/skip-coro.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll
    M llvm/test/MC/AMDGPU/expressions-gfx10.s
    M llvm/test/MC/AMDGPU/gfx10-constant-bus.s
    M llvm/test/MC/AMDGPU/gfx1030_new.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11-promotions-fake16.s
    M llvm/test/MC/AMDGPU/gfx11-promotions.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features-fake16.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/lds_direct-gfx10.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/literalv216.s
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s
    M llvm/test/MC/AMDGPU/reloc-operands-gfx10.s
    M llvm/test/MC/AMDGPU/vcmpx-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-literal.s
    M llvm/test/MC/AMDGPU/wave32.s
    M llvm/test/MC/AMDGPU/wave_any.s
    M llvm/test/MC/AMDGPU/writelane_m0.s
    M llvm/test/MC/ARM/seh-checks2.s
    M llvm/test/MC/AsmParser/directive_seh.s
    M llvm/test/MC/AsmParser/seh-directive-errors.s
    M llvm/test/MC/COFF/seh-unwindv2.s
    M llvm/test/MC/COFF/seh.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-sgpr-max.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop3-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1030_new.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3p_literalv216.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8-fake16.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/literals.txt
    M llvm/test/MC/ELF/prefalign-errors.s
    M llvm/test/MC/ELF/prefalign.s
    M llvm/test/MC/LoongArch/Basic/Integer/invalid.s
    M llvm/test/MC/LoongArch/Macros/macros-call.s
    M llvm/test/MC/M68k/Control/Classes/MxCALL.s
    M llvm/test/MC/Mips/set-sym-recursive.s
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/xaifet-amo-valid.s
    A llvm/test/MC/RISCV/xaifet-simd-valid.s
    A llvm/test/MC/X86/Relocations/fixup-overflow-32.s
    A llvm/test/MC/X86/Relocations/fixup-overflow.s
    A llvm/test/MC/X86/Relocations/jcxz-loop-overflow.s
    R llvm/test/MC/X86/x86-jcxz-loop-fixup.s
    M llvm/test/TableGen/CPtrWildcard.td
    M llvm/test/TableGen/RegClassByHwMode.td
    A llvm/test/ThinLTO/X86/memprof-weak-alias.ll
    A llvm/test/ThinLTO/X86/thinlto-savetemps-mod.ll
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/or-load.ll
    A llvm/test/Transforms/AggressiveInstCombine/AMDGPU/fold-loads-multiple-uses.ll
    M llvm/test/Transforms/AggressiveInstCombine/X86/or-load.ll
    M llvm/test/Transforms/AggressiveInstCombine/memchr.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/pcsections.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-private-gas.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization-preserve-name.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fsub.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-nand.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-simplify-cfg-CAS-block.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-integer-ops-0-to-add-0.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-cmpxchg-flat-maybe-private.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-load.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/no-expand-atomic-store.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/unaligned-atomic.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v7.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomic-expansion-v8.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll
    M llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-expand.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/LoongArch/load-store-atomic.ll
    M llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-double.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cfence-float.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/cmpxchg.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/issue55983.ll
    M llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/libcalls.ll
    M llvm/test/Transforms/AtomicExpand/SPARC/partword.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-libcall.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-initial-load.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll
    A llvm/test/Transforms/AtomicExpand/X86/missing-analysis.ll
    M llvm/test/Transforms/Attributor/nofpclass-fma.ll
    M llvm/test/Transforms/Attributor/nofpclass-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
    M llvm/test/Transforms/Attributor/nofpclass-nan-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-select.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll
    A llvm/test/Transforms/Coroutines/coro-cleanup-noop-erase.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    A llvm/test/Transforms/CorrelatedValuePropagation/assume-operand-bundles.ll
    M llvm/test/Transforms/DeadStoreElimination/noop-stores.ll
    A llvm/test/Transforms/DwarfEHPrepare/missing-analysis.ll
    A llvm/test/Transforms/GlobalMerge/metadata1.ll
    A llvm/test/Transforms/GlobalMerge/metadata2.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll
    M llvm/test/Transforms/InferAlignment/ptrtoint.ll
    A llvm/test/Transforms/Inline/ARM/inline-dotprod.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/fabs.ll
    M llvm/test/Transforms/InstCombine/freeze-integer-intrinsics.ll
    A llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/InstCombine/icmp-logical.ll
    M llvm/test/Transforms/InstCombine/merge-icmp.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    A llvm/test/Transforms/InstCombine/pr176548.ll
    A llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-no-widen.ll
    M llvm/test/Transforms/InstCombine/select-cmp-cttz-ctlz.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-aggregates.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-canonicalize.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-rounding-intrinsics.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstSimplify/fcmp.ll
    M llvm/test/Transforms/JumpThreading/domtree-updates.ll
    M llvm/test/Transforms/LoopUnroll/convergent.controlled.ll
    M llvm/test/Transforms/LoopUnroll/followup.ll
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/pr131465.ll
    A llvm/test/Transforms/LoopUnroll/unroll-dont-copy-latch-loop-id.ll
    M llvm/test/Transforms/LoopUnroll/unroll-loads-cse.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/findlast-epilogue-loop.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fold-tail-low-trip-count.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/hoist-predicated-loads-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/multiple-result-intrinsics.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/reduction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/fold-tail-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll
    A llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/cast-induction.ll
    A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    A llvm/test/Transforms/LoopVectorize/expand-ptrtoaddr.ll
    A llvm/test/Transforms/LoopVectorize/find-last.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    A llvm/test/Transforms/LoopVectorize/iv-select-cmp-fold-tail.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-trunc.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
    M llvm/test/Transforms/LoopVectorize/multiple-result-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp.ll
    A llvm/test/Transforms/LoopVectorize/select-folds.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/tripcount.ll
    M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
    A llvm/test/Transforms/MemCpyOpt/stack-move-offset.ll
    M llvm/test/Transforms/MemCpyOpt/stack-move.ll
    M llvm/test/Transforms/PGOProfile/indirect_call_promotion_unique.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
    M llvm/test/Transforms/SCCP/get_vector_length-intrinsic.ll
    A llvm/test/Transforms/SLPVectorizer/X86/copyables-with-parent-scalars-in-phis.ll
    A llvm/test/Transforms/SLPVectorizer/X86/crash_getpointersdiff-nullopt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/matching-insert-point-for-nodes.ll
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-throttled.ll
    M llvm/test/Transforms/SafeStack/AArch64/abi.ll
    M llvm/test/Transforms/SafeStack/AArch64/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/AArch64/unreachable.ll
    M llvm/test/Transforms/SafeStack/ARM/abi.ll
    M llvm/test/Transforms/SafeStack/ARM/debug.ll
    M llvm/test/Transforms/SafeStack/ARM/setjmp.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
    M llvm/test/Transforms/SafeStack/X86/abi.ll
    M llvm/test/Transforms/SafeStack/X86/abi_ssp.ll
    M llvm/test/Transforms/SafeStack/X86/addr-taken.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace-error.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace-wrong-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/alloca-addrspace.ll
    M llvm/test/Transforms/SafeStack/X86/array-aligned.ll
    M llvm/test/Transforms/SafeStack/X86/array.ll
    M llvm/test/Transforms/SafeStack/X86/byval.ll
    M llvm/test/Transforms/SafeStack/X86/call.ll
    M llvm/test/Transforms/SafeStack/X86/cast.ll
    M llvm/test/Transforms/SafeStack/X86/coloring-ssp.ll
    M llvm/test/Transforms/SafeStack/X86/coloring.ll
    M llvm/test/Transforms/SafeStack/X86/coloring2.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/constant-gep.ll
    M llvm/test/Transforms/SafeStack/X86/constant-geps.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc-dynamic.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc.ll
    M llvm/test/Transforms/SafeStack/X86/debug-loc2.ll
    M llvm/test/Transforms/SafeStack/X86/dynamic-alloca.ll
    M llvm/test/Transforms/SafeStack/X86/escape-addr-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-bitcast-store2.ll
    M llvm/test/Transforms/SafeStack/X86/escape-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-casted-pointer.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-invoke.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-negative.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-ptrtoint.ll
    M llvm/test/Transforms/SafeStack/X86/escape-gep-store.ll
    M llvm/test/Transforms/SafeStack/X86/escape-phi-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-select-call.ll
    M llvm/test/Transforms/SafeStack/X86/escape-vector.ll
    M llvm/test/Transforms/SafeStack/X86/invoke.ll
    M llvm/test/Transforms/SafeStack/X86/layout-frag.ll
    M llvm/test/Transforms/SafeStack/X86/layout-region-split.ll
    M llvm/test/Transforms/SafeStack/X86/memintrinsic-oob-read.ll
    A llvm/test/Transforms/SafeStack/X86/missing-analysis.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/no-attr.ll
    M llvm/test/Transforms/SafeStack/X86/no-crash-on-lifetime.ll
    M llvm/test/Transforms/SafeStack/X86/phi-cycle.ll
    M llvm/test/Transforms/SafeStack/X86/phi.ll
    M llvm/test/Transforms/SafeStack/X86/pr54784.ll
    M llvm/test/Transforms/SafeStack/X86/ret.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp2.ll
    M llvm/test/Transforms/SafeStack/X86/sink-to-use.ll
    M llvm/test/Transforms/SafeStack/X86/ssp.ll
    M llvm/test/Transforms/SafeStack/X86/store.ll
    M llvm/test/Transforms/SafeStack/X86/struct.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll
    M llvm/test/Transforms/StackProtector/cross-dso-cfi-stack-chk-fail.ll
    A llvm/test/Transforms/StackProtector/missing-analysis.ll
    M llvm/test/Transforms/StackProtector/stack-chk-fail-alias.ll
    M llvm/test/Verifier/alloc-variant-zeroed.ll
    A llvm/test/Verifier/arbitrary-fp-convert.ll
    A llvm/test/Verifier/gep-vector-non-byte-element.ll
    M llvm/test/lit.cfg.py
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/riscv_show_inst.s.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/riscv-show-inst.test
    A llvm/test/tools/dxil-dis/waveactiveballot.ll
    M llvm/test/tools/llc/new-pm/start-stop.ll
    A llvm/test/tools/llvm-cas/logging.test
    M llvm/test/tools/llvm-cov/branch-templates.test
    A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
    A llvm/test/tools/llvm-objcopy/ELF/update-section-not-in-segment.test
    M llvm/test/tools/llvm-objdump/COFF/Inputs/win64-unwind.exe.coff-x86_64.asm
    R llvm/test/tools/llvm-objdump/MachO/Inputs/LLVM-bundle.macho-x86_64
    R llvm/test/tools/llvm-objdump/MachO/LLVM-bundle.test
    M llvm/test/tools/llvm-profgen/coff-profile.test
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
    R llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
    M llvm/test/tools/llvm-readobj/ELF/note-core.test
    A llvm/test/tools/llvm-readobj/MachO/all.test
    M llvm/test/tools/llvm-strings/stdin.test
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-config/CMakeLists.txt
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-cov/CoverageViewOptions.h
    M llvm/tools/llvm-ir2vec/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/CMakeLists.txt
    A llvm/tools/llvm-ir2vec/lib/Utils.cpp
    A llvm/tools/llvm-ir2vec/lib/Utils.h
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
    R llvm/tools/llvm-ir2vec/llvm-ir2vec.h
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.h
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp
    M llvm/unittests/ADT/APFloatTest.cpp
    M llvm/unittests/ADT/ArrayRefTest.cpp
    M llvm/unittests/ADT/FloatingPointMode.cpp
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/ADT/STLForwardCompatTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp
    M llvm/unittests/CAS/CMakeLists.txt
    A llvm/unittests/CAS/OnDiskCASLoggerTest.cpp
    M llvm/unittests/CAS/OnDiskGraphDBTest.cpp
    M llvm/unittests/CAS/OnDiskTrieRawHashMapTest.cpp
    M llvm/unittests/CAS/ProgramTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGTestBase.h
    M llvm/unittests/ExecutionEngine/JITLink/StubsTests.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp
    M llvm/unittests/Support/ProgramStackTest.cpp
    M llvm/unittests/Support/RegexTest.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
    M llvm/unittests/Target/ARM/ARMSelectionDAGTest.cpp
    M llvm/unittests/Target/RISCV/RISCVSelectionDAGTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
    M llvm/utils/TableGen/Basic/TableGen.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
    M llvm/utils/git-llvm-push
    M llvm/utils/git/ids-check-helper.py
    A llvm/utils/gn/build/remove_if_exists.py
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/SymbolFile/NativePDB/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CAS/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-ir2vec/lib/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CAS/BUILD.gn
    M llvm/utils/profcheck-xfail.txt
    M llvm/utils/release/build_llvm_release.bat
    M llvm/utils/release/github-upload-release.py
    M llvm/utils/update_mc_test_checks.py
    M mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/Utils/Utils.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/BasicPtxBuilderInterface.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgRelayoutOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/include/mlir/Dialect/Math/IR/MathOps.td
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/include/mlir/Dialect/OpenACC/Analysis/OpenACCSupport.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
    M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVEnums.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/include/mlir/Dialect/Transform/TuneExtension/TuneExtensionOps.td
    M mlir/include/mlir/Dialect/Utils/VerificationUtils.h
    M mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/ArithToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/CMakeLists.txt
    M mlir/lib/Conversion/ArithAndMathToAPFloat/MathToAPFloat.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.cpp
    M mlir/lib/Conversion/ArithAndMathToAPFloat/Utils.h
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Conversion/SPIRVCommon/Pattern.h
    M mlir/lib/Conversion/ShardToMPI/CMakeLists.txt
    M mlir/lib/Conversion/ShardToMPI/ShardToMPI.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    M mlir/lib/Dialect/Async/IR/Async.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/BlockPackMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/PackAndUnpackPatterns.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Math/Transforms/ExpandOps.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/NVGPU/Transforms/OptimizeSharedMemory.cpp
    M mlir/lib/Dialect/OpenACC/Analysis/OpenACCSupport.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenACC/Transforms/OffloadTargetVerifier.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SCF/Transforms/ForallToFor.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/IR/MemoryOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp
    A mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp
    M mlir/lib/Dialect/Shard/Transforms/Transforms.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tensor/Transforms/EmptyOpPatterns.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaInputShape.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
    M mlir/lib/Dialect/Utils/VerificationUtils.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/Transforms/ShuffleVectorFMAOps.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
    R mlir/lib/Dialect/XeGPU/Transforms/XeGPUOptimizeBlockLoads.cpp
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/lib/IR/Remarks.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/python/mlir/dialects/linalg/__init__.py
    M mlir/test/Conversion/MemRefToSPIRV/alloc.mlir
    M mlir/test/Conversion/ShardToMPI/convert-shard-to-mpi.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/Arith/shard-partition.mlir
    M mlir/test/Dialect/Bufferization/canonicalize.mlir
    M mlir/test/Dialect/Bufferization/invalid.mlir
    M mlir/test/Dialect/Complex/canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/convolution/roundtrip-convolution.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/roundtrip.mlir
    M mlir/test/Dialect/Linalg/transform-op-decompose.mlir
    M mlir/test/Dialect/Linalg/vectorization/unsupported.mlir
    M mlir/test/Dialect/Math/expand-math.mlir
    M mlir/test/Dialect/MemRef/canonicalize.mlir
    M mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir
    M mlir/test/Dialect/OpenACC/acc-implicit-data.mlir
    M mlir/test/Dialect/OpenACC/invalid.mlir
    A mlir/test/Dialect/OpenACC/offload-target-verifier.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Dialect/SCF/forall-to-for.mlir
    A mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    A mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    A mlir/test/Dialect/Shard/invalid_annotated.mlir
    M mlir/test/Dialect/Shard/partition.mlir
    M mlir/test/Dialect/SparseTensor/fuse_sparse_pad_with_consumer.mlir
    M mlir/test/Dialect/SparseTensor/sparse_conv_2d_slice_based.mlir
    M mlir/test/Dialect/SparseTensor/sparse_pack.mlir
    M mlir/test/Dialect/SparseTensor/sparse_perm_lower.mlir
    M mlir/test/Dialect/Tensor/fold-empty-op.mlir
    R mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/constant_folding.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    A mlir/test/Dialect/Tosa/tosa-input-shape.mlir
    A mlir/test/Dialect/Tosa/tosa-layerwise-constant-fold.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-valid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir
    M mlir/test/Dialect/Vector/canonicalize.mlir
    A mlir/test/Dialect/X86Vector/shuffle-vector-fmas.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir
    R mlir/test/Dialect/XeGPU/optimize-transpose.mlir
    A mlir/test/Dialect/XeGPU/peephole-optimize.mlir
    M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
    M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
    M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
    A mlir/test/IR/parser-string-literal-comment.mlir
    A mlir/test/IR/parser-string-literal-url.mlir
    M mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
    A mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation-vector.mlir
    M mlir/test/Integration/Dialect/Math/CPU/test-apfloat-emulation.mlir
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/nvgpucompiler.py
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-with-reduction-tiling.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-clauses-trunc-ext.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    A mlir/test/Target/SPIRV/tosa-ops.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/python/dialects/linalg/ops.py
    M mlir/test/python/dialects/transform_interpreter.py
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.h
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    M mlir/unittests/Dialect/OpenACC/OpenACCUtilsTest.cpp
    M mlir/unittests/IR/RemarkTest.cpp
    M mlir/unittests/Interfaces/ControlFlowInterfacesTest.cpp
    M mlir/utils/textmate/mlir.json
    M mlir/utils/vscode/language-configuration.json
    M mlir/utils/vscode/package-lock.json
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/pdll-grammar.json
    M mlir/utils/vscode/tsconfig.json
    A offload/ci/.gitignore
    A offload/ci/openmp-offload-amdgpu-clang-flang.py
    A offload/ci/openmp-offload-amdgpu-runtime.py
    M offload/include/Shared/Debug.h
    M offload/include/omptarget.h
    M offload/liboffload/API/Queue.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/libomptarget/OpenMP/InteropAPI.cpp
    M offload/libomptarget/PluginManager.cpp
    M offload/libomptarget/omptarget.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp
    M offload/plugins-nextgen/host/src/rtl.cpp
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    R offload/test/offloading/strided_multiple_update.c
    A offload/test/offloading/strided_multiple_update_from.c
    A offload/test/offloading/strided_multiple_update_to.c
    R offload/test/offloading/strided_partial_update.c
    A offload/test/offloading/strided_partial_update_from.c
    A offload/test/offloading/strided_partial_update_to.c
    R offload/test/offloading/strided_update.c
    A offload/test/offloading/strided_update_from.c
    A offload/test/offloading/strided_update_to.c
    M offload/unittests/OffloadAPI/CMakeLists.txt
    A offload/unittests/OffloadAPI/queue/olQueryQueue.cpp
    M openmp/Maintainers.md
    M openmp/tools/omptest/CMakeLists.txt
    M openmp/tools/omptest/test/CMakeLists.txt
    M orc-rt/include/orc-rt/AllocAction.h
    M orc-rt/include/orc-rt/SPSWrapperFunction.h
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/unittests/DirectCaller.h
    M orc-rt/unittests/SessionTest.cpp
    M polly/include/polly/Support/SCEVAffinator.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Support/SCEVAffinator.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Support/ScopHelper.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  address review comments

Created using spr 1.3.6-beta.1


Compare: https://github.com/llvm/llvm-project/compare/491a2659ae70...9c0a1cd32a16

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